MCP.so
登录

MCPSharp

@afrise

关于 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.

基本信息

分类

开发工具

许可证

MIT

运行时

c#

传输方式

stdio

发布者

afrise

配置

暂无标准配置

该服务器的 README 中没有可解析的 MCP 配置块,请前往代码仓库查看安装说明。

代码仓库

工具

未检测到工具

工具是从 README 中自动提取的。维护者可以在 ## Tools 标题下列出工具,即可填充这部分内容。

概览

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>().

评论

开发工具 分类下的更多 MCP 服务器