From 1fea51928c04b8f4e728a47c68cc883399812d71 Mon Sep 17 00:00:00 2001 From: Joel Verhagen Date: Mon, 2 Jun 2025 11:56:45 -0400 Subject: [PATCH 01/10] Add spec for NuGet MCP support --- accepted/2025/nuget-mcp.md | 250 +++++++++++++++++++ meta/resources/nuget-mcp/command-palette.png | Bin 0 -> 40478 bytes meta/resources/nuget-mcp/search-ui.png | Bin 0 -> 104464 bytes meta/resources/nuget-mcp/vscode-today.png | Bin 0 -> 42627 bytes 4 files changed, 250 insertions(+) create mode 100644 accepted/2025/nuget-mcp.md create mode 100644 meta/resources/nuget-mcp/command-palette.png create mode 100644 meta/resources/nuget-mcp/search-ui.png create mode 100644 meta/resources/nuget-mcp/vscode-today.png diff --git a/accepted/2025/nuget-mcp.md b/accepted/2025/nuget-mcp.md new file mode 100644 index 000000000..f731b23e0 --- /dev/null +++ b/accepted/2025/nuget-mcp.md @@ -0,0 +1,250 @@ +# Using NuGet for MCP servers + +- Author Names: Jon Douglas ([@jondouglas](https://github.com/jondouglas)), Joel Verhagen + ([@joelverhagen](https://github.com/joelverhagen)) +- GitHub Issue: [NuGet/NuGetGallery#10461](https://github.com/NuGet/NuGetGallery/issues/10461) + +## Summary + +Today it is possible for an [MCP](https://modelcontextprotocol.io/introduction) server to be implemented in many +different programming languages. The protocol is relatively agnostic to the underlying programming language. However, +client tooling such as VS Code is tailored to specific runtimes when installing and launching a local MCP server. VS +Code, for example, supports [Docker, Python, and npm MCP +servers](https://code.visualstudio.com/docs/copilot/chat/mcp-servers#_configuration-format) (as of June 2025). Other +runtimes such as .NET are supported via custom steps, such as wrapping the app in Docker/npx or installing the MCP +server out of band and then executing it by a command name available in `PATH`. + +This document describes several steps needed to improve the use of local MCP servers written in .NET. We focus primarily +on the packaging (NuGet) perspective but will reference ongoing or completed work in the .NET ecosystem. + +We will streamline the authoring, discovery, installation, and execution of local MCP servers written in .NET. + +The main missing pieces are: + +1. [Well-defined conventions to identify MCP server packages and startup instructions.](#improve-mcp-server-authoring) +2. [Browsing experience on NuGet.org tailored to MCP server packages](#improve-browsing-experience) +3. [Single-shot execution of .NET tools](#enable-single-shot-execution-for-net-tools) +4. [Support for NuGet packages in the MCP metaregistry](#add-support-for-nuget-packages-in-the-mcp-registry) +5. [Support for NuGet package MCP server installation in IDEs, e.g. VS Code](#add-support-for-nuget-packages-in-vs-code) + +## Motivation + +As an MCP server author, it should be easy to create MCP servers in .NET and host them on NuGet.org or a private feed. + +As an MCP server consumer (user), it should be easy to discover MCP servers and execute them in your IDE of choice. + +Most of the groundwork is done to ship a .NET MCP server. The SDK is available at +[modelcontextprotocol/csharp-sdk](https://github.com/modelcontextprotocol/csharp-sdk). However conventions for packaging +them with NuGet are not well defined. + +Some Microsoft MCP servers are implemented in .NET but distributed via npm, for example [@azure/mcp](https://www.npmjs.com/package/@azure/mcp). This is a fine approach if an node.js runtime and npm packaging are not concerns. For MCP authors that want to target an environment where .NET runtime is available, and not depend on npm, Python, or Docker, we should enable an end-to-end experience using just .NET and the MCP client IDE of choose (e.g. VS Code). + +## Explanation + +### Improve MCP server authoring + +#### Today's experience + +To create a .NET MCP server today. the experience is somewhat self-guided and results in a NuGet package that looks no +different from any other .NET CLI tool. + +An MCP server author can create a .NET console app, consume the [ModelContextProtocol NuGet +package](https://www.nuget.org/packages/ModelContextProtocol), and implement tools that will be available to the LLM. +The SDK helps with the stdio-based protocol that allows the end user's IDE to launch, discover, and invoke tools. + +The author will decide CLI arguments or environment variables are needed to invoke the MCP server. + +When the MCP server is ready, the author will pack the [project as a tool with ``](https://learn.microsoft.com/en-us/dotnet/core/tools/global-tools-how-to-create) and publish the NuGet package to NuGet.org (or their +private package feed), so that it can be used by other people. + +This approach works, but has a couple of problems: + +- The package has no indication that it is an MCP server. It just has the `DotnetTool` package type like any other .NET tool. + - NuGet.org and other package sources have no way of filtering packages to "MCP" or tailoring the browsing experience. +- The package provides no guidance to the end user on how to start the MCP server. + - The end user doesn't have a good way of knowing the needed `command`, `args`, and `env` settings they should use. +- The package author needs to set up their project just right, with a console app, .NET tool, and MCP dependency. + +#### New package type + +To address the filtering and discoverability problem, we will introduce an additional NuGet package type of `McpServer`. + +Currently, .NET tools get the `DotnetTool` package type, defined in the resulting package manifest (.nuspec file) generated by `dotnet pack`. [As of .NET 10](https://github.com/dotnet/sdk/pull/48039), it is possible to add additional package types to .NET tool packages using the `McpServer` MSBuild property in the tool .csproj. + +The resulting MCP server .nupkg will have two package types: `DotnetTool` and `McpServer`. For more information on package types, [see NuGet documentation](https://learn.microsoft.com/en-us/nuget/reference/nuspec#packagetypes). + +#### Startup instructions + +To allow the package author to communicate the needed parameters to launch the MCP server, we will take a phased approach. First, we will instruct the package author to provide a sample code block in their package README markdown matching the following format: + +```json +{ + "inputs": [ + { + "type": "promptString", + "id": "contoso-api-key", + "description": "Contoso API Key", + "password": true + } + ], + "servers": { + "Contoso.MySuperMcp": { + "type": "stdio", + "command": "dnx", + "args": ["Contoso.MySuperMcp", "--", "mcp", "start"], + "env": { + "CONTOSO_API_KEY": "${input:contoso-api-key}" + } + } + } +} +``` + +NuGet.org will scrape the README.md for a JSON code block with a `servers` JSON property containign a property matching the current package ID. If found, it will place the JSON in the command palette for easy copying. If not found, a default MCP JSON will be generated: + + +```json +{ + "servers": { + "Contoso.MySuperMcp": { + "type": "stdio", + "command": "dnx", + "args": ["Contoso.MySuperMcp", "--version", "1.0.1"] + } + } +} +``` + +In a future phase, we can introduce a more machine readable format for the MCP server's inputs, args, and environment variables. This would require alignment across other programming ecosystems (Python or npm MCP servers have the same need) and IDE (VS Code and other MCP-enabled tools). + +#### Project template + +To improve the project setup experience, we will introduce a new project template. The template will be available via `dotnet new mcp-server`. The will create a .csproj for a CLI tool, with a stable MCP SDK dependency version, and an `McpServer` server package type. + +The .csproj will have the following shape: + +```xml + + + + Exe + net10.0 + Contoso.MySuperMcp + + true + McpServer + + + + + + + +``` + +### Improve browsing experience + +#### Today's experience + +An MCP server can be published as a .NET tool or with any custom package type. + +.NET tool MCP servers are not differentiated from any other .NET tool so an end user can't find them easily amount the hundreds of .NET tools or thousands of other NuGet packages. + +It is possible to filter by any package type using the NuGet.org search UI by manipulating the URL, or by using the V3 search API. But this is hard to discover for end users. + +#### Search filtering + +Currently, only three package types are recognized by NuGet.org and enabled for default package type filtering. + +We will add the "MCP Server" (`McpServer`) type to the list. + +Search UI with MCP server filtering + +#### Package details page + +The package details page will be enhanced to have a new MCP Server tab in the command palette, using the JSON snippet scraped from the README.md (or generated if not found). + +Sample of the generated command palette + +See the [Startup instructions](#startup-instructions) section above for more details. + +### Enable single-shot execution for .NET tools + +#### Today's experience + +It is not possible to download and run a .NET tool in a single command today. This is in contrast to npm, Python, and Docker. For example, an MCP server on npm can be started by VS Code using `npx`. + +#### New experience: `dotnet tool exec` / `dnx` + +The .NET team is working on a single-shot experience similar to `npx`. This is not work done by the NuGet team so we'll just link to the existing efforts. + +- GitHub issues: [dotnet/sdk#31103](https://github.com/dotnet/sdk/issues/31103), [dotnet/sdk#47517](https://github.com/dotnet/sdk/issues/47517) +- Design document: [dotnet/designs#334 - Add a design proposal for dotnet tool exec and dnx](https://github.com/dotnet/designs/pull/334) + +The sample JSON above leverages this new single-shot command execution. + +### Add support for NuGet packages in the MCP registry + +#### Today's experience + +The [official MCP registry](https://github.com/modelcontextprotocol/registry/discussions/11) is not yet live, but the discussion and protocol description around it clearly list [several supported underlying registries](https://github.com/modelcontextprotocol/registry/blob/a4cefcf05f81466ad65e7c3971e76d0f6d60783e/docs/openapi.yaml#L173-L176) for hosting the local server's code. + +Current list: `npm`, `docker`, `pypi`, `homebrew` + +#### Add NuGet to the list + +We will work with the MCP server registry team to add `nuget` to the list. + +We will publish/link to guidance on how to publish a NuGet-based MCP server to the MCP registry. This step is performed after the package is published to NuGet.org. + +### Add support for NuGet packages in VS Code + +### Today's experience + +Similar to the previous section, NuGet is not a recognized MCP server host. + +![VS Code MCP server installation](../../meta/resources/nuget-mcp/vscode-today.png) + +#### Add NuGet to the list + +We will work with the VS Code team to add a NuGet option to the list which updates the user's `mcp.json` to invoke `dnx` with the provided package ID. + +Once Visual Studio has a corresponding experience ([the current experience is manually editing the `mcp.json`](https://learn.microsoft.com/en-us/visualstudio/ide/mcp-servers?view=vs-2022)), we will ensure NuGet is supported similarly. + +## Rollout plan + +1. Enable `McpServer` support on NuGet.org search and the package details page, behind a feature flag. +2. Work with Microsoft and community MCP server implementors to package as NuGet. + - As of June 2025, there are 28 .NET tools on NuGet.org that use the MCP SDK. Newer versions should have `McpServer` package type. + - Some Microsoft MCP servers are implemented in .NET but distributed via npm, for example [@azure/mcp](https://www.npmjs.com/package/@azure/mcp). +3. Wait for `dnx` to land in a .NET 10 preview +4. Work with MCP registry and VS Code to get NuGet support, perhaps providing PRs/OSS contributions ourselves. +5. Enable MCP server UI on NuGet.org. +6. Publish a document on learn.microsoft.com on how to create your own NuGet MCP server. + +## Future Possibilities + +We will wait on publishing an MCP server template until the .NET MCP SDK has announced a stable API surface area. It is currently in prerelease. + +## Prior Art + +We should replicate what is already working for npm, PyPI and Docker. + +## Unresolved Questions + +- What guidance should be provided for private MCP server implementations? + - For example, if you publish an `McpServer` to your Azure DevOps feed, what MCP registry should be used? + +- What schema should be used for a machine readable MCP server startup instruction? + - The package author could include an `mcp.json` in the NuGet package [matching the MCP registry OpenAPI spec](https://github.com/modelcontextprotocol/registry/blob/a4cefcf05f81466ad65e7c3971e76d0f6d60783e/docs/openapi.yaml#L183-L201). + +- How are client runtime requirements expressed? + - For example, if an MCP server needs a certain .NET version how is this communicated to the end user before failure occurs? + +## Drawbacks + +TBD. + +## Rationale and alternatives + +TBD. diff --git a/meta/resources/nuget-mcp/command-palette.png b/meta/resources/nuget-mcp/command-palette.png new file mode 100644 index 0000000000000000000000000000000000000000..be23c239be6abd398f37e50c50dbeaffb25c3811 GIT binary patch literal 40478 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 literal 0 HcmV?d00001 diff --git a/meta/resources/nuget-mcp/search-ui.png b/meta/resources/nuget-mcp/search-ui.png new file mode 100644 index 0000000000000000000000000000000000000000..abd1290c5797b73f9b6ce0add89cbd1ea2257267 GIT binary patch literal 104464 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 z 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 CUutgv literal 0 HcmV?d00001 diff --git a/meta/resources/nuget-mcp/vscode-today.png b/meta/resources/nuget-mcp/vscode-today.png new file mode 100644 index 0000000000000000000000000000000000000000..371aaf4c7172c5a9b1d8415a40f77ada564db750 GIT binary patch literal 42627 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 literal 0 HcmV?d00001 From 244d930f7e7ad92529536a25a02635bee6f0df48 Mon Sep 17 00:00:00 2001 From: Joel Verhagen Date: Mon, 2 Jun 2025 12:04:00 -0400 Subject: [PATCH 02/10] Fix spelling --- accepted/2025/nuget-mcp.md | 66 +++++++++++++++----------------------- 1 file changed, 25 insertions(+), 41 deletions(-) diff --git a/accepted/2025/nuget-mcp.md b/accepted/2025/nuget-mcp.md index f731b23e0..3f11fcb4f 100644 --- a/accepted/2025/nuget-mcp.md +++ b/accepted/2025/nuget-mcp.md @@ -1,21 +1,13 @@ # Using NuGet for MCP servers -- Author Names: Jon Douglas ([@jondouglas](https://github.com/jondouglas)), Joel Verhagen - ([@joelverhagen](https://github.com/joelverhagen)) +- Author Names: Jon Douglas ([@jondouglas](https://github.com/jondouglas)), Joel Verhagen ([@joelverhagen](https://github.com/joelverhagen)) - GitHub Issue: [NuGet/NuGetGallery#10461](https://github.com/NuGet/NuGetGallery/issues/10461) ## Summary -Today it is possible for an [MCP](https://modelcontextprotocol.io/introduction) server to be implemented in many -different programming languages. The protocol is relatively agnostic to the underlying programming language. However, -client tooling such as VS Code is tailored to specific runtimes when installing and launching a local MCP server. VS -Code, for example, supports [Docker, Python, and npm MCP -servers](https://code.visualstudio.com/docs/copilot/chat/mcp-servers#_configuration-format) (as of June 2025). Other -runtimes such as .NET are supported via custom steps, such as wrapping the app in Docker/npx or installing the MCP -server out of band and then executing it by a command name available in `PATH`. +Today it is possible for an [MCP](https://modelcontextprotocol.io/introduction) server to be implemented in many different programming languages. The protocol is relatively agnostic to the underlying programming language. However, client tooling such as VS Code is tailored to specific runtimes when installing and launching a local MCP server. VS Code, for example, supports [Docker, Python, and npm MCP servers](https://code.visualstudio.com/docs/copilot/chat/mcp-servers#_configuration-format) (as of June 2025). Other runtimes such as .NET are supported via custom steps, such as wrapping the app in Docker/npx or installing the MCP server out of band and then executing it by a command name available in `PATH`. -This document describes several steps needed to improve the use of local MCP servers written in .NET. We focus primarily -on the packaging (NuGet) perspective but will reference ongoing or completed work in the .NET ecosystem. +This document describes several steps needed to improve the use of local MCP servers written in .NET. We focus primarily on the packaging (NuGet) perspective but will reference ongoing or completed work in the .NET ecosystem. We will streamline the authoring, discovery, installation, and execution of local MCP servers written in .NET. @@ -25,7 +17,7 @@ The main missing pieces are: 2. [Browsing experience on NuGet.org tailored to MCP server packages](#improve-browsing-experience) 3. [Single-shot execution of .NET tools](#enable-single-shot-execution-for-net-tools) 4. [Support for NuGet packages in the MCP metaregistry](#add-support-for-nuget-packages-in-the-mcp-registry) -5. [Support for NuGet package MCP server installation in IDEs, e.g. VS Code](#add-support-for-nuget-packages-in-vs-code) +5. [Support for NuGet package MCP server installation in IDEs, e.g., VS Code](#add-support-for-nuget-packages-in-vs-code) ## Motivation @@ -33,11 +25,9 @@ As an MCP server author, it should be easy to create MCP servers in .NET and hos As an MCP server consumer (user), it should be easy to discover MCP servers and execute them in your IDE of choice. -Most of the groundwork is done to ship a .NET MCP server. The SDK is available at -[modelcontextprotocol/csharp-sdk](https://github.com/modelcontextprotocol/csharp-sdk). However conventions for packaging -them with NuGet are not well defined. +Most of the groundwork is done to ship a .NET MCP server. The SDK is available at [modelcontextprotocol/csharp-sdk](https://github.com/modelcontextprotocol/csharp-sdk). However, conventions for packaging them with NuGet are not well defined. -Some Microsoft MCP servers are implemented in .NET but distributed via npm, for example [@azure/mcp](https://www.npmjs.com/package/@azure/mcp). This is a fine approach if an node.js runtime and npm packaging are not concerns. For MCP authors that want to target an environment where .NET runtime is available, and not depend on npm, Python, or Docker, we should enable an end-to-end experience using just .NET and the MCP client IDE of choose (e.g. VS Code). +Some Microsoft MCP servers are implemented in .NET but distributed via npm, for example [@azure/mcp](https://www.npmjs.com/package/@azure/mcp). This is a fine approach if a Node.js runtime and npm packaging are not concerns. For MCP authors that want to target an environment where the .NET runtime is available, and not depend on npm, Python, or Docker, we should enable an end-to-end experience using just .NET and the MCP client IDE of choice (e.g., VS Code). ## Explanation @@ -45,17 +35,13 @@ Some Microsoft MCP servers are implemented in .NET but distributed via npm, for #### Today's experience -To create a .NET MCP server today. the experience is somewhat self-guided and results in a NuGet package that looks no -different from any other .NET CLI tool. +To create a .NET MCP server today, the experience is somewhat self-guided and results in a NuGet package that looks no different from any other .NET CLI tool. -An MCP server author can create a .NET console app, consume the [ModelContextProtocol NuGet -package](https://www.nuget.org/packages/ModelContextProtocol), and implement tools that will be available to the LLM. -The SDK helps with the stdio-based protocol that allows the end user's IDE to launch, discover, and invoke tools. +An MCP server author can create a .NET console app, consume the [ModelContextProtocol NuGet package](https://www.nuget.org/packages/ModelContextProtocol), and implement tools that will be available to the LLM. The SDK helps with the stdio-based protocol that allows the end user's IDE to launch, discover, and invoke tools. -The author will decide CLI arguments or environment variables are needed to invoke the MCP server. +The author will decide what CLI arguments or environment variables are needed to invoke the MCP server. -When the MCP server is ready, the author will pack the [project as a tool with ``](https://learn.microsoft.com/en-us/dotnet/core/tools/global-tools-how-to-create) and publish the NuGet package to NuGet.org (or their -private package feed), so that it can be used by other people. +When the MCP server is ready, the author will pack the [project as a tool with ``](https://learn.microsoft.com/en-us/dotnet/core/tools/global-tools-how-to-create) and publish the NuGet package to NuGet.org (or their private package feed), so that it can be used by other people. This approach works, but has a couple of problems: @@ -100,7 +86,7 @@ To allow the package author to communicate the needed parameters to launch the M } ``` -NuGet.org will scrape the README.md for a JSON code block with a `servers` JSON property containign a property matching the current package ID. If found, it will place the JSON in the command palette for easy copying. If not found, a default MCP JSON will be generated: +NuGet.org will scrape the README.md for a JSON code block with a `servers` JSON property containing a property matching the current package ID. If found, it will place the JSON in the command palette for easy copying. If not found, a default MCP JSON will be generated: ```json @@ -115,11 +101,11 @@ NuGet.org will scrape the README.md for a JSON code block with a `servers` JSON } ``` -In a future phase, we can introduce a more machine readable format for the MCP server's inputs, args, and environment variables. This would require alignment across other programming ecosystems (Python or npm MCP servers have the same need) and IDE (VS Code and other MCP-enabled tools). +In a future phase, we can introduce a more machine-readable format for the MCP server's inputs, args, and environment variables. This would require alignment across other programming ecosystems (Python or npm MCP servers have the same need) and IDEs (VS Code and other MCP-enabled tools). #### Project template -To improve the project setup experience, we will introduce a new project template. The template will be available via `dotnet new mcp-server`. The will create a .csproj for a CLI tool, with a stable MCP SDK dependency version, and an `McpServer` server package type. +To improve the project setup experience, we will introduce a new project template. The template will be available via `dotnet new mcp-server`. This will create a .csproj for a CLI tool, with a stable MCP SDK dependency version, and an `McpServer` server package type. The .csproj will have the following shape: @@ -148,7 +134,7 @@ The .csproj will have the following shape: An MCP server can be published as a .NET tool or with any custom package type. -.NET tool MCP servers are not differentiated from any other .NET tool so an end user can't find them easily amount the hundreds of .NET tools or thousands of other NuGet packages. +.NET tool MCP servers are not differentiated from any other .NET tool, so an end user can't find them easily among the hundreds of .NET tools or thousands of other NuGet packages. It is possible to filter by any package type using the NuGet.org search UI by manipulating the URL, or by using the V3 search API. But this is hard to discover for end users. @@ -176,7 +162,7 @@ It is not possible to download and run a .NET tool in a single command today. Th #### New experience: `dotnet tool exec` / `dnx` -The .NET team is working on a single-shot experience similar to `npx`. This is not work done by the NuGet team so we'll just link to the existing efforts. +The .NET team is working on a single-shot experience similar to `npx`. This is not work done by the NuGet team, so we'll just link to the existing efforts. - GitHub issues: [dotnet/sdk#31103](https://github.com/dotnet/sdk/issues/31103), [dotnet/sdk#47517](https://github.com/dotnet/sdk/issues/47517) - Design document: [dotnet/designs#334 - Add a design proposal for dotnet tool exec and dnx](https://github.com/dotnet/designs/pull/334) @@ -199,7 +185,7 @@ We will publish/link to guidance on how to publish a NuGet-based MCP server to t ### Add support for NuGet packages in VS Code -### Today's experience +#### Today's experience Similar to the previous section, NuGet is not a recognized MCP server host. @@ -207,39 +193,37 @@ Similar to the previous section, NuGet is not a recognized MCP server host. #### Add NuGet to the list -We will work with the VS Code team to add a NuGet option to the list which updates the user's `mcp.json` to invoke `dnx` with the provided package ID. +We will work with the VS Code team to add a NuGet option to the list, which updates the user's `mcp.json` to invoke `dnx` with the provided package ID. Once Visual Studio has a corresponding experience ([the current experience is manually editing the `mcp.json`](https://learn.microsoft.com/en-us/visualstudio/ide/mcp-servers?view=vs-2022)), we will ensure NuGet is supported similarly. ## Rollout plan 1. Enable `McpServer` support on NuGet.org search and the package details page, behind a feature flag. -2. Work with Microsoft and community MCP server implementors to package as NuGet. - - As of June 2025, there are 28 .NET tools on NuGet.org that use the MCP SDK. Newer versions should have `McpServer` package type. +2. Work with Microsoft and community MCP server implementers to package as NuGet. + - As of June 2025, there are 28 .NET tools on NuGet.org that use the MCP SDK. Newer versions should have the `McpServer` package type. - Some Microsoft MCP servers are implemented in .NET but distributed via npm, for example [@azure/mcp](https://www.npmjs.com/package/@azure/mcp). -3. Wait for `dnx` to land in a .NET 10 preview -4. Work with MCP registry and VS Code to get NuGet support, perhaps providing PRs/OSS contributions ourselves. +3. Wait for `dnx` to land in a .NET 10 preview. +4. Work with the MCP registry and VS Code to get NuGet support, perhaps providing PRs/OSS contributions ourselves. 5. Enable MCP server UI on NuGet.org. 6. Publish a document on learn.microsoft.com on how to create your own NuGet MCP server. ## Future Possibilities -We will wait on publishing an MCP server template until the .NET MCP SDK has announced a stable API surface area. It is currently in prerelease. +We will wait to publish an MCP server template until the .NET MCP SDK has announced a stable API surface area. It is currently in prerelease. ## Prior Art -We should replicate what is already working for npm, PyPI and Docker. +We should replicate what is already working for npm, PyPI, and Docker. ## Unresolved Questions - What guidance should be provided for private MCP server implementations? - For example, if you publish an `McpServer` to your Azure DevOps feed, what MCP registry should be used? - -- What schema should be used for a machine readable MCP server startup instruction? +- What schema should be used for a machine-readable MCP server startup instruction? - The package author could include an `mcp.json` in the NuGet package [matching the MCP registry OpenAPI spec](https://github.com/modelcontextprotocol/registry/blob/a4cefcf05f81466ad65e7c3971e76d0f6d60783e/docs/openapi.yaml#L183-L201). - - How are client runtime requirements expressed? - - For example, if an MCP server needs a certain .NET version how is this communicated to the end user before failure occurs? + - For example, if an MCP server needs a certain .NET version, how is this communicated to the end user before failure occurs? ## Drawbacks From 2ddd0650e8af875e8bd6f8dec33182c306c03e00 Mon Sep 17 00:00:00 2001 From: Joel Verhagen Date: Mon, 2 Jun 2025 14:11:06 -0400 Subject: [PATCH 03/10] Update accepted/2025/nuget-mcp.md Co-authored-by: Jon Douglas --- accepted/2025/nuget-mcp.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/accepted/2025/nuget-mcp.md b/accepted/2025/nuget-mcp.md index 3f11fcb4f..b9639123b 100644 --- a/accepted/2025/nuget-mcp.md +++ b/accepted/2025/nuget-mcp.md @@ -210,7 +210,7 @@ Once Visual Studio has a corresponding experience ([the current experience is ma ## Future Possibilities -We will wait to publish an MCP server template until the .NET MCP SDK has announced a stable API surface area. It is currently in prerelease. +We will wait to publish an MCP server template until the .NET MCP SDK has announced a stable API surface area. It is currently in prerelease. In addition we will continue to keep eyes on the development of the [MCP specification](https://modelcontextprotocol.io/development/updates) and [MCP Registry](https://github.com/modelcontextprotocol/registry). ## Prior Art From 17a95bf0731151114609b1a1837876cdbb9febbb Mon Sep 17 00:00:00 2001 From: Joel Verhagen Date: Mon, 2 Jun 2025 14:24:03 -0400 Subject: [PATCH 04/10] Address comments --- accepted/2025/nuget-mcp.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/accepted/2025/nuget-mcp.md b/accepted/2025/nuget-mcp.md index 3f11fcb4f..276502726 100644 --- a/accepted/2025/nuget-mcp.md +++ b/accepted/2025/nuget-mcp.md @@ -86,7 +86,7 @@ To allow the package author to communicate the needed parameters to launch the M } ``` -NuGet.org will scrape the README.md for a JSON code block with a `servers` JSON property containing a property matching the current package ID. If found, it will place the JSON in the command palette for easy copying. If not found, a default MCP JSON will be generated: +NuGet.org will scrape the README.md for a JSON code block with a `servers` JSON property containing a property matching the current package ID. If found, it will place the JSON in the command palette for easy copying. Other MCP JSON configuration shapes will be investigated also. It appears Anthropic uses `mcpServers` in their JSON. If no recognized JSON format is found, a default MCP JSON will be generated: ```json @@ -128,6 +128,8 @@ The .csproj will have the following shape: ``` +The template will also include a README.md that can be scraped for an MCP JSON snippet (or another machine readable format depending on [modelcontextprotocol/registry#118](https://github.com/modelcontextprotocol/registry/discussions/118)). + ### Improve browsing experience #### Today's experience @@ -222,6 +224,7 @@ We should replicate what is already working for npm, PyPI, and Docker. - For example, if you publish an `McpServer` to your Azure DevOps feed, what MCP registry should be used? - What schema should be used for a machine-readable MCP server startup instruction? - The package author could include an `mcp.json` in the NuGet package [matching the MCP registry OpenAPI spec](https://github.com/modelcontextprotocol/registry/blob/a4cefcf05f81466ad65e7c3971e76d0f6d60783e/docs/openapi.yaml#L183-L201). + - I opened a discussion about this on the MCP registry repo: [Embed runtime instructions inside the package artifact](https://github.com/modelcontextprotocol/registry/discussions/118) - How are client runtime requirements expressed? - For example, if an MCP server needs a certain .NET version, how is this communicated to the end user before failure occurs? From 8531efd5a7d5cb7d15f784b935e7f511221d1ba6 Mon Sep 17 00:00:00 2001 From: Joel Verhagen Date: Tue, 3 Jun 2025 09:24:45 -0400 Subject: [PATCH 05/10] Improve --- accepted/2025/nuget-mcp.md | 29 ++++++++++++++++++++++++----- 1 file changed, 24 insertions(+), 5 deletions(-) diff --git a/accepted/2025/nuget-mcp.md b/accepted/2025/nuget-mcp.md index 807c19786..2f6a11535 100644 --- a/accepted/2025/nuget-mcp.md +++ b/accepted/2025/nuget-mcp.md @@ -61,7 +61,16 @@ The resulting MCP server .nupkg will have two package types: `DotnetTool` and `M #### Startup instructions -To allow the package author to communicate the needed parameters to launch the MCP server, we will take a phased approach. First, we will instruct the package author to provide a sample code block in their package README markdown matching the following format: +We have two options to encode the startup instructions into the package: + +1. Instruct the package author to include the desired consumer MCP JSON in the readme, and allow NuGet.org to scrape the JSON from the README markdown (a code block matching a certain pattern). +2. Embed standardized, machine-readable information in the package to allow tooling to know of the startup instructions required for the MCP server + - This could be the same [author `mcp.json`](https://github.com/modelcontextprotocol/registry/blob/main/tools/publisher/README.md) used for publishing to the MCP registry, embedded in the root of the package. + - This could be information in a new .nuspec field. + - The core idea here is to include similar information as the [`package` entity in the MCP registry Open API schema](https://github.com/modelcontextprotocol/registry/blob/3df06d38d9b6590f6ba9bfde56fb3583d8ff4e9d/docs/openapi.yaml#L165-L200). This is essentially the information provided by the MCP registry to MCP client tooling to enable MCP server installation and setup. + - See [modelcontextprotocol/registry#118](https://github.com/modelcontextprotocol/registry/discussions/118) for discussion. + +The JSON we would like to either scrape from the README (option 1 above) or generate from machine-readable startup instructions (options 2 above) would look like this. ```json { @@ -86,7 +95,7 @@ To allow the package author to communicate the needed parameters to launch the M } ``` -NuGet.org will scrape the README.md for a JSON code block with a `servers` JSON property containing a property matching the current package ID. If found, it will place the JSON in the command palette for easy copying. Other MCP JSON configuration shapes will be investigated also. It appears Anthropic uses `mcpServers` in their JSON. If no recognized JSON format is found, a default MCP JSON will be generated: +For option 1, NuGet.org would look in README.md for a JSON code block with a `servers` JSON property containing a property matching the current package ID. If found, it will place the JSON in the command palette for easy copying. Other MCP JSON configuration shapes will be investigated also. It appears Anthropic uses `mcpServers` in their JSON. If no recognized JSON format is found, a default MCP JSON will be generated: ```json @@ -101,8 +110,6 @@ NuGet.org will scrape the README.md for a JSON code block with a `servers` JSON } ``` -In a future phase, we can introduce a more machine-readable format for the MCP server's inputs, args, and environment variables. This would require alignment across other programming ecosystems (Python or npm MCP servers have the same need) and IDEs (VS Code and other MCP-enabled tools). - #### Project template To improve the project setup experience, we will introduce a new project template. The template will be available via `dotnet new mcp-server`. This will create a .csproj for a CLI tool, with a stable MCP SDK dependency version, and an `McpServer` server package type. @@ -121,6 +128,18 @@ The .csproj will have the following shape: McpServer + + README.md + + + + + + + + + + @@ -128,7 +147,7 @@ The .csproj will have the following shape: ``` -The template will also include a README.md that can be scraped for an MCP JSON snippet (or another machine readable format depending on [modelcontextprotocol/registry#118](https://github.com/modelcontextprotocol/registry/discussions/118)). +The template will also include machine readable startup instructions (aligning with the [startup instructions](#startup-instructions) described above). ### Improve browsing experience From 66f715785c3e4f35712067e58e86d69fa9eb87d5 Mon Sep 17 00:00:00 2001 From: Joel Verhagen Date: Tue, 3 Jun 2025 12:16:39 -0400 Subject: [PATCH 06/10] Add link to RID-specific tools --- accepted/2025/nuget-mcp.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/accepted/2025/nuget-mcp.md b/accepted/2025/nuget-mcp.md index 2f6a11535..bad81a19e 100644 --- a/accepted/2025/nuget-mcp.md +++ b/accepted/2025/nuget-mcp.md @@ -187,9 +187,12 @@ The .NET team is working on a single-shot experience similar to `npx`. This is n - GitHub issues: [dotnet/sdk#31103](https://github.com/dotnet/sdk/issues/31103), [dotnet/sdk#47517](https://github.com/dotnet/sdk/issues/47517) - Design document: [dotnet/designs#334 - Add a design proposal for dotnet tool exec and dnx](https://github.com/dotnet/designs/pull/334) +- Design document: [dotnet/designs#333 - Add proposal for RID-specific .NET Tool packages](https://github.com/dotnet/designs/pull/333) The sample JSON above leverages this new single-shot command execution. +RID-specific tools solve the "giant package" problem but is not necessarily a hard blocker for the experience. + ### Add support for NuGet packages in the MCP registry #### Today's experience From 856d1d3c76342e35798183f16a1cfd2c3860d851 Mon Sep 17 00:00:00 2001 From: Joel Verhagen Date: Tue, 3 Jun 2025 12:48:50 -0400 Subject: [PATCH 07/10] Add VS Code issue link --- accepted/2025/nuget-mcp.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/accepted/2025/nuget-mcp.md b/accepted/2025/nuget-mcp.md index bad81a19e..ab3e03e58 100644 --- a/accepted/2025/nuget-mcp.md +++ b/accepted/2025/nuget-mcp.md @@ -219,6 +219,8 @@ Similar to the previous section, NuGet is not a recognized MCP server host. We will work with the VS Code team to add a NuGet option to the list, which updates the user's `mcp.json` to invoke `dnx` with the provided package ID. +This is tracked by [microsoft/vscode-copilot#15329](https://github.com/microsoft/vscode-copilot/issues/15329). + Once Visual Studio has a corresponding experience ([the current experience is manually editing the `mcp.json`](https://learn.microsoft.com/en-us/visualstudio/ide/mcp-servers?view=vs-2022)), we will ensure NuGet is supported similarly. ## Rollout plan From 8631a58b5a3ea624fd7bf62c48b2f117697f8b09 Mon Sep 17 00:00:00 2001 From: Joel Verhagen Date: Tue, 3 Jun 2025 14:18:38 -0400 Subject: [PATCH 08/10] Add link and idea from Jeff --- accepted/2025/nuget-mcp.md | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/accepted/2025/nuget-mcp.md b/accepted/2025/nuget-mcp.md index ab3e03e58..eef1880d1 100644 --- a/accepted/2025/nuget-mcp.md +++ b/accepted/2025/nuget-mcp.md @@ -169,7 +169,7 @@ We will add the "MCP Server" (`McpServer`) type to the list. #### Package details page -The package details page will be enhanced to have a new MCP Server tab in the command palette, using the JSON snippet scraped from the README.md (or generated if not found). +The package details page will be enhanced to have a new MCP Server tab in the command palette, using the JSON snippet scraped from the README.md (or generated if not found). Sample of the generated command palette @@ -179,19 +179,20 @@ See the [Startup instructions](#startup-instructions) section above for more det #### Today's experience -It is not possible to download and run a .NET tool in a single command today. This is in contrast to npm, Python, and Docker. For example, an MCP server on npm can be started by VS Code using `npx`. +It is not possible to download and run a .NET tool with a single command today. This is in contrast to npm, Python, and Docker. For example, an MCP server on npm can be started by VS Code using `npx`. #### New experience: `dotnet tool exec` / `dnx` The .NET team is working on a single-shot experience similar to `npx`. This is not work done by the NuGet team, so we'll just link to the existing efforts. - GitHub issues: [dotnet/sdk#31103](https://github.com/dotnet/sdk/issues/31103), [dotnet/sdk#47517](https://github.com/dotnet/sdk/issues/47517) -- Design document: [dotnet/designs#334 - Add a design proposal for dotnet tool exec and dnx](https://github.com/dotnet/designs/pull/334) +- Design document: [dotnet/designs#334 - Add a design proposal for dotnet tool exec and dnx](https://github.com/dotnet/designs/pull/334) + - Proposal PR: [dotnet/sdk#48443](https://github.com/dotnet/sdk/pull/48443) - Design document: [dotnet/designs#333 - Add proposal for RID-specific .NET Tool packages](https://github.com/dotnet/designs/pull/333) The sample JSON above leverages this new single-shot command execution. -RID-specific tools solve the "giant package" problem but is not necessarily a hard blocker for the experience. +RID-specific tools solve the "giant package" problem but are not necessarily a hard blocker for the experience. ### Add support for NuGet packages in the MCP registry @@ -238,6 +239,8 @@ Once Visual Studio has a corresponding experience ([the current experience is ma We will wait to publish an MCP server template until the .NET MCP SDK has announced a stable API surface area. It is currently in prerelease. In addition we will continue to keep eyes on the development of the [MCP specification](https://modelcontextprotocol.io/development/updates) and [MCP Registry](https://github.com/modelcontextprotocol/registry). +As MCP servers are run in more and more places, we can consider enhacing the MSBuild project file to enable an MCP server dependency. This could allow the MCP server to be available to the editor (instead of defined in client `mcp.json` configuration) or on a CI for build-time tasks. For example, an MCP server could be used inside an analyzer to produce or fix build warnings. This could work much like the existing [build integration that NuGet has to ship MSBuild props and targets](https://learn.microsoft.com/en-us/nuget/concepts/msbuild-props-and-targets). Thanks Jeff Kluge ([@jeffkl](https://github.com/jeffkl)) for the idea! + ## Prior Art We should replicate what is already working for npm, PyPI, and Docker. From f3eb8282fa40a5e9007038dc5fe409fd798d1fb3 Mon Sep 17 00:00:00 2001 From: Joel Verhagen Date: Tue, 3 Jun 2025 14:19:44 -0400 Subject: [PATCH 09/10] Add open question about template shipping --- accepted/2025/nuget-mcp.md | 1 + 1 file changed, 1 insertion(+) diff --git a/accepted/2025/nuget-mcp.md b/accepted/2025/nuget-mcp.md index eef1880d1..38d637cc6 100644 --- a/accepted/2025/nuget-mcp.md +++ b/accepted/2025/nuget-mcp.md @@ -254,6 +254,7 @@ We should replicate what is already working for npm, PyPI, and Docker. - I opened a discussion about this on the MCP registry repo: [Embed runtime instructions inside the package artifact](https://github.com/modelcontextprotocol/registry/discussions/118) - How are client runtime requirements expressed? - For example, if an MCP server needs a certain .NET version, how is this communicated to the end user before failure occurs? +- How would the MCP server template ship? Would it be part of the .NET SDK or ship from the MCP SDK repo as a third party template? ## Drawbacks From c92d359cf3f96f6946bd5064121887b960ee0ad2 Mon Sep 17 00:00:00 2001 From: Joel Verhagen Date: Wed, 4 Jun 2025 12:24:05 -0400 Subject: [PATCH 10/10] Add options table for clarity, address comments --- accepted/2025/nuget-mcp.md | 44 +++++++++++++++++++++++++++----------- 1 file changed, 32 insertions(+), 12 deletions(-) diff --git a/accepted/2025/nuget-mcp.md b/accepted/2025/nuget-mcp.md index 38d637cc6..1cd68d8a2 100644 --- a/accepted/2025/nuget-mcp.md +++ b/accepted/2025/nuget-mcp.md @@ -29,6 +29,10 @@ Most of the groundwork is done to ship a .NET MCP server. The SDK is available a Some Microsoft MCP servers are implemented in .NET but distributed via npm, for example [@azure/mcp](https://www.npmjs.com/package/@azure/mcp). This is a fine approach if a Node.js runtime and npm packaging are not concerns. For MCP authors that want to target an environment where the .NET runtime is available, and not depend on npm, Python, or Docker, we should enable an end-to-end experience using just .NET and the MCP client IDE of choice (e.g., VS Code). +## Success criteria + +Ideally, we will publish a guide on learn.microsoft.com on how to create, pack, publish, and browse an MCP server, targeted at potential MCP server authors. A bonus would be working with Microsoft teams working on .NET MCP servers to publish to NuGet.org in addition to or instead of their existing delivery mechanisms. + ## Explanation ### Improve MCP server authoring @@ -63,14 +67,23 @@ The resulting MCP server .nupkg will have two package types: `DotnetTool` and `M We have two options to encode the startup instructions into the package: -1. Instruct the package author to include the desired consumer MCP JSON in the readme, and allow NuGet.org to scrape the JSON from the README markdown (a code block matching a certain pattern). -2. Embed standardized, machine-readable information in the package to allow tooling to know of the startup instructions required for the MCP server - - This could be the same [author `mcp.json`](https://github.com/modelcontextprotocol/registry/blob/main/tools/publisher/README.md) used for publishing to the MCP registry, embedded in the root of the package. +1. Instruct the package author to include the desired consumer MCP JSON in the README, and allow NuGet.org to scrape the JSON from the README markdown (a code block matching a certain pattern). + +2. Embed standardized, machine-readable information in the package to allow tooling to know the startup instructions required for the MCP server. + - This could be the same [author `server.json`](https://github.com/modelcontextprotocol/registry/blob/main/tools/publisher/README.md) used for publishing to the MCP registry, embedded in the root of the package. - This could be information in a new .nuspec field. - The core idea here is to include similar information as the [`package` entity in the MCP registry Open API schema](https://github.com/modelcontextprotocol/registry/blob/3df06d38d9b6590f6ba9bfde56fb3583d8ff4e9d/docs/openapi.yaml#L165-L200). This is essentially the information provided by the MCP registry to MCP client tooling to enable MCP server installation and setup. - See [modelcontextprotocol/registry#118](https://github.com/modelcontextprotocol/registry/discussions/118) for discussion. -The JSON we would like to either scrape from the README (option 1 above) or generate from machine-readable startup instructions (options 2 above) would look like this. +| Option | Pros | Cons | +| ----------------- | ----- | ----- | +| 1. Scrape Markdown | *"soft commitment, wait and see"*
- Allows the package author to choose the consumption syntax
- Easier to integrate with NuGet.org (README is already read)
- Does not bet on any specific schema yet | - May be brittle if the JSON shape varies too much
- NuGet.org specific (custom scrape code) +| 2a. Embed server.json | *"align with MCP registry schema"*
- Would adhere to a schema defined in the ecosystem
- Allows other .nupkg readers to see it easily
- Shares effort with MCP registry publishing
- Likely to be stable after MCP registry launch | - There are other machine-readable formats like VS Code mcp.json
- Diverges from npm/pypi, which do not have rich MCP support
- Needs mapping code to generate consumption JSON (mcp.json) +| 2b. Embed mcp.json | *"align with VS Code config schema"*
- Would adhere to a schema defined in the ecosystem
- Allows other .nupkg readers to see it easily
- Makes VS Code consumption very clear | - There are other machine-readable formats like Claude format
- Picks a format that may change over time (VS Code config) + +**I propose we start with option 2a since it is client-agnostic and positions the package author for publishing to the MCP registry as a next step.** + +The resulting JSON available to copy on the NuGet.org page (either scraped from the README [option 1], mapped from server.json [option 2a], or copied from mcp.json [option 2b]) would look like this: ```json { @@ -95,7 +108,7 @@ The JSON we would like to either scrape from the README (option 1 above) or gene } ``` -For option 1, NuGet.org would look in README.md for a JSON code block with a `servers` JSON property containing a property matching the current package ID. If found, it will place the JSON in the command palette for easy copying. Other MCP JSON configuration shapes will be investigated also. It appears Anthropic uses `mcpServers` in their JSON. If no recognized JSON format is found, a default MCP JSON will be generated: +For option 1, NuGet.org would look in README.md for a JSON code block with a `servers` JSON property containing a property matching the current package ID. If found, it will place the JSON in the command palette for easy copying. Other MCP JSON configuration shapes will be investigated also. It appears Anthropic uses `mcpServers` in their JSON. If no recognized JSON was found, we would either generate a default JSON (likely missing required arguments and environment variables) or say "see project documentation for how to start the MCP server". ```json @@ -122,7 +135,6 @@ The .csproj will have the following shape: Exe net10.0 - Contoso.MySuperMcp true McpServer @@ -136,7 +148,10 @@ The .csproj will have the following shape: - + + + + @@ -147,7 +162,7 @@ The .csproj will have the following shape: ``` -The template will also include machine readable startup instructions (aligning with the [startup instructions](#startup-instructions) described above). +The template will also include machine-readable startup instructions (aligning with the [startup instructions](#startup-instructions) described above). ### Improve browsing experience @@ -237,9 +252,9 @@ Once Visual Studio has a corresponding experience ([the current experience is ma ## Future Possibilities -We will wait to publish an MCP server template until the .NET MCP SDK has announced a stable API surface area. It is currently in prerelease. In addition we will continue to keep eyes on the development of the [MCP specification](https://modelcontextprotocol.io/development/updates) and [MCP Registry](https://github.com/modelcontextprotocol/registry). +We will wait to publish an MCP server template until the .NET MCP SDK has announced a stable API surface area. It is currently in prerelease. In addition, we will continue to keep an eye on the development of the [MCP specification](https://modelcontextprotocol.io/development/updates) and [MCP Registry](https://github.com/modelcontextprotocol/registry). -As MCP servers are run in more and more places, we can consider enhacing the MSBuild project file to enable an MCP server dependency. This could allow the MCP server to be available to the editor (instead of defined in client `mcp.json` configuration) or on a CI for build-time tasks. For example, an MCP server could be used inside an analyzer to produce or fix build warnings. This could work much like the existing [build integration that NuGet has to ship MSBuild props and targets](https://learn.microsoft.com/en-us/nuget/concepts/msbuild-props-and-targets). Thanks Jeff Kluge ([@jeffkl](https://github.com/jeffkl)) for the idea! +As MCP servers are run in more and more places, we can consider enhancing the MSBuild project file to enable an MCP server dependency. This could allow the MCP server to be available to the editor (instead of defined in client `mcp.json` configuration) or on a CI for build-time tasks. For example, an MCP server could be used inside an analyzer to produce or fix build warnings. This could work much like the existing [build integration that NuGet has to ship MSBuild props and targets](https://learn.microsoft.com/en-us/nuget/concepts/msbuild-props-and-targets). Thanks to Jeff Kluge ([@jeffkl](https://github.com/jeffkl)) for the idea! ## Prior Art @@ -250,11 +265,16 @@ We should replicate what is already working for npm, PyPI, and Docker. - What guidance should be provided for private MCP server implementations? - For example, if you publish an `McpServer` to your Azure DevOps feed, what MCP registry should be used? - What schema should be used for a machine-readable MCP server startup instruction? - - The package author could include an `mcp.json` in the NuGet package [matching the MCP registry OpenAPI spec](https://github.com/modelcontextprotocol/registry/blob/a4cefcf05f81466ad65e7c3971e76d0f6d60783e/docs/openapi.yaml#L183-L201). + - The package author could include a `server.json` in the NuGet package [matching the MCP registry OpenAPI spec](https://github.com/modelcontextprotocol/registry/blob/a4cefcf05f81466ad65e7c3971e76d0f6d60783e/docs/openapi.yaml#L183-L201). - I opened a discussion about this on the MCP registry repo: [Embed runtime instructions inside the package artifact](https://github.com/modelcontextprotocol/registry/discussions/118) + +## Resolved questions + +- How would the MCP server template ship? Would it be part of the .NET SDK or ship from the MCP SDK repo as a third-party template? + - **Answer:** this should be shipped from the .NET MCP SDK repository as a sibling artifact with the dependency packages. The template would iterate along with the SDK as it changes. - How are client runtime requirements expressed? - For example, if an MCP server needs a certain .NET version, how is this communicated to the end user before failure occurs? -- How would the MCP server template ship? Would it be part of the .NET SDK or ship from the MCP SDK repo as a third party template? + - **Answer:** we will not try to solve this problem, aside from documenting this potential issue and roll-forward capabilities in the guide we publish. We will depend on IDE enhancements (VS Code could detect the missing runtime and help fulfill it) or .NET SDK enhancements. This is a general problem for running .NET tools, not specific to MCP. ## Drawbacks