AI Dev Swarm MCP Bridge
使用说明(Markdown 格式)
- 项目简介
- 该仓库实现了一个 MCP 服务器端,它通过 FastMCP 库提供 MCP 协议的服务端能力,允许客户端通过 JSON-RPC 调用来读取资源、调用外部工具、获取和渲染提示模板等。它还能作为一个桥接器,将配置的外部 MCP 服务器汇聚到一个统一端点,供 LLM 客户端高效地进行上下文管理和功能调用。
- 主要功能点
- MCP 协议核心支持:实现初始化、请求、工具调用等 MCP 通信流程,支持多种传输方式(STDIO、HTTP、SSE、WebSocket 等)。
- 资源与工具管理桥接:通过配置的 MCP 服务器清单,动态连接并对外暴露这些服务器的工具列表和执行入口,实现跨服务器的工具调用。
- 动态技能生成与管理:根据连接的 MCP 服务器结果,自动生成对应的“技能/工具”,并通过模板渲染描述,方便对外使用。
- 多传输协议支持:可通过 STDIO、HTTP(S) 及 SSE 等传输实现对外通信,提升兼容性与灵活性。
- 安全与会话控制:内置会话/状态管理,支持服务器关闭、异常处理等机制,确保稳定性与可观测性。
- 安装步骤
- 环境要求:需要 Python 3.x 环境(推荐 3.8+)。
- 依赖安装(一次性完成):
- 安装 FastMCP、Pydantic、PyYAML、python-dotenv 等依赖库。
- 运行步骤(示例,需替换为你的实际路径和设置):
- 将仓库克隆到本地或服务器。
- 安装依赖(例如:pip install fastmcp pydantic PyYAML python-dotenv)。
- 准备 MCP 设置文件(JSON),见下方“服务器配置”示例。
- 运行主服务器脚本,并传入你的 MCP 设置路径,例如: python3 dev-swarm-mcp.py --mcp-settings "/absolute/path/to/mcp_settings.json"
- 运行后,服务器将对外暴露 MCP 服务接口,客户端可以通过 JSON-RPC 调用与之交互。
- 服务器配置(MCP 客户端需要的启动信息) 以下 JSON 示例展示了如何配置外部 MCP 服务器,使其通过该 MCP 服务器进行桥接与调用。配置的核心字段包括服务器名称、启动命令及参数等。请将示例中的路径与实际环境相匹配。
{ "mcpServers": { "skills-bridge": { "command": "uvx", "args": [ "skills-bridge@latest", "/absolute/path/to/ai-dev-swarm/skills", "--verbose" ], "env": {}, "url": null, "type": null, "transport": null, "headers": {}, "disabled": false, "enabled": true } } }
说明
- 该配置用于将一个外部 MCP 服务器作为桥接对象接入。你需要把 command/args 指向实际的 MCP 服务启动命令及参数,例如 uvx 搭配技能目录的方式,如 README 中的示例所示。
- 具体字段含义请参考仓库中的实现:command 与 args 指定要执行的外部 MCP 服务器及其参数;transport/URL/headers 可以按需配置(若你的服务器通过 HTTP(S)/SSE 暴露 MCP,则需要对应的 url 与传输设置)。
- 本配置是可选的,核心是确保你的 MCP 客户端(LLM、技能代理等)能够通过该服务器暴露的接口来读取工具、调用工具和请求资源。
- 基本使用方法
- 启动与连接
- 启动 MCP 服务器后,客户端(包含 LLM 集成的代理或技能)通过 JSON-RPC 调用该服务器提供的工具与服务。
- 常用操作
- 初始化与查看可用工具:客户端向服务器发送 initialize 请求与 tools/list 请求,获取可用工具及能力声明。
- 调用工具:通过请求 tools/call,传入 tool 名称与参数,获取执行结果。
- 读取资源/调用资源相关 API:通过 server 提供的资源相关接口进行数据读取。
- 运行与监控
- 服务器会输出运行日志,遇到错误时会返回相应的错误信息,确保可观测性与易于排错。
- 如需在多服务器场景中热替换技能,可修改 MCP 设置并重新同步工具集。
- 使用注意
- 确保外部 MCP 服务器的可用性与网络连通性,配置中的 URL/Transport 等字段请与现实环境保持一致。
- 如果使用 STDIO 传输,请确保命令及参数正确无误,且外部服务器能以 JSON-RPC 2.0 形式对接。
- 本实现包含对多服务器的聚合能力,使用前请评估并配置需要暴露的服务器集合。
- 参考与帮助
- 仓库内的示例配置与说明可帮助你理解如何把外部技能/服务接入到统一 MCP 服务端。
- 如需了解具体字段的含义,请查看代码中的 ServerConfig、resolve_transport 与 Bridge 等逻辑。
-
关键词 LLM上下文管理, 工具桥接, 跨服务器调用, JSON-RPC, 协议适配
-
分类ID 1