mcp-csharp-publish

Publish C# MCP servers to NuGet, Azure, and the MCP Registry.

1|Updated May 21, 2026
One-click install
npx skills add https://github.com/1k-off/umbraco-observability-playground --skill mcp-csharp-publish-1k-off
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: mcp-csharp-publish
Source: https://github.com/1k-off/umbraco-observability-playground/tree/main/.agents/skills/mcp-csharp-publish
Command: npx skills add https://github.com/1k-off/umbraco-observability-playground --skill mcp-csharp-publish-1k-off

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

This Skill removes the uncertainty and repetitive setup required to publish C# MCP servers by packaging them correctly, deploying them to the right hosting target, and registering them for discoverability.

Core Features & Use Cases

  • Publish stdio MCP servers via NuGet: Create a dotnet tool package for a C# MCP server and push it to NuGet.org for client-side installation and execution.
  • Deploy HTTP MCP servers via containerization: Build a production-ready Docker image and deploy it to Azure Container Apps or Azure App Service as an HTTP MCP server.
  • Register servers in the official MCP Registry: Generate and publish .mcp/server.json metadata so MCP clients can discover your server.
  • Use version consistency guardrails: Ensure <Version> in the project, root version in server.json, and packages[].version stay aligned to prevent registry validation failures.

Quick Start

Publish a stdio MCP server to NuGet.org and register it by following the flow for NuGet tool packaging, pushing the generated .nupkg, then creating .mcp/server.json and running mcp-publisher publish.

Frequently Asked Questions about mcp-csharp-publish

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I publish a C# MCP server to NuGet as a dotnet tool?

You publish a C# MCP server to NuGet by configuring the `.csproj` for tool packing, generating the `.nupkg` package, and pushing it to NuGet.org so clients can install and execute the stdio server directly via the dotnet tool command.

How do I deploy an HTTP MCP server using Docker and Azure?

You deploy an HTTP MCP server by building a production-ready Docker container image and deploying it to Azure Container Apps or Azure App Service, which provides accessible HTTP endpoints for client communication.

How do I register an MCP server in the official MCP Registry?

You register an MCP server by generating and publishing the `.mcp/server.json` metadata file and running `mcp-publisher publish`, ensuring the root version matches your project version to pass registry validation.

Why does MCP Registry validation fail when publishing my server?

MCP Registry validation fails when version fields are inconsistent. You must ensure the `<Version>` in your `.csproj`, the root `version` in `server.json`, and the `packages[].version` field all match exactly to prevent validation failures.

Do I need a server.json file to publish a C# MCP server?

Creating a `server.json` file is required for registry discoverability. It provides the official MCP Registry with the necessary metadata for MCP clients to find and install your published server.

Can I use Azure App Service instead of Azure Container Apps for hosting an MCP server?

Both Azure Container Apps and Azure App Service support hosting containerized HTTP MCP servers. You can deploy your Docker image to either Azure platform depending on your existing infrastructure and scaling requirements.