🧩 MCP 客户端-服务器演示(.NET)
这个项目是一个 模型上下文协议(MCP)的简单实现 使用系统 .NET,由两个部分组成:
- 服务器 — 一个通过stdio传输暴露工具的最小化MCP服务器
- 客户 一一个NET控制台客户端,用于连接服务器并与之交互 LLM 通过MCP协议
这个演示接着(进行) 微软的 *初学者模型上下文协议指南* 这是一个学习项目,旨在帮助理解.NET中MCP客户端和服务器之间的通信方式。
______________________________________________________________________
🧠 概述
该 模型上下文协议(MCP) 定义了人工智能模型和工具如何通过标准化传输层(如……)交换结构化消息 stdio 或者 SSE)。\ 这个演示帮助您了解:
- MCP服务器如何通过(某种方式)暴露工具
.NET以及依赖注入 - MCP客户端如何连接并与模型进行交互
- 消息如何通过JSON-RPC进行交换并在MCP格式中进行序列化
📁 项目结构
mcp-dotnet-demo/
│
├── Client/ # The MCP client that sends requests and interacts with the LLM
└── Server/ # The MCP server that exposes tools and handles requests______________________________________________________________________
⚙️ 开始使用
1️⃣ 克隆此仓库
git clone https://github.com//mcp-dotnet-demo.git
cd mcp-dotnet-demo______________________________________________________________________
2️⃣ 安装先决条件
确保您已安装以下内容:
- .NET SDK 8.0及以上版本
- (可选) 如果你想使用MCP Inspector(
npx @modelcontextprotocol/inspector)
______________________________________________________________________
3️⃣ 构建并运行 服务器
cd Server
dotnet build
dotnet run服务器将启动并开始监听 stdio(在中文语境中,通常直接保留原样,不进行翻译,因为它是标准输入输出库的缩写,属于编程术语) 运输。\ 它暴露了在您的C#项目中定义的基本MCP工具。
______________________________________________________________________
4️⃣ 构建并运行 客户
在另一个终端中:
cd Client
dotnet build
dotnet run客户端将连接到MCP服务器,并发送消息以与大型语言模型(LLM)进行交互。\ 你应该会在控制台看到结构化的请求/响应消息被打印出来。
______________________________________________________________________
5️⃣(可选)使用MCP Inspector进行检查
你可以使用(某种工具或方法)来可视化客户端与服务器之间的交互 MCP Inspector 工具:
npx @modelcontextprotocol/inspector dotnet run --project ./Server______________________________________________________________________
使用的工具/技术
- C.NET 8
- Microsoft.Extensions.Hosting 翻译为中文是“微软扩展托管服务(或微软托管扩展包)”。不过,更常见的表述可能是“Microsoft.Extensions.Hosting”被理解为“微软的托管扩展库”或“微软的托管服务扩展”,具体翻译可能根据上下文有所调整。但核心意思是它是一个用于托管服务(如应用程序主机)的扩展库,由微软提供
- ModelContextProtocol SDK(可翻译为):模型上下文协议软件开发工具包
- JSON-RPC / 标准输入输出传输
______________________________________________________________________
📚 参考文献
- 微软的官方指南: 初学者模型上下文协议指南
- MCP的C# SDK
______________________________________________________________________
🪄 许可证
此项目仅供教育和演示之用。\ 见 初学者MCP(微软认证专业人员)证书 供参考。
