MCP Hub原型:构建编排和监控
受CI/CD启发的简化构建编排和监控系统 以及MCP(模型上下文协议)概念。\ 它使用户能够触发构建、管理作业队列和可视化 通过现代网络仪表板实时记录日志和状态。
该项目作为最后一年团队项目展示系统 编排、后端-前端集成和分布式服务 通信使用 Node.js、Redis和MongoDB.
______________________________________________________________________
✨ 概述
______________________________________________________________________
图标功能说明
______________________________________________________________________
🎬 作业编排 触发和管理构建 通过基于Express的执行 REST API。
🚦 可靠的排队 使用Redis+BullMQ实现健壮 作业调度和交付。
⚙️ 分布式专用Node.js代理 执行 服务执行模拟构建 任务。
📊 实时跟踪作业生命周期:排队→ 监控 跑步→ 通过完成/失败 仪表板。
📦 Docker化无缝部署所有服务 环境 使用Docker Compose。
______________________________________________________________________
🏛️ 系统架构
该架构遵循解耦的微服务方法——确保 通过共享Redis实现可扩展性和明确的关注点分离 队列和MongoDB持久性。
graph TD
A[Frontend (React)] -- POST /trigger --> B(Backend - Node.js/Express)
B -- Enqueue Job --> C[Redis Queue]
B -- Persist Metadata --> D[(MongoDB)]
C -- Consume Task --> E[Agent Service - Node.js]
E -- Run Simulated Build --> E
E -- Status Updates --> B
B -- Final Save --> D
B -- GET /jobs --> A
subgraph Core Data & Orchestration
C
D
end
subgraph Presentation & Control
A
B
end______________________________________________________________________
🛠️ 技术栈
______________________________________________________________________
层组件技术角色
______________________________________________________________________
API/控制后台Node.js(Express)API层,作业 创造, 编排
作业队列Redis+BullMQ高性能 管理任务调度
持久数据库MongoDB存储作业 元数据和日志
Worker Agent Node.js微服务执行模拟 构建任务
工作界面前端React仪表板 监控
部署基础架构Docker编写容器 编排
______________________________________________________________________
📂 文件夹结构
mcp-hub/
│
├── backend/
│ ├── src/
│ │ ├── routes/
│ │ ├── models/
│ │ ├── controllers/
│ │ └── utils/
│ ├── .env
│ └── server.js
│
├── agent/
│ ├── src/
│ │ └── agent.js
│ ├── .env
│ └── package.json
│
├── frontend/
│ ├── src/
│ └── package.json
│
├── docker-compose.yml
└── README.md______________________________________________________________________
⚙️ 安装和设置
🧩 先决条件
- Node.js v18+
- Docker&Docker编写
1.️⃣ 克隆存储库
git clone https://github.com//mcp-hub.git
cd mcp-hub2.️⃣ 配置环境变量
创建 后端/.env
PORT=5000
MONGO_URI=mongodb://mongo:27017/mcp_hub
REDIS_HOST=redis创建 agent/.env
REDIS_HOST=redis
BACKEND_URL=http://backend:5000______________________________________________________________________
3.️⃣ 使用Docker Compose启动(推荐)
docker-compose up --build -d服务URL端口
______________________________________________________________________
前端http://localhost:30003000 后端http://localhost:50005000
______________________________________________________________________
4.️⃣ 手动运行(无Docker)
后端:
cd backend && npm install
npm run dev代理人:
cd agent && npm install
npm start前端:
cd frontend && npm install
npm start______________________________________________________________________
🛑 停止并清理
docker-compose down -v______________________________________________________________________
📞 API终点
方法端点描述
______________________________________________________________________
POST/trigger触发新的构建作业 GET/jobs获取所有作业历史记录 GET/jobs/:id获取详细的作业信息
______________________________________________________________________
🗓️ 团队和路线图
团队:NodeNerds\ 项目类型:终年项目(2025年11月)
名称角色焦点
______________________________________________________________________
成员1后端主管API,Redis集成 成员2代理工程师工作执行系统 成员3前端开发人员React UI 成员4 DevOps Docker,CI/CD 成员5文件质量保证和报告
______________________________________________________________________
🧭 开发时间线
周目标可交付成果
______________________________________________________________________
1后端基础作业队列+持久性 2代理集成工作器执行 3前端仪表板实时用户界面 4最终确定Docker+错误处理
______________________________________________________________________
💡 未来方向
- Docker中的Docker提供真正的CI/CD支持\\
- 用于实时日志流的WebSockets\\
- 多代理并行扩展\\
- 普罗米修斯和格拉法纳可观测性\\
- 基于角色的访问控制(RBAC)
______________________________________________________________________
📄 许可证
MIT许可证\ 与开发❤️ 通过 团队NodeNerds,最后一年项目----11月 2025\.
