0nMCP — 基于 MCP 的通用 AI API 编排服务器
使用说明(简要、面向开发者和运维人员)
- 项目简介
- 0nMCP 是一个完整的 MCP 服务器实现,能够托管服务连接、注册工具、定义和执行工作流与提示模板,提供面向 LLM 客户端的标准化上下文服务。核心能力包括资源管理、工具注册、Prompts/模板渲染,以及通过 JSON-RPC 与客户端通信。
- 主要功能点
- MCP 核心能力:以统一的接口向 LLM 客户端提供资源、工具和 Prompts 的访问与执行能力;支持多传输模式(本地 STDIO、HTTP REST、SSE/WebSocket 形式的传输)。
- 资源与连接管理:本地化的服务连接和凭证管理(以 .0n 标准存放在本地 ~/.0n 目录),可扩展的服务/catalog、密钥管理与审计日志。
- 工具注册与执行:通过统一注册机制暴露“Execute/Connect Service/List Services”等通用工具,以及 CRM 等大量数据驱动工具,支持直接 API 调用和复杂任务编排。
- AI 计划与工作流:可选的 Anthropic Claude AI 计划(ANTHROPIC_API_KEY),用于生成执行计划并跨服务执行任务;同时提供关键路径的降级回退(关键字匹配)模式。
- 工作流与历史审计:支持 ~/.0n/workflows/.0n 文件的执行、执行日志记录(JSONL 格式)与历史追踪。
- 安全与合规:本地执行、凭证本地存储、Webhook 验签、按服务的速率限制与重试机制、以及机器绑定的 Vault 容器等安全特性。
- 安装步骤
- 安装依赖并构建环境(仓库根目录执行 npm install 即可)。
- 直接以 CLI 启动: npx 0nmcp
- 也可作为 HTTP 服务器启动:在仓库根目录执行 node index.js(或 npm run 启动脚本相应命令),然后通过 /mcp 等端点进行交互。
- 服务器配置(供 MCP 客户端参考,非客户端代码)
- 配置用于 Claude Desktop 等客户端连接的 JSON 配置(示例,仅用于描述,不作为代码直接执行): { "mcpServers": { "0nMCP": { "command": "npx", "args": ["0nmcp"], "env": { "ANTHROPIC_API_KEY": "sk-XXXXXXXXXXXXXXXXXXXX" // 可选:开启 AI 计划功能 } // 注:ANTHROPIC_API_KEY 非必须,未提供时仍可使用关键字路由 } // 还可按需要添加多服务器条目 } } 说明:
- serverName 对应 0nMCP/0nMCP 的服务器标识,command 为启动命令,args 为启动参数,env 可以注入必要的环境变量(如Anthropic Key)。
- MCP 客户端无需代码实现即可读取该配置并连接到服务器;本仓库提供的服务器端实现将对外暴露 MCP 接口和工具。
- 基本使用方法
- 启动 MCP 服务器:在仓库目录执行 npx 0nmcp(或 node index.js,取决于运行方式)。
- 通过 HTTP/REST 使用:访问 /api/health 进行健康检查,使用 /mcp 进行 MCP JSON-RPC 请求,或通过 /webhooks/ 等路径进行回调与触发。
- 使用 Claude Desktop 等 LLM 客户端时,按上述配置在客户端加载服务器信息即可实现“对话式调用服务、执行工具、查询资源”等功能。
- 如需自定义工作流/任务,请将 .0n 标准工作流文件放置在 ~/.0n/workflows/,随后通过 MCP 提供的 run_workflow 等工具进行执行。