Skip to content

Improve the MCP server template to produce self-contained packages #6560

@joelverhagen

Description

@joelverhagen

To reduce friction when running an MCP server, we should make the template have these properties (roughly):

<PublishSelfContained>true</PublishSelfContained>
<RuntimeIdentifiers>win-x64;win-arm64;osx-arm64;osx-x64;linux-x64;linux-musl-x64</RuntimeIdentifiers>

This will produce N .nupkgs with the top level (N + 1, where N is the number of RIDs). The top level one will have DotnetTool and McpServer package types. The RID-specific ones will have DotnetToolRidPackage but no McpServer package type (they are "hidden" implementation details of the MCP server package).

This is blocked on dotnet/sdk#49615.

The quickstart guide needs to be updated too.

Metadata

Metadata

Labels

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions