使用说明

项目简介

'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')。

安装步骤

  1. 安装 Node.js 和 npm:确保您的系统已安装 Node.js 运行时环境和 npm 包管理器。
  2. 安装 'mcp-js-server' 包:在您的项目目录下,使用 npm 安装 'mcp-js-server' 包:
    npm install mcp-js-server
  3. 创建服务器文件
    • 创建 'prompts.js' 文件来定义 Prompt 模板 (参考示例代码)。
    • 创建 'resources.js' 文件来定义资源 (参考示例代码)。
    • 创建 'tools.js' 文件来定义工具 (参考示例代码)。
    • 创建 'server.js' 文件来实例化和启动 MCP 服务器,并引入上述定义的 prompts、resources 和 tools (参考示例代码)。
  4. 运行服务器:在命令行中执行以下命令来启动 MCP 服务器:
    node server.js
    服务器将开始监听标准输入,等待 MCP 客户端的请求。

服务器配置

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与计算