mcp-http-proxy

mcp-http-proxy

site icon
2025.04.12 0
HTTP 代理SSE 代理MCP 工具管理开发效率
mcp-http-proxy 是一个基于 Model Context Protocol (MCP) 的 HTTP/SSE 代理服务器,主要用于通过标准 HTTP 和 Server-Sent Events (SSE) 协议与 MCP 服务器进行交互。它简化了与 MCP 服务器的通信,无需直接处理 stdio 通信,适用于需要通过 HTTP 访问 MCP 工具的场景。
View on GitHub

Overview

基本能力

产品定位

mcp-http-proxy 是一个 HTTP/SSE 代理服务器,用于简化与 MCP 服务器的交互,提供标准化的 HTTP 接口和实时事件推送功能。

核心功能

  1. HTTP/SSE 代理:通过 HTTP 和 SSE 协议与 MCP 服务器交互,支持 JSON-RPC 命令。
  2. MCP 进程管理:自动启动和管理 MCP 服务器进程。
  3. 实时事件推送:通过 SSE 提供异步通知和响应。
  4. Web 界面:提供简单的 Web 仪表盘,用于工具发现和调试。
  5. 多客户端支持:允许多个客户端通过 HTTP 访问同一个 MCP 服务器实例。

适用场景

  1. Web 应用集成:通过 HTTP 访问 MCP 工具,无需直接处理 stdio 通信。
  2. 实时监控:通过 SSE 接收 MCP 服务器的实时事件和日志。
  3. 调试和开发:使用 Web 界面快速测试和调试 MCP 工具。

工具列表

  1. HTTP 端点
  2. /tools:列出所有可用工具。
  3. /tool/:toolName:通过 URL 参数调用工具。
  4. /rpc/raw/command:发送原始 JSON-RPC 命令。
  5. /sse:建立 SSE 连接接收实时事件。
  6. 调试工具
  7. /debug:综合调试界面。
  8. /debug/logs:查看调试日志。
  9. /debug/sse:调试 SSE 事件流。

常见问题解答

  1. 如何发送 JSON-RPC 命令?
  2. 使用 POST /rpc/raw/command 端点发送完整的 JSON-RPC 请求。
  3. 如何接收实时事件?
  4. 通过 /sse 端点建立 SSE 连接。
  5. 如何调试工具?
  6. 使用 /debug/rpc/command 界面手动测试工具。

使用教程

使用依赖

  1. 确保已安装 Node.js。

安装教程

  1. 导航到 rpc-proxy-worker.js 所在目录。
  2. 运行以下命令启动服务器: bash node rpc-proxy-worker.js
  3. 服务器默认运行在 http://localhost:3005

调试方式

  1. 访问 http://localhost:3005/debug 查看调试界面。
  2. 使用 curlPowerShell 发送测试命令: bash curl -X POST -H "Content-Type: application/json" -d '{"jsonrpc":"2.0","method":"tools/list","id":1}' http://localhost:3005/rpc/raw/command powershell $rpcBody = @{ jsonrpc = "2.0" method = "tools/call" id = 2 params = @{ name = "your_tool_name" arguments = @{ param1 = "value1" count = 10 } } } | ConvertTo-Json -Depth 5 Invoke-RestMethod -Uri http://localhost:3005/rpc/raw/command -Method Post -ContentType 'application/json' -Body $rpcBody

许可证

该项目遵循 BSD-3-Clause 开源许可条款,请参阅 BSD-3-Clause 了解完整条款。