微软携手Anthropic,推出适用于C#的Model Context Protocol官方SDK 🚀
微软近日宣布与Anthropic合作,共同开发适用于C#的Model Context Protocol (MCP)官方SDK。这款SDK旨在帮助开发者更轻松地将AI模型集成到C#应用中,同时支持创建符合MCP标准的服务器。🎉
什么是Model Context Protocol (MCP)?
Model Context Protocol (MCP) 是由Anthropic设计的一种开放协议,主要用于实现LLM(大语言模型)与外部工具和数据源的集成。它允许开发者构建自定义工具和数据源,并将其与LLM应用结合使用,从而扩展AI模型的功能。该协议自2024年11月发布以来,已经成为AI社区广泛使用的技术标准。
MCP消息类型简介
MCP协议支持多种消息类型,用于客户端和服务器之间的通信。例如:
消息类型 | 描述 |
---|---|
InitializeRequest | 初始化连接时发送的请求 |
ListToolsRequest | 请求服务器提供可用工具列表 |
CallToolRequest | 调用服务器提供的工具 |
ReadResourceRequest | 读取指定资源 URI 的请求 |
PingRequest | 用于检查对方是否存活的心跳请求 |
这些消息设计灵活,支持扩展,能够满足不同开发场景的需求。
为什么选择C#?
微软之所以选择C#作为MCP SDK开发语言,是因为它拥有以下优势:
- 企业级广泛使用:C#在企业级开发中占据重要地位,是许多关键应用的首选语言。
- 性能优化:现代.NET框架性能优秀,支持容器化环境,能够在本地开发和生产环境中提供卓越表现。
- 生态系统支持:包括Visual Studio、Azure服务、Microsoft Teams等核心产品均基于C#开发。
通过官方C# SDK,开发者不仅能够轻松将AI模型集成到C#应用,还可以快速构建支持MCP协议的服务器。
快速上手:创建一个Echo Server 🌟
以下示例展示了如何使用MCP C# SDK创建一个简单的Echo Server,该服务器会将接收到的信息前缀为“hello”后返回。
安装必要依赖
创建一个新的dotnet控制台应用后,安装以下NuGet包:
dotnet add package Microsoft.Extensions.Hosting
dotnet add package ModelContextProtocol --prerelease
编写代码
将以下代码添加到Program.cs
文件:
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting;
using Microsoft.Extensions.Logging;
using ModelContextProtocol.Server;
using System.ComponentModel;
var builder = Host.CreateApplicationBuilder(args);
builder.Logging.AddConsole(consoleLogOptions =>
{
// 将所有日志输出到stderr
consoleLogOptions.LogToStandardErrorThreshold = LogLevel.Trace;
});
builder.Services
.AddMcpServer()
.WithStdioServerTransport()
.WithToolsFromAssembly();
await builder.Build().RunAsync();
[McpServerToolType]
public static class EchoTool
{
[McpServerTool, Description("Echoes the message back to the client.")]
public static string Echo(string message) => $"hello {message}";
}
使用MCP Inspector测试服务器 🔍
要测试刚刚创建的服务器,可以使用MCP Inspector,一个用于调试MCP服务器的可视化工具。
无需安装Inspector,只需通过npx
运行:
npx @modelcontextprotocol/inspector dotnet run
启动后,在浏览器中访问提示的URL即可查看Inspector界面。以下是操作步骤:
- 连接服务器:点击“Connect”按钮。
- 列出工具:点击“List Tools”按钮查看服务器提供的工具列表。
- 运行工具:选择Echo工具,输入消息并点击“Run Tool”按钮运行。
效果如下图所示:
更多资源 📚
结语 💡
微软推出的MCP C# SDK为开发者提供了强大的工具,帮助他们更轻松地构建AI集成应用和支持MCP协议的服务器。该SDK目前仍处于预览阶段,但已经展示出极大的潜力。如果你对这项技术感兴趣,欢迎访问GitHub仓库贡献代码或提出建议!
快来试试吧,让我们共同推动AI生态系统的发展!🌐