🤖 多代理MCP控制台
一个强大的 模型上下文协议(MCP) 编排平台,将多个AI代理(财务和人力资源)统一到一个单一的、有凝聚力的Streamlit界面中。此应用程序演示了 MCP标准 通过使中央LLM能够动态查询专用微代理。
✨ 特性
- 🤝 多代理编排:无缝连接到多个独立的MCP服务器(财务和人力资源)。
- 🧠 智能路由:用途 LangChain 和 LangGraph 智能地将用户查询路由到正确的域代理。
- ⚡ 实时交互:基于 FastMCP 用于高性能、低延迟的代理通信。
- 🎨 现代用户界面:启用时尚的暗模式 溪流 界面易于交互。
- 🐳 容器化:完全Docker化,易于部署 渲染 或任何云提供商。
- 🔒 安全:API键的基于环境变量的配置。
🛠️ 技术栈
- 前端:流光灯
- 编排:LangChain,LangGraph
- 协议:模型上下文协议(MCP),FastMCP
- LLM:OpenAI GPT-4o-mini
- 运行时:Python 3.11
- 部署:Docker,渲染
📋 先决条件
- Python 3.10-3.12
- OpenAI API密钥(在这里买一个)
- Docker(可选,用于容器化运行)
🚀 快速开始
本地安装
- 克隆仓库
git clone https://github.com/yourusername/mcp-agent-console.git
cd mcp-agent-console- 安装依赖项
pip install -r requirements.txt- 设置环境变量
创建一个 .env 根目录中的文件:
OPENAI_API_KEY=your_openai_api_key_here- 运行应用程序
我们提供了一个帮助脚本来同时启动所有代理:
# On Windows (Git Bash) or Linux/Mac
chmod +x start.sh
./start.sh*或者,在单独的终端中手动运行它们:*
- python finance_mcp_server.py - python hr_mcp_server.py - streamlit run client_agent.py
- 访问应用程序
导航至 http://localhost:8501
🐳 Docker安装
- 塑造形象
docker build -t mcp-console .- 运行容器
docker run -p 8501:8501 -e OPENAI_API_KEY=your_key_here mcp-console- 使用Docker Compose(推荐)
# Create a .env file first with your API KEY
docker-compose up --build🌐 部署到云端(渲染)
此项目配置为 渲染 “蓝图”。
- 分叉此存储库。
- 登录到 Render.com.
- 点击 新 -> 蓝图.
- 选择您的存储库。
- 渲染将自动检测
render.yaml并配置Docker服务。 - 添加您的
OPENAI_API_KEY当提示时。
📖 用法
- 输入API密钥:如果未设置
.env,在侧栏中输入您的OpenAI API密钥。 - 检查状态:侧栏显示了财务和人力资源服务器的连接状态。
- 提问:
- *“为客户123生成发票”* (融资代理路线) - *“员工E456的假期余额是多少?”* (通往人力资源代理的路线) - *“向我展示IT预算,然后获取Alice的详细信息”* (复杂的多步骤推理)
🏗️ 项目结构
mcp-agent-console/
├── client_agent.py # 🖥️ Main Streamlit Frontend & Orchestrator
├── finance_mcp_server.py # 💰 Finance Domain MCP Server
├── hr_mcp_server.py # 👩💼 HR Domain MCP Server
├── start.sh # 🚀 Startup script for multi-process execution
├── Dockerfile # 🐳 Docker configuration
├── docker-compose.yml # 🐙 Docker Compose configuration
├── render.yaml # ☁️ Render deployment config
├── requirements.txt # 📦 Python dependencies
├── DEPLOYMENT.md # 📝 Detailed deployment guide
└── README.md # 📄 This file⚙️ 配置
| 变量 | 描述 | 默认值 |
|---|---|---|
OPENAI_API_KEY | LLM运行所需 | 无 |
PORT | Streamlit端口(由渲染使用) | 8501 |
🤝 贡献
欢迎投稿!请随时提交拉取请求。
- 复刻仓库
- 创建功能分支(
git checkout -b feature/AmazingFeature) - 提交您的更改(
git commit -m 'Add some AmazingFeature') - 推到分支(
git push origin feature/AmazingFeature) - 打开拉取请求
📝 许可证
该项目根据MIT许可证获得许可。
🙏 致谢
- Anthropic&谷歌 对于MCP规范。
- LangChain 令人惊叹的编排框架。
- 溪流 用于快速UI开发。
