Latest upstream author date included at this registry's pinned revision.

csharp-mcp-server-generator

Frozen v1.0.0 Latest included change: No verified upstream history.

Generate a complete MCP server project in C# with tools, prompts, and proper configuration

Summary

Purpose
Builds a C# Model Context Protocol server project using host-based dependency injection and stdio transport, with discoverable tools and practical operating guidance.
When to use
Use it when you need a .NET 8 or later console server that exposes custom MCP tools and includes configuration, validation, and run-and-test guidance.
Outputs
Produces a console project configured for MCP stdio transport and stderr logging, with at least one attributed tool, validation and error handling, plus instructions for running and testing it.
⚠ Frozen / No Upstream

This skill has no verified upstream source. It is frozen at v1.0.0 and will not receive updates.

npx skills add "lettucebo/Skills#v2.2.0@csharp-mcp-server-generator" --full-depth

⚠ Available after v2.2.0 is published

Generate C# MCP Server

Create a complete Model Context Protocol (MCP) server in C# with the following specifications:

Requirements

  1. Project Structure: Create a new C# console application with proper directory structure
  2. NuGet Packages: Include ModelContextProtocol (prerelease) and Microsoft.Extensions.Hosting
  3. Logging Configuration: Configure all logs to stderr to avoid interfering with stdio transport
  4. Server Setup: Use the Host builder pattern with proper DI configuration
  5. Tools: Create at least one useful tool with proper attributes and descriptions
  6. Error Handling: Include proper error handling and validation

Implementation Details

Basic Project Setup

  • Use .NET 8.0 or later
  • Create a console application
  • Add necessary NuGet packages with --prerelease flag
  • Configure logging to stderr

Server Configuration

  • Use Host.CreateApplicationBuilder for DI and lifecycle management
  • Configure AddMcpServer() with stdio transport
  • Use WithToolsFromAssembly() for automatic tool discovery
  • Ensure the server runs with RunAsync()

Tool Implementation

  • Use [McpServerToolType] attribute on tool classes
  • Use [McpServerTool] attribute on tool methods
  • Add [Description] attributes to tools and parameters
  • Support async operations where appropriate
  • Include proper parameter validation

Code Quality

  • Follow C# naming conventions
  • Include XML documentation comments
  • Use nullable reference types
  • Implement proper error handling with McpProtocolException
  • Use structured logging for debugging

Example Tool Types to Consider

  • File operations (read, write, search)
  • Data processing (transform, validate, analyze)
  • External API integrations (HTTP requests)
  • System operations (execute commands, check status)
  • Database operations (query, update)

Testing Guidance

  • Explain how to run the server
  • Provide example commands to test with MCP clients
  • Include troubleshooting tips

Generate a complete, production-ready MCP server with comprehensive documentation and error handling.

History

v1.0.0 bootstrap
v1.0.0 license-refresh