🚀 Nchan MCP Transport

🚀 Nchan MCP Transport

site icon
2025.04.07 20
TypeScript实时 API 网关高性能发布/订阅MCP 兼容传输OpenAPI 集成工具/资源系统异步执行Docker 化部署开发效率交流协作
Nchan MCP Transport 是一个高性能的 WebSocket/SSE 传输层和网关,专为 Anthropic 的 MCP(Model Context Protocol)设计。它基于 Nginx、Nchan 和 FastAPI,旨在为 Claude 和其他 LLM 代理构建实时、可扩展的 AI 集成。
View on GitHub

Overview

✨ 产品定位

Nchan MCP Transport 提供了一个实时 API 网关,使 MCP 客户端(如 Claude)能够通过 WebSocket 或 Server-Sent Events (SSE) 与您的工具和服务进行通信。

🧩 核心功能

  • 双协议支持:无缝支持 WebSocket 和 SSE,并自动检测。
  • 高性能发布/订阅:基于 Nginx + Nchan,可处理数千个并发连接。
  • MCP 兼容传输:完全实现 Model Context Protocol(JSON-RPC 2.0)。
  • OpenAPI 集成:从任何 OpenAPI 规范自动生成 MCP 工具。
  • 工具/资源系统:使用 Python 装饰器注册工具和资源。
  • 异步执行:后台任务队列 + 通过推送通知实时更新进度。
  • Docker 化部署:使用 Docker Compose 轻松启动。

🧠 适用场景

  • 通过 WebSocket/SSE 的 Claude 插件服务器。
  • 实时 LLM 代理后端(LangChain/AutoGen 风格)。
  • 通过 OpenAPI 将 Claude 连接到内部 API。
  • 高性能工具/服务桥接 MCP。

🛠 工具列表

  • HTTMCP SDK:完整的 MCP 协议实现。
  • FastAPI:后端逻辑和 JSON-RPC 路由。
  • Nginx + Nchan:持久连接管理和发布/订阅。

🔒 常见问题解答

  • 依赖要求:Nginx 与 Nchan 模块(Docker 镜像中预装)、Python 3.9+、Docker/Docker Compose。
  • 性能问题:Nchan MCP Transport 提供了 Web 规模的性能,适合高并发场景。

🚀 使用教程

📦 安装依赖

pip install httmcp

🧪 运行演示

git clone https://github.com/yourusername/nchan-mcp-transport.git
cd nchan-mcp-transport
docker-compose up -d

🛠 定义工具

@server.tool()
async def search_docs(query: str) -> str:
    return f"Searching for {query}..."

🧬 暴露 OpenAPI 服务(可选)

openapi_server = await OpenAPIMCP.from_openapi("https://example.com/openapi.json", publish_server="http://nchan:80")
app.include_router(openapi_server.router)

🖥️ 一键部署 GPTs Actions 到 MCP 服务器

pip install httmcp[cli]
python -m httmcp -f gpt_actions_openapi.json -p http://nchan:80

🔍 调试方式

  • 检查 Docker 容器日志: bash docker-compose logs
  • 测试 WebSocket/SSE 连接:使用工具如 websocatcurl 测试连接。

许可证

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