MCP Wait Server 使用说明

项目简介

MCP Wait Server 是一个实现了 Model Context Protocol (MCP) 的服务器,专注于提供等待功能。它通过简单的 'wait' 工具,允许LLM客户端指示服务器暂停执行一段时间,并在等待过程中报告进度。这在需要同步外部任务或在LLM工作流中引入延迟的场景中非常有用。

主要功能点

  • 提供 'wait' 工具: 允许LLM客户端指示服务器等待指定的秒数 (0-300秒)。
  • 进度报告: 在等待期间,服务器会定期报告等待进度,让客户端了解等待状态。
  • 多种传输协议支持: 支持 Stdio 和 SSE (Server-Sent Events) 传输协议,方便集成到不同类型的LLM客户端和应用环境中。
  • 易于部署和使用: 可以通过简单的命令行启动,并提供了详细的使用示例和配置说明。

安装步骤

  1. 安装 Node.js 和 npm: 确保你的环境中已安装 Node.js 和 npm (Node Package Manager)。
  2. 克隆仓库(如果需要)或直接安装 npm 包: 如果你需要修改代码或从本地运行,请克隆 GitHub 仓库 https://github.com/automation-ai-labs/mcp-wait。 或者,你可以直接使用 npm 安装:
    npm install @automation-ai-labs/mcp-wait
  3. 安装依赖 (如果克隆仓库): 如果你克隆了仓库,请在仓库根目录下运行以下命令安装依赖:
    npm install

服务器配置

要将 MCP Wait Server 集成到 MCP 客户端(例如 Claude Desktop, Cursor, Chatwise),你需要配置客户端以连接到该服务器。以下是典型的配置信息(JSON 格式),你需要将其添加到你的 MCP 客户端的服务器配置中。请注意,这里提供的是配置信息示例,不需要用户手动编写代码。

配置示例 (以 Claude Desktop/Cursor/Chatwise 为例):

{
  "mcpServers": {
    "mcp-wait": {
      "command": "npx",
      "args": [
        "-y",
        "@automation-ai-labs/mcp-wait"
      ],
      "env": {
        "TRANSPORT_TYPE": "stdio"
      }
    }
  }
}

配置参数说明:

  • '"mcp-wait"': 服务器名称,你可以自定义,用于在客户端中标识该服务器。
  • '"command": "npx"': 启动服务器的命令。 'npx' 允许你运行本地或全局安装的 npm 包的可执行文件。
  • '"args": ["-y", "@automation-ai-labs/mcp-wait"]': 传递给 'npx' 命令的参数。
    • '"-y"': 'npx' 的参数,用于自动确认安装包(如果尚未安装)。
    • '"@automation-ai-labs/mcp-wait"': 指定要运行的 npm 包名称,即 MCP Wait Server 包。
  • '"env": { "TRANSPORT_TYPE": "stdio" }': 设置环境变量。
    • '"TRANSPORT_TYPE": "stdio"': 指定 MCP 服务器使用 'stdio' (标准输入/输出) 作为传输协议,适用于大多数客户端。

SSE 传输配置 (如果需要):

如果你希望使用 SSE 传输协议(例如,在 Web 应用中集成),你需要修改 'TRANSPORT_TYPE' 和添加 'PORT' 环境变量:

{
  "mcpServers": {
    "mcp-wait-sse": {
      "command": "npx",
      "args": [
        "-y",
        "@automation-ai-labs/mcp-wait"
      ],
      "env": {
        "TRANSPORT_TYPE": "sse",
        "PORT": "8080"
      }
    }
  }
}
  • '"TRANSPORT_TYPE": "sse"': 指定使用 SSE 传输协议。
  • '"PORT": "8080"': 指定 SSE 服务器监听的端口号 (默认为 8080)。 你可以根据需要修改端口。 确保服务器启动时环境变量 'TRANSPORT_TYPE=sse PORT=8080' 被设置,或者在客户端配置中通过 'env' 传递。

基本使用方法

配置完成后,你的 MCP 客户端应该能够发现并使用 MCP Wait Server 提供的 'wait' 工具。

调用 'wait' 工具示例 (JSON-RPC 请求):

以下是一个调用 'wait' 工具的 JSON-RPC 请求示例,客户端需要发送这样的请求给 MCP Wait Server。 具体的发送方式取决于你使用的 MCP 客户端。

{
  "jsonrpc": "2.0",
  "method": "tool/execute",
  "params": {
    "tool_name": "wait",
    "arguments": {
      "seconds": 5
    }
  },
  "id": "1"
}

请求参数说明:

  • '"method": "tool/execute"': 指定要执行工具。
  • '"params": { "tool_name": "wait", ... }': 工具执行的参数。
    • '"tool_name": "wait"': 指定要执行的工具名称为 'wait'。
    • '"arguments": { "seconds": 5 }': 传递给 'wait' 工具的参数。 '"seconds": 5' 表示请求服务器等待 5 秒钟。

服务器会返回 JSON-RPC 响应,并在等待期间通过 SSE 或 Stdio 发送进度通知(如果客户端支持接收通知)。 等待完成后,工具执行结果也会包含在响应中。

测试服务器 (可选):

你也可以在本地测试 MCP Wait Server。

  • 使用 FastMCP CLI: 在仓库根目录或全局安装 '@automation-ai-labs/mcp-wait' 后,运行 'npm run dev' 或 'npx @automation-ai-labs/mcp-wait dev' 可以启动服务器并使用 FastMCP CLI 进行交互。
  • 使用 MCP Inspector: 运行 'npm run inspect' 或 'npx @automation-ai-labs/mcp-wait inspect' 可以启动服务器并使用 MCP Inspector Web UI 进行检查和测试。
  • 启动 SSE 服务器: 设置环境变量 'TRANSPORT_TYPE=sse PORT=8080' 并运行 'npm start' 或 'npx @automation-ai-labs/mcp-wait' 可以启动 SSE 服务器,然后在客户端配置中连接到 'http://localhost:8080/sse' (或你配置的端口和端点)。

信息

分类

AI与计算