README
🚀 MCPHub 项目文档
MCPHub 是一款实用工具,旨在简化模型上下文协议(Model Context Protocol, MCP)服务器与人工智能应用的集成过程。它借助四个核心组件,为开发者提供了便捷、高效的集成方案,极大提升了开发效率。
🚀 快速开始
在使用 MCPHub 之前,请确保已安装 Python 3.10 或更高版本以及 poetry。然后运行以下命令进行安装:
poetry install
编辑 .mcphub.json 配置文件,指定要使用的 MCP 服务器和参数。
✨ 主要特性
核心组件
MCPHub 由以下四个核心组件构成:

-
Params Hub
- 负责管理从
.mcphub.json配置文件读取的配置信息。 - 明确要使用的 MCP 服务器及其设置方式。
- 存储服务器相关参数,如命令、参数和环境变量。
- 负责管理从
-
MCP 服务器管理器
- 承担服务器的安装和启动任务。
- 支持两种类型的服务器:
- 基于 TypeScript 的服务器(通过
npx安装) - 基于 Python 的服务器(通过
uv从 GitHub 安装)
- 基于 TypeScript 的服务器(通过
- 管理服务器的生命周期和运行环境。
-
MCP 客户端
- 建立与 MCP 服务器的通信连接。
- 通过标准输入输出(stdio)进行交互。
- 处理两种主要操作:
list_tools:发现可用的服务器工具。call_tool:执行服务器工具。
-
框架适配器
- 将 MCP 工具转换为特定框架的格式。
- 支持多种人工智能框架,包括 OpenAI 代理、LangChain 和 Autogen。
工作流程
-
配置与设置
- Params Hub 读取配置文件。
- 服务器管理器启动所需的服务器。
- 服务器开始运行并可供使用。
-
通信
- MCP 客户端通过 stdio 连接到服务器。
- 工具被发现并可供使用。
- 请求和响应在客户端与服务器之间流动。
-
集成
- 框架适配器将 MCP 工具转换为特定框架的格式。
- 人工智能应用程序通过其首选框架使用这些工具。
- 工具通过已建立的通信通道执行。
这种架构提供了一种无缝的方式,将 MCP 功能集成到任何人工智能应用中,同时保持了干净的关注点分离和框架灵活性。
💻 使用示例
基础用法
从 MCP 服务器获取工具列表并执行工具:
from mcphub import MCPHub
async def basic_usage():
hub = MCPHub()
# 获取所有服务器
servers = hub.list_servers()
# 获取特定 MCP 服务器的工具
tools = await hub.list_tools(mcp_name="sequential-thinking-mcp")
# 打印工具信息
for tool in tools:
print(f"工具名称: {tool.name}")
print(f"描述: {tool.description}")
print(f"参数: {tool.parameters}")
print("---")
# 工具可以:
# - 使用 cache_tools_list=True 进行缓存以提高性能
# - 自动转换为特定框架的格式
# - 通过适配器直接与 AI 框架一起使用
asyncio.run(basic_usage())
高级用法
将 MCP 工具集成到 OpenAI、LangChain 和 Autogen 等流行框架中:
from mcphub import MCPHub, get_openai_proxy, get_langchain_proxy, get_autogen_proxy
async def advanced_usage():
hub = MCPHub()
# 获取 OpenAI 代理
openai_proxy = await get_openai_proxy(hub)
# 获取 LangChain 代理
langchain_proxy = await get_langchain_proxy(hub)
# 获取 Autogen 代理
autogen_proxy = await get_autogen_proxy(hub)
asyncio.run(advanced_usage())
📚 详细文档
贡献指南
如何贡献代码
- Fork 此仓库。
- 在您的本地副本中创建一个新的功能分支:
git checkout -b feature/your-feature - 提交您的更改:
git commit -m "添加新功能" - 推送到远程仓库:
git push origin feature/your-feature - 创建 Pull Request。
如何报告问题
在 Issues 页面创建一个新的问题,并描述您遇到的问题和复现步骤。
开发环境设置
安装依赖
使用 poetry 管理依赖:
poetry install
运行测试
运行单元测试:
poetry run pytest tests/
执行格式检查
运行代码格式检查(假设您已安装 black 和 flake8):
poetry run black .
poetry run flake8 .
📄 许可证
MCPHub 项目在 MIT License 下开源。
注意:以上内容为示例,实际项目请根据需求进行调整。
微信扫一扫