项目简介
mcp-server-hello 是一个使用 Rust 编写的 MCP (Model Context Protocol) 服务器模板,旨在帮助开发者快速搭建 MCP 服务器。该模板提供了一个基础的 MCP 服务器框架,实现了 MCP 协议中资源 (Resources)、Prompt 模板 (Prompts) 和工具 (Tools) 的基本管理和交互功能。开发者可以基于此模板扩展和定制自己的 MCP 服务器,以便为 LLM 应用提供上下文数据和功能支持。
主要功能点
- 资源管理: 支持列出和读取预定义的资源,例如应用日志。
- Prompt 模板管理: 支持列出和获取预定义的 Prompt 模板,例如获取城市当前时间。
- 工具注册和执行: 支持注册和调用预定义的工具,例如获取城市当前时间。
- JSON-RPC 通信: 使用 JSON-RPC 协议与 MCP 客户端进行通信。
- CLI 界面: 提供命令行界面,可以通过参数启动 MCP 服务器,或查看预定义的资源、Prompt 和工具列表。
- 可扩展性: 模板结构清晰,易于扩展新的资源、Prompt 和工具处理逻辑。
安装步骤
-
克隆仓库
git clone https://github.com/TeamDman/mcp-server-hello cd mcp-server-hello -
修改项目信息 (可选)
- 编辑 'Cargo.toml' 文件,修改 '[package]' 部分的项目名称、版本、作者等信息。
- 编辑 'src/mcp/mod.rs' 文件,修改 'SERVER_NAME' 和 'SERVER_VERSION' 常量。
-
修改服务器处理逻辑 (可选,根据需要扩展功能)
- 'src/mcp/prompts.rs': 修改 Prompt 模板的处理逻辑,例如 'prompts_list' (列出 Prompt) 和 'prompts_get' (获取 Prompt)。
- 'src/mcp/resources.rs': 修改资源的处理逻辑,例如 'resources_list' (列出资源) 和 'resource_read' (读取资源)。
- 'src/mcp/tools.rs': 修改工具的处理逻辑,例如 'tools_list' (列出工具) 和具体的工具函数 (如 'current_time')。
- 如果需要使用 JSON 文件管理 Prompt、资源和工具,可以修改 'src/mcp/templates/*.json' 文件,并在对应的处理函数中加载这些 JSON 文件。
服务器配置
MCP 服务器需要配置在 MCP 客户端中才能使用。以下是一个配置 Claude Desktop 使用 'mcp-server-hello' 服务器的示例配置 (json 格式,无需用户修改代码):
{ "mcpServers": { "current-time": { "command": "mcp-server-hello", "args": [ "--mcp" ], "env": { "API_KEY": "xxxx" // 可选:如果服务器需要环境变量,可以在这里配置 } } } }
配置参数说明:
- '"current-time"': 服务器名称,可以自定义,用于在客户端中标识该服务器。
- '"command": "mcp-server-hello"': MCP 服务器的启动命令。假设您已经将项目编译为可执行文件 'mcp-server-hello',并将其放在了系统 PATH 环境变量包含的目录下,或者这里使用可执行文件的完整路径。
- '"args": ["--mcp"]': 传递给服务器的命令行参数。'"--mcp"' 参数用于启动 MCP 服务器模式。
- '"env": { "API_KEY": "xxxx" }': 可选的环境变量配置。如果您的服务器需要访问 API 密钥或其他敏感信息,可以通过环境变量传递。
请注意: MCP 客户端 (例如 Claude Desktop) 需要读取以上 JSON 配置信息,才能正确连接和使用 MCP 服务器。用户 无需 手动创建或修改 'claude_desktop_config.json' 文件,通常在客户端的设置或开发者选项中进行配置。
基本使用方法
-
编译项目 在项目根目录下,使用 Rust 工具链编译项目:
cargo build --release编译成功后,可执行文件 'mcp-server-hello' (或 'mcp-server-hello.exe' 在 Windows 下) 将位于 'target/release/' 目录下。
-
启动 MCP 服务器 打开终端,导航到 'target/release/' 目录,并执行以下命令启动 MCP 服务器:
./mcp-server-hello --mcp服务器启动后,将监听标准输入 (stdin) 的 JSON-RPC 请求,并将响应输出到标准输出 (stdout)。
-
在 MCP 客户端中配置并使用 根据 MCP 客户端 (例如 Claude Desktop) 的配置方法,将上面提供的服务器配置信息添加到客户端中。配置完成后,客户端即可与 'mcp-server-hello' 服务器建立连接,并调用服务器提供的资源、Prompt 和工具功能。
-
查看预定义信息 (可选,不启动服务器) 您可以使用以下命令查看服务器预定义的资源、Prompt 和工具列表,而无需启动 MCP 服务器模式:
- 查看资源列表: './mcp-server-hello --resources'
- 查看 Prompt 列表: './mcp-server-hello --prompts'
- 查看工具列表: './mcp-server-hello --tools'
通过以上步骤,您可以快速搭建并运行 'mcp-server-hello' MCP 服务器,并将其集成到支持 MCP 协议的 LLM 应用中。
信息
分类
开发者工具