使用说明
项目简介
'riza-io_mcp-go' 是一个使用 Go 语言开发的 Model Context Protocol (MCP) 软件开发工具包 (SDK)。它旨在帮助开发者快速构建兼容 MCP 协议的服务器和客户端应用程序,以便为大型语言模型 (LLM) 提供结构化的上下文信息和功能扩展。该 SDK 实现了 MCP 协议的核心规范,并提供了示例服务器,方便用户理解和使用。
主要功能点
- MCP 协议实现: 完整实现了 Model Context Protocol 协议,确保与任何兼容 MCP 协议的客户端互操作。
- 资源管理: 支持托管和管理各种类型的资源,例如文件、数据库数据或 API 数据,并允许客户端通过标准化的 URI 访问这些资源。
- 工具集成: 允许注册和执行外部工具或功能,例如天气查询、文件操作等,使 LLM 能够调用这些工具来增强其能力。
- Prompt 模板: 支持定义和渲染 Prompt 模板,以便根据不同的上下文和需求生成定制化的 LLM 交互 Prompt。
- 多种传输协议: 目前支持 Stdio 传输协议,未来计划支持 SSE 和 WebSocket 等更多协议,以适应不同的应用场景。
- 示例服务器: 提供了文件系统 (fs) 和天气服务 (weather) 两个示例服务器,展示了如何使用该 SDK 构建 MCP 服务器。
安装步骤
- 安装 Go 环境: 确保您的开发环境中已安装 Go 语言环境 (版本 1.18 或更高)。您可以从 Go 官网 下载并安装。
- 获取 SDK: 使用 'go get' 命令获取 'riza-io_mcp-go' SDK:
go get github.com/riza-io/mcp-go - 构建示例服务器 (可选): 如果您想运行示例服务器,可以进入 'examples/fs' 或 'examples/weather' 目录,并使用 'go build' 命令构建可执行文件。例如,构建 'fs' 示例服务器:
cd examples/fs go build -o mcp-go-fs main.go
服务器配置
MCP 服务器需要配置在 MCP 客户端中才能使用。以下是针对 'fs' 示例服务器的 MCP 客户端配置示例 (JSON 格式):
{ "mcpServers": { "fs": { // 服务器名称,可以自定义 "command": "/path/to/mcp-go-fs", // MCP 服务器可执行文件的路径 (根据您的实际构建路径修改) "args": [ // 启动服务器时传递的参数 "/path/to/root/directory" // 指定文件系统资源根目录 (根据您的实际目录修改) ] } } }
配置说明:
- '"fs"': 服务器的名称,您可以在 MCP 客户端中通过这个名称引用该服务器。
- '"command"': MCP 服务器可执行文件的绝对路径。请根据您将 'mcp-go-fs' (或您构建的其他示例服务器) 放置的位置进行修改。
- '"args"': 一个字符串数组,包含启动 MCP 服务器时需要传递的命令行参数。对于 'fs' 示例服务器,第一个参数指定了文件系统资源的根目录。请替换为您希望暴露给 LLM 客户端访问的实际目录路径。
基本使用方法
- 启动 MCP 服务器: 根据您的配置,启动 MCP 服务器。例如,对于 'fs' 示例服务器,在终端中执行:
/path/to/mcp-go-fs /path/to/root/directory - 配置 MCP 客户端: 将上面提供的 JSON 配置添加到您的 MCP 客户端配置文件中 (例如 Claude Desktop 的配置文件)。
- 在 MCP 客户端中使用: 启动 MCP 客户端,客户端应该能够自动连接到您配置的 MCP 服务器。您可以在客户端中访问服务器提供的资源和工具,例如在 Claude Desktop 中,您可以使用 '@fs:file:///path/to/resource' 引用 'fs' 服务器提供的文件资源,或者使用 '#get_forecast' 调用 'weather' 服务器提供的 'get_forecast' 工具。
信息
分类
开发者工具