多MCP代理项目
一个模块化、可扩展的代理系统,使用MCP(模型上下文协议)将多个工具服务器(数学、文本实用程序、代码执行等)连接到FastAPI后端和简单的web前端。该代理利用Azure OpenAI进行自然语言理解,并可以通过本地和远程的其他MCP服务器进行扩展。
______________________________________________________________________
特性
- FastAPI 后端 用于处理用户查询和为前端提供服务
- 朗链代理 由Azure OpenAI提供支持
- MCP协议 用于工具服务器集成
- 本地MCP服务器 用于数学、文本实用程序和代码执行
- 支持外部MCP服务器 通过
.vscode/mcp.json(见下文注释) - 简单的HTML前端 用于用户交互
______________________________________________________________________
项目结构
Multi MCP/
│
├── main.py # FastAPI backend
├── client.py # Agent logic and MCP client config
├── math_server.py # Math operations MCP server
├── text_utilities_server.py # Text summarization, translation, keyword extraction MCP server
├── code_execution_server.py # Code execution MCP server
├── frontend.html # Web UI
├── requirements.txt # Python dependencies
├── .env # Environment variables (not committed)
└── .vscode/
└── mcp.json # External MCP server configs (see below)______________________________________________________________________
安装说明
1.克隆存储库
git clone
cd Multi MCP2.安装Python依赖项
pip install -r requirements.txt3.配置环境变量
创建一个 .env 使用Azure OpenAI凭据在项目根目录中创建文件:
AZURE_OPENAI_API_KEY=your-azure-openai-key
AZURE_OPENAI_ENDPOINT=your-azure-endpoint
AZURE_OPENAI_VERSION=2023-05-154.(可选)配置外部MCP服务器
编辑 .vscode/mcp.json 添加或修改外部MCP服务器。 注: 动态跑步者喜欢 uvx/uvenv 已弃用且不受支持。对于外部服务器,使用直接HTTP端点或在本地运行服务器并使用指向它 command 和 args.
______________________________________________________________________
运行应用程序
启动FastAPI服务器:
python main.py这将:
- 启动后端
http://127.0.0.1:8000/ - 启动所有配置的MCP服务器(数学、文本实用程序、代码执行和任何
.vscode/mcp.json使用有效的本地运行程序)
打开 frontend.html 在浏览器中使用web界面。
______________________________________________________________________
可用的MCP服务器和工具
数学服务器(math_server.py)
- 加法、减法、乘法、除法、平方
文本实用程序服务器(text_utilities_server.py)
- 自动文摘
- 翻译(占位符)
- 关键词提取
代码执行服务器(code_execution_server.py)
- 运行Python代码
- 模拟JavaScript执行(占位符)
- 运行shell命令
外部服务器(通过 .vscode/mcp.json)
- 您可以通过指定外部MCP服务器的HTTP端点或本地脚本来添加它们。不支持动态远程跑步器。
______________________________________________________________________
扩展系统
- 通过创建Python脚本并使用FastMCP装饰器模式注册工具来添加新的本地MCP服务器。
- 通过编辑添加外部服务器
.vscode/mcp.json(仅限HTTP端点或本地脚本)。 - 更新
client.py和main.py如果添加新的本地服务器。
______________________________________________________________________
安全说明
- 代码执行服务器可以运行任意Python和shell代码。 请谨慎使用,切勿暴露给不受信任的用户。
- 保持你的
.env文件安全,永远不要将其提交给版本控制。
______________________________________________________________________
鸣谢
______________________________________________________________________
许可证
MIT许可证
