使用说明
项目简介
Aspire MCP 示例服务器是一个使用 .NET Aspire 框架构建的 MCP(Model Context Protocol)服务器示例项目。它展示了如何使用 C# 和 ASP.NET Core 创建一个 MCP 服务器,该服务器能够通过 Server-Sent Events (SSE) 协议与 MCP 客户端进行通信,并提供工具和资源供 LLM(大型语言模型)客户端使用。
主要功能点
- MCP 服务器实现: 实现了 MCP 协议的核心功能,能够处理客户端的资源访问和工具调用请求。
- 工具注册与执行: 示例中包含了天气查询和笑话工具,演示了如何在 MCP 服务器中注册和执行工具函数,扩展 LLM 的能力。
- SSE 传输协议支持: 使用 Server-Sent Events 作为 MCP 服务器的传输协议,实现与客户端的实时通信。
- Aspire 集成: 项目基于 .NET Aspire 构建,利用 Aspire 的服务编排和管理能力,简化了服务器的部署和运行。
- Blazor Chat 客户端示例: 提供了一个 Blazor Web 应用作为 MCP 客户端示例,演示了如何与 MCP 服务器建立连接并进行交互。
安装步骤
-
安装 .NET SDK: 确保已安装 .NET SDK 9.0 或更高版本。您可以从 官方 .NET 网站 下载并安装。
-
克隆仓库: 使用 Git 克隆 'Aspire.MCP.Sample' 仓库到本地:
git clone https://github.com/elbruno/Aspire.MCP.Sample.git -
导航到 AppHost 目录: 打开命令行终端,导航到仓库目录下的 'src\McpSample.AppHost' 文件夹:
cd .\src\McpSample.AppHost\ -
运行项目: 在 'McpSample.AppHost' 目录下,使用 .NET CLI 运行 Aspire 项目:
dotnet run这将启动 Aspire 编排器以及 MCP 服务器和 Blazor Chat 客户端。
-
访问 Aspire 仪表盘: 在浏览器中访问 Aspire 仪表盘(通常地址为 'http://localhost:5000'),您可以在仪表盘中找到 Blazor Chat 客户端的链接。
服务器配置
MCP 服务器作为 Aspire 应用的一部分运行,客户端无需直接配置服务器的启动命令或参数。客户端只需要配置 MCP 服务器的连接地址即可。
对于 'Aspire.MCP.Sample' 仓库中的 Blazor Chat 客户端,服务器连接地址已预配置在客户端代码中,默认指向本地 Aspire 应用的 'aspnetsseserver' 服务的 SSE 端点。
MCP 客户端配置示例 (Blazor Chat 客户端 'Program.cs' 文件):
{ "server name": "AspNetCoreSse", "command": "dotnet", "args": [ "run", "--project", "..\\..\\src\\McpSample.AspNetCoreSseServer\\McpSample.AspNetCoreSseServer.csproj" ], "transportType": "Sse", "location": "https://localhost:7133/sse" }
参数注释:
- 'server name': MCP 服务器的名称,客户端内部使用,可以自定义。例如: "AspNetCoreSse"。
- 'command': 启动 MCP 服务器的命令,对于 .NET Aspire 应用,通常使用 'dotnet run'。
- 'args': 传递给启动命令的参数列表。
- '--project': 指定要运行的 .NET 项目文件路径。这里指向 'McpSample.AspNetCoreSseServer.csproj',即 MCP 服务器项目。
- 'transportType': MCP 服务器使用的传输协议类型,示例中使用 SSE (Server-Sent Events)。
- 'location': MCP 服务器的 SSE 端点 URL,客户端通过此 URL 与服务器建立连接。例如: '"https://localhost:7133/sse"'。
注意: 实际的 MCP 客户端可能需要您提供 JSON 格式的配置文件或在客户端代码中直接配置上述信息。'Aspire.MCP.Sample' 的 Blazor Chat 客户端已在代码中硬编码了连接配置,您可以通过修改 'src/McpSample.Chat/Program.cs' 文件中的 'McpClientOptions' 和 'McpServerConfig' 部分来调整客户端配置。
基本使用方法
-
启动服务器: 按照 "安装步骤" 中的说明运行 'Aspire.MCP.Sample' 项目,确保 MCP 服务器成功启动。
-
访问 Blazor Chat 客户端: 通过 Aspire 仪表盘提供的链接访问 Blazor Chat 客户端 Web 应用。
-
配置模型: 在 Blazor Chat 客户端的 "Chat Settings" 页面,根据您的需求配置要使用的 LLM 或 SLM 模型,可以选择 Azure AI Foundry 模型、GitHub 模型或本地 Ollama 模型。
-
开始聊天: 在聊天界面中输入消息,与配置的模型进行对话。当 LLM 调用 MCP 服务器提供的工具函数时,"Tool Result" 部分会显示在聊天界面中,展示工具的执行结果。
通过 Blazor Chat 客户端,您可以体验 MCP 服务器提供的笑话和天气查询工具,并观察 LLM 如何利用这些工具来增强对话能力。
信息
分类
开发者工具