MCPSharp
@afrise
About MCPSharp
MCPSharp is a .NET library that helps you build Model Context Protocol (MCP) servers and clients - the standardized API protocol used by AI assistants and models.
Basic information
Config
No standard config provided
This server doesn't expose a parseable MCP config block in its README. See the repository for install instructions.
RepositoryTools
No tools detected
We auto-extract tools from the README. The maintainer can list them under a ## Tools heading to populate this section.
Overview
What is MCPSharp?
MCPSharp is a .NET library that helps you build Model Context Protocol (MCP) servers and clients, the standardized API protocol used by AI assistants and models. It allows you to create MCP-compliant tools and functions, connect to MCP servers from C# code, and expose .NET methods as MCP endpoints using simple attributes.
How to use MCPSharp?
Install the NuGet package with dotnet add package MCPSharp. Define a class and mark methods with the [McpTool] attribute, then start the server by calling MCPServer.StartAsync("serverName", "1.0.0"). Optionally, register tools from referenced libraries using MCPServer.Register<T>().
Key features of MCPSharp
- Easy-to-use attribute-based API (
[McpTool],[McpResource]) - Built-in JSON-RPC support with automatic request/response handling
- Automatic parameter validation and type conversion
- Rich documentation support through XML comments
- Dynamic tool registration with custom implementation logic
- Integration with Microsoft.Extensions.AI and Semantic Kernel
Use cases of MCPSharp
- Create tools that AI assistants like Anthropic's Claude Desktop can use
- Build MCP-compliant APIs without dealing with protocol details
- Expose existing .NET code as MCP endpoints
- Add AI capabilities to applications through standardized interfaces
- Integrate with Microsoft.Extensions.AI or Semantic Kernel without vendor lock-in
FAQ from MCPSharp
What are the runtime dependencies for MCPSharp?
MCPSharp requires any version of .NET that supports .NET Standard 2.0.
How do I define a tool in MCPSharp?
Create a class and mark a method with the [McpTool] attribute, optionally providing a name and description. Use [McpParameter] to specify parameter metadata.
Can I use MCPSharp with Semantic Kernel?
Yes. Mark methods with [KernelFunction] and [Description], then register the class with MCPServer.Register<T>(). The server will expose those methods as MCP tools.
How does MCPSharp integrate with Microsoft.Extensions.AI?
On the client side, call client.GetFunctionsAsync() to obtain a list of AIFunction objects that can be plugged into ChatOptions.Tools for any IChatClient implementation.
Are there any migration notes from previous versions?
Yes. The [McpFunction] attribute is deprecated and replaced with [McpTool]. Also, use MCPServer.Register<T>() instead of the deprecated MCPServer.RegisterTool<T>().
More Developer Tools MCP servers
nuxt-mcp / vite-plugin-mcp
antfuMCP server helping models to understand your Vite/Nuxt app better.
sentry-mcp
getsentryAn MCP server for interacting with Sentry via LLMs.
test
cloudwegoThe ultimate LLM/AI application development framework in Go.
Golf
golf-mcpProduction-Ready MCP Server Framework • Build, deploy & scale secure AI agent infrastructure • Includes Auth, Observability, Debugger, Telemetry & Runtime • Run real-world MCPs powering AI Agents
FastAPI-MCP
tadata-orgExpose your FastAPI endpoints as Model Context Protocol (MCP) tools, with Auth!
Comments