项目简介
这是一个基于 Model Context Protocol (MCP) 的 "Hello World" 服务器示例,旨在帮助开发者快速了解和上手 MCP 服务器的开发。它预置了资源、Prompt 和工具,展示了 MCP 服务器的基本功能,可以作为 MCP 服务器开发的起点。
主要功能点
- 资源 (Resources):
- 提供静态 "Hello World" 问候资源。
- 提供动态问候资源,可以根据请求的名称参数返回个性化问候语。
- Prompt 模板 (Prompts):
- 提供一个简单的 "helpful-assistant" Prompt 模板,用于设定对话助手的角色。
- 工具 (Tools):
- 提供一个 "echo" 工具,可以接收消息并添加 "Hello" 前缀后返回,用于演示工具的基本调用。
- 提供一个 "sg_search" 工具,可以调用 Sourcegraph API 进行代码搜索(需要配置 Sourcegraph Token 环境变量)。
- 传输协议:
- 支持通过 STDIO (标准输入输出) 和 HTTP (SSE - Server-Sent Events) 两种传输协议与 MCP 客户端通信。
安装步骤
- 确保已安装 Node.js 和 npm。
- 克隆或下载该仓库到本地。
- 在仓库根目录下打开终端,运行以下命令安装项目依赖:
npm install
服务器配置
对于 MCP 客户端(如 Claude Desktop),你需要配置以下信息来连接到此 MCP 服务器。配置信息添加到客户端的 'claude_desktop_config.json' 文件中 (或其他 MCP 客户端的相应配置文件)。
-
使用 STDIO 传输协议 (推荐 Claude Desktop 使用):
{ "mcpServers": { "hello-world": { "command": "node", "args": ["<path-to-repo>/mcp-ts-starter/build/stdio.js"] } } }请将 '<path-to-repo>' 替换为 仓库的绝对路径。例如,如果你的仓库路径是 '/Users/yourname/mcp-ts-starter',则应替换为 '/Users/yourname/mcp-ts-starter'。
-
使用 HTTP (SSE) 传输协议:
{ "mcpServers": { "hello-world-http": { "command": "node", "args": ["<path-to-repo>/mcp-ts-starter/build/http.js"] } } }同样,请将 '<path-to-repo>' 替换为 仓库的绝对路径。HTTP 服务器默认端口为 '3000',可以通过设置 'PORT' 环境变量来修改端口。
基本使用方法
- 启动服务器:
- STDIO: 在终端中,进入仓库根目录,运行 'npm run start' 命令启动 STDIO 服务器。
- HTTP: 在终端中,进入仓库根目录,运行 'npm run start:http' 命令启动 HTTP 服务器。
- 配置 MCP 客户端:
- 根据你选择的传输协议,将上面提供的服务器配置信息添加到你的 MCP 客户端配置文件中,并确保将 '<path-to-repo>' 替换为正确的仓库路径。
- 连接和测试:
- 启动 MCP 客户端,客户端应该能够自动连接到配置的 MCP 服务器。
- 在客户端中,你可以尝试访问服务器提供的资源、Prompt 和工具,例如:
- 访问 'hello://world' 资源,应该返回 "Hello, World from the resource!"。
- 访问 'greeting://yourname' 资源 (将 'yourname' 替换为你的名字),应该返回个性化问候语。
- 调用 'echo' 工具并传入消息,应该返回带有 "Hello" 前缀的回显消息。
- 如果配置了 Sourcegraph Token 环境变量,可以尝试使用 'sg_search' 工具进行代码搜索。
注意事项
- 首次运行前请务必执行 'npm install' 安装依赖。
- 启动服务器后,请保持终端窗口运行,关闭终端窗口会停止服务器。
- HTTP 服务器的 SSE 协议端点为 '/sse',消息接收端点为 '/messages'。
信息
分类
开发者工具