MCP官方C# SDK:实现.NET与MCP客户端和服务器快速交互

笔记哥 / 04-06 / 8点赞 / 0评论 / 356阅读
## 前言 今天大姚给大家推荐一个由 MCP 官方推出的 C# SDK,使 .NET 应用程序、服务和库能够快速实现与 MCP 客户端和服务器交互:`MCP C# SDK`。 ## 项目介绍 `MCP C# SDK` 是由 Model Context Protocol(MCP)官方推出的 C# 软件开发工具包(SDK),它使 .NET 应用程序、服务和库能够快速实现与 MCP 客户端和服务器进行交互。MCP是一个开放协议,它标准化了应用程序如何为大型语言模型(LLMs)提供上下文,并实现了 LLMs 与各种数据源和工具之间的安全集成。 ## 模型上下文协议(MCP) Model Context Protocol(MCP)是一个开放的协议,它标准化了应用程序如何向LLMs提供上下文。想象一下 MCP 就像 AI 应用的 USB-C 端口。正如 USB-C 提供了一种标准化的方式来连接您的设备到各种外围设备和配件,MCP 提供了一种标准化的方式来连接 AI 模型到不同的数据源和工具。 ![](https://cdn.res.knowhub.vip/c/2504/06/8d12559c.png?G1cAAOTcVkxw9yO2iOF0Q2CDZsAijaBSwnq956x9A3x%2fMLLmZ7Q%2bY3%2f4TeszgEScagVGNlSkgM5MlxiaJqKiIk6OeY0A) ## 为什么选择 MCP? > MCP为LLMs与各种数据源和工具之间的交互提供了一个标准化、安全、灵活且可扩展的解决方案,因此具有广泛的应用场景和重要的应用价值。 - MCP是一个开放的、标准化的协议,它定义了应用程序如何为LLMs提供上下文信息。使用MCP可以确保不同的应用程序和服务之间在交互时遵循相同的规则和标准,从而避免了因协议不一致而导致的兼容性问题。 - MCP协议支持多种传输类型和选项,使得开发者可以根据实际需求选择最适合的传输方式。同时,MCP还提供了细粒度的控制选项,使得开发者可以灵活地配置服务器和客户端的行为。 - MCP协议具有良好的可扩展性,可以随着技术的发展和应用的需求不断扩展和完善。这意味着未来即使有新的数据源、工具或LLMs出现,只要它们遵循MCP协议,就可以轻松地与现有的系统进行集成和交互。 **MCP 的核心遵循客户端-服务器架构,其中主机应用程序可以连接到多个服务器:** ![](https://cdn.res.knowhub.vip/c/2504/06/162486c5.png?G1YAAMTsdJxI8kmDbqMO2jvFHc2ARBZBpYT1es9Z%2byb6%2fgaGxWfUPtv%2b8JfaZyNRdSmFwLjYEDw7INlScg2mLBlsHtdo) ## 项目源代码 ![](https://cdn.res.knowhub.vip/c/2504/06/2928e13e.png?G1cAAMT0bJxoe1TUNvqh%2f4lHQjNgkUZQKWG93nv3aUTf72Dk%2bMw%2blp8Pv%2bljOUlKRcwIDOWMELgAYgyGBYFaNdEqcU8H) ## Nuget包安装 ```csharp dotnet add package ModelContextProtocol --version 0.1.0-preview.4 ``` - ![](https://cdn.res.knowhub.vip/c/2504/06/adc77cda?GzIAAETdFtvfDV0wdD03HCc6uWmLQBaVh85J7ltUM1PWc6PguHpEK4ZF%2bh6f7YDoCA%3d%3d) ![](https://cdn.res.knowhub.vip/c/2504/06/882d1c76.png?G1cAAOTcVkxwP3i2iOF0Q2CDZsAijaBSwnq956x9A3x%2fMLLmZ7Q%2bY3%2f4TeszgEQKuQMjGypSwMJMTpWsJnI1KSqX5TUC) ## MCP Client 要开始编写客户端,可以使用 McpClientFactory.CreateAsync 方法实例化和连接到服务器的一个 IMcpClient 。一旦你有了 IMcpClient ,你就可以与之交互,例如列出所有可用的工具和调用工具。 ![](https://cdn.res.knowhub.vip/c/2504/06/fea00d48.png?G1cAAMTsdJxI8oim26hD2jvFHc2ARRpBpYT1es9Z%2byb6fgcjx2e0Pn1%2f%2bE3r00lSUjEjMApnhMAKiKWiVw7C1VQAK3ENBw%3d%3d) ## MCP Server ![](https://cdn.res.knowhub.vip/c/2504/06/b0547d18.png?G1cAAETn9LwUCmLGvtMdbIlTE20GLNIIKiWs13vO2jfR94ewlPyM1mfsD79pfQZBtcKdhMW4IAWuInArJp4Agxrj8rxGAA%3d%3d) ![](https://cdn.res.knowhub.vip/c/2504/06/431c139b.png?G1YAAMTydJz4c3hhG3X4NlEkNAMSWQSVEtbrvXefJvL9RjD5Z%2fax7Hz4Sx%2fLJMSooVYhmJHgPJQkEFTVaaosJUf4PQ0%3d) ## MCP官方文档介绍:https://modelcontextprotocol.io/introduction
相关资源
.NET 应用程序使用MCP C# SDK Demo!GitHub开源地址
查看内容