使用说明
项目简介
本项目 'mcp-hello-world' 是一个 Model Context Protocol (MCP) 的入门教程,旨在帮助开发者理解和实践 MCP 服务器的开发。通过 Lesson 1 的示例,您可以学习如何创建一个基础的 MCP 服务器,并实现一个简单的 'greeting' 工具。Lesson 2 介绍了如何使用 Chrome DevTools 和 Cursor 进行调试。
主要功能点
- 工具注册与执行: 提供了一个 'greeting' 工具,可以接收用户姓名并返回问候语,演示了 MCP 服务器如何注册和执行工具。
- 基础上下文服务: 虽然示例简单,但体现了 MCP 服务器作为上下文服务的基本框架。
- Stdio 传输协议: Lesson 1 教程使用了 stdio 作为 MCP 服务器与客户端之间的通信协议。
安装步骤
-
克隆仓库
git clone https://github.com/chongdashu/mcp-hello-world.git cd mcp-hello-world/lesson1/server -
安装依赖 确保您已安装 Node.js 和 npm。在 'lesson1/server' 目录下运行:
npm install -
启动服务器 在 'lesson1/server' 目录下,运行以下命令启动 MCP 服务器:
npm start或者,如果您想直接运行 TypeScript 代码(可能需要安装 'ts-node'):
npx ts-node src/index.ts服务器默认通过 stdio 进行通信,启动后会等待 MCP 客户端的连接和请求。
服务器配置
MCP 客户端需要配置连接到此 MCP 服务器。以下是一个可能的 JSON 格式配置示例,用于配置 MCP 客户端(例如 Cursor、Windsurf 或支持 MCP 的 VS Code 插件):
{ "serverName": "hello-world-server", // 服务器名称,您可以自定义 "command": "node", // 启动服务器的命令,这里使用 Node.js 运行 "args": ["src/index.ts"], // 命令参数,指向服务器入口文件 (如果您使用 'npm start' 启动,args 可以为空数组 []) "cwd": "./lesson1/server" // (可选) 工作目录,如果命令或参数中的路径是相对路径,则需要指定 }
配置说明:
- 'serverName': 为您的 MCP 服务器指定一个名称,方便在客户端中识别和管理。
- 'command': 指定用于启动服务器进程的命令。本例中使用 'node' 来运行 Node.js 代码。
- 'args': 命令的参数列表。这里指向 'src/index.ts' 文件,这是服务器的入口点。 如果您使用 'npm start' 启动,并且 'npm start' 脚本已经配置了正确的启动命令,则 'args' 可以为空数组 '[]'。
- 'cwd': (可选) 指定客户端启动服务器进程时的工作目录。如果您的 'command' 或 'args' 中使用了相对路径,确保 'cwd' 设置为正确的目录,通常是服务器代码所在的根目录 'lesson1/server'。
重要提示: 请根据您的实际运行环境和启动方式调整 'command' 和 'args'。 如果您将 TypeScript 代码编译为 JavaScript (例如使用 'npm run build' 并运行 'node dist/index.js'),则 'args' 应指向编译后的 JavaScript 文件。
基本使用方法
- 配置 MCP 客户端: 在您的 MCP 客户端(如 Cursor)中,根据上述“服务器配置”示例,添加一个新的自定义服务器连接,并填入相应的配置信息。
- 连接服务器: 启动您的 MCP 客户端,并确保它成功连接到您配置的 'hello-world-server'。
- 调用工具: 在 MCP 客户端中,您可以尝试调用 'greeting' 工具。通常,MCP 客户端会提供界面或命令来发现和调用服务器提供的工具。调用 'greeting' 工具时,您需要提供 'name' 参数(字符串类型),例如 "World"。
- 查看结果: 服务器执行 'greeting' 工具后,会将包含问候消息的结果返回给 MCP 客户端,您可以在客户端界面中查看返回的问候语,例如 "Hello, World! Welcome to the Model Context Protocol."。
信息
分类
开发者工具