使用说明
项目简介
'mcp-js-server' 是一个用于构建 Model Context Protocol (MCP) 服务器的 JavaScript SDK。它允许开发者使用 JavaScript 创建后端服务,为大型语言模型 (LLM) 客户端提供上下文信息和功能。通过定义和托管资源、工具和 Prompt 模板,该 SDK 帮助开发者构建符合 MCP 协议的应用后端,从而实现 LLM 应用的功能扩展和数据访问。
主要功能点
- 资源管理:支持托管和管理各种类型的资源,例如 API 文档、知识库等,并允许 LLM 客户端通过 URI 访问这些资源。
- 工具注册与执行:允许注册外部功能(工具),LLM 客户端可以调用这些工具来执行特定任务,扩展 LLM 的能力。
- Prompt 模板管理:支持定义和管理 Prompt 模板,为 LLM 客户端提供可定制的交互模式,优化对话体验。
- 基于 Stdio 的 JSON-RPC 通信:使用标准的 JSON-RPC 协议通过标准输入/输出 (Stdio) 与 MCP 客户端进行通信,实现规范化的请求和响应处理。
- 完整的服务器生命周期管理:支持 MCP 协议定义的 'initialize', 'shutdown', 'exit' 等方法,以及心跳检测 ('ping') 和取消通知 ('notifications/cancelled')。
安装步骤
- 安装 Node.js 和 npm:确保您的系统已安装 Node.js 运行时环境和 npm 包管理器。
- 安装 'mcp-js-server' 包:在您的项目目录下,使用 npm 安装 'mcp-js-server' 包:
npm install mcp-js-server - 创建服务器文件:
- 创建 'prompts.js' 文件来定义 Prompt 模板 (参考示例代码)。
- 创建 'resources.js' 文件来定义资源 (参考示例代码)。
- 创建 'tools.js' 文件来定义工具 (参考示例代码)。
- 创建 'server.js' 文件来实例化和启动 MCP 服务器,并引入上述定义的 prompts、resources 和 tools (参考示例代码)。
- 运行服务器:在命令行中执行以下命令来启动 MCP 服务器:
服务器将开始监听标准输入,等待 MCP 客户端的请求。node server.js
服务器配置
MCP 客户端需要配置服务器的启动命令才能连接到 'mcp-js-server' 实例。以下是一个典型的 MCP 客户端服务器配置示例 (JSON 格式):
{ "serverName": "my-mcp-server", "command": "node", "args": ["server.js"] }
- 'serverName': 服务器名称,可以自定义,用于在客户端标识不同的 MCP 服务器连接。
- 'command': 启动服务器的命令。对于 'mcp-js-server',通常使用 'node' 命令来运行 JavaScript 文件。
- 'args': 传递给 'command' 的参数列表。这里指定运行 'server.js' 文件,该文件是您创建的 MCP 服务器入口点。 请确保 'server.js' 文件以及 'prompts.js', 'resources.js', 'tools.js' 等相关文件位于客户端能够访问到的目录下。 客户端在启动服务器时,会在相应的目录下执行 'node server.js' 命令。
基本使用方法
启动服务器后,MCP 客户端可以向服务器发送符合 MCP 协议的 JSON-RPC 请求。客户端可以发送请求以:
- 获取服务器信息 ('initialize')
- 列出可用工具 ('tools/list')
- 调用指定工具 ('tools/call')
- 列出可用 Prompt 模板 ('prompts/list')
- 获取指定 Prompt 模板 ('prompts/get')
- 列出可用资源 ('resources/list')
- 读取指定资源 ('resources/read')
服务器会解析客户端的请求,执行相应的操作,并通过标准输出将 JSON-RPC 响应返回给客户端。您可以通过查看服务器日志(位于用户系统日志目录中)来调试和监控服务器运行状态。
信息
分类
AI与计算