使用说明
项目简介
本项目 'mcpservers' 提供了一系列基于 Model Context Protocol (MCP) 协议实现的服务器,全部以 .NET 工具 (dotnet tool) 的形式发布。这些服务器旨在作为 LLM 应用的后端,提供上下文信息和工具能力,支持通过 Stdio 和 SSE 两种传输协议与 MCP 客户端进行通信。
主要功能点
- 资源访问: 'mcpserver.openxml' 系列服务器能够读取和解析 OpenXML 格式的文档(如 .docx 文件),提取文本内容,为 LLM 提供文档数据。
- 工具执行: 服务器注册并暴露各种工具,例如 'mcpserver.openxml' 提供了读取 Word 文档的工具,'mcpserver.everything' 提供了回声 (Echo) 和加法 (Add) 等通用工具。
- 多传输协议: 支持 Stdio (标准输入输出) 和 SSE (Server-Sent Events) 两种传输协议,满足不同应用场景的需求。
- 框架支持: 提供 'ModelContextProtocolServer.Stdio' 和 'ModelContextProtocolServer.Sse' 框架,简化 MCP 服务器的开发。
- 客户端工具: 包含 'mcpclient' 客户端工具,方便用户与 MCP 服务器进行交互和测试工具功能。
安装步骤
- 安装 .NET SDK: 确保已安装 .NET SDK (建议最新版本)。
- 安装 MCP 服务器 dotnet tool: 使用 'dotnet tool install --global' 命令安装所需的 MCP 服务器工具。例如,安装 'mcpserver.openxml.stdio' 服务器:
或者安装 'mcpserver.everything.stdio' 服务器:dotnet tool install --global mcpserver.openxml.stdio
也可以选择安装支持 SSE 协议的服务器,例如 'mcpserver.openxml.sse':dotnet tool install --global mcpserver.everything.stdiodotnet tool install --global mcpserver.openxml.sse
服务器配置
MCP 客户端需要配置服务器连接信息才能与 MCP 服务器通信。以下是不同服务器类型的配置示例 (JSON 格式):
1. Stdio 服务器 (例如 'mcpserver.openxml.stdio', 'mcpserver.everything.stdio') 配置:
{ "serverName": "openxml-stdio-server", // 自定义服务器名称,用于客户端标识 "transportType": "stdio", // 传输类型为 Stdio "command": "mcpserver.openxml.stdio", // 启动服务器的命令 (dotnet tool 名称) "args": [] // 启动参数,本例中无需参数 }
注意:
- 'serverName' 可以自定义,用于在客户端区分不同的服务器连接。
- 'transportType' 必须设置为 '"stdio"'。
- 'command' 需要设置为已安装的 dotnet tool 名称 (例如 'mcpserver.openxml.stdio')。
- 'args' 可以根据服务器需求添加启动参数,本例中 'mcpserver.openxml.stdio' 和 'mcpserver.everything.stdio' 默认无需额外参数。
2. SSE 服务器 (例如 'mcpserver.openxml.sse') 配置:
{ "serverName": "openxml-sse-server", // 自定义服务器名称 "transportType": "sse", // 传输类型为 SSE "location": "http://localhost:5000/sse" // SSE 服务器的地址,默认为 http://localhost:5000/sse }
注意:
- 'transportType' 必须设置为 '"sse"'。
- 'location' 需要设置为 SSE 服务器的 URL 地址。默认情况下,'mcpserver.openxml.sse' 监听 'http://localhost:5000/sse'。
基本使用方法
- 启动 MCP 服务器: 对于 Stdio 服务器,客户端在需要时会自动启动。对于 SSE 服务器,需要先手动启动服务器 (例如,在命令行中运行 'mcpserver.openxml.sse')。
- 配置 MCP 客户端: 在 MCP 客户端中配置上述服务器连接信息 (JSON 格式)。
- 运行 MCP 客户端: 运行 MCP 客户端工具 (例如 'mcpclient')。
- 选择工具并执行: 客户端会显示服务器提供的工具列表。选择要执行的工具,并根据提示输入工具所需的参数。
- 查看结果: 客户端将显示工具执行的结果。
示例 (使用 'mcpclient' 客户端和 'mcpserver.openxml.stdio' 服务器读取 Word 文档):
- 确保已安装 'mcpserver.openxml.stdio' 和 'mcpclient' dotnet tool。
- 配置 'mcpclient' 客户端连接到 'mcpserver.openxml.stdio' 服务器 (使用上述 Stdio 服务器配置 JSON)。
- 运行 'mcpclient' 客户端。
- 在工具列表中选择 "ReadWordDocument (Read a .docx file and return the content as plain text.)" 工具。
- 客户端会提示输入 'filename' 参数。输入 Word 文档的文件名 (确保该文档位于服务器配置的 'allowedPath' 目录下,默认为服务器程序运行目录)。
- 客户端将显示从 Word 文档中提取的文本内容。
通过以上步骤,您可以使用 'mcpservers' 项目提供的 MCP 服务器和客户端工具,体验 MCP 协议的功能,并为 LLM 应用构建强大的上下文服务。
信息
分类
AI与计算