MCP代理工作室
用于MCP(模型上下文协议)服务器的现代多代理编排平台。
特性
- 服务器管理 -配置和管理MCP服务器连接
- 智能体协同 -创建和管理具有分层角色的AI代理
- 任务调度 -使用cron表达式和依赖关系安排任务
- 工具目录 -从MCP服务器浏览和安装工具
- 实时监控 -带有WebSocket更新的实时仪表板
- 聊天界面 -通过聊天UI与代理交互
技术栈
| 层 | 技术 |
|---|---|
| 前端 | React 18、Vite、TailwindCSS、Radix UI |
| 后端 | Fastify 4、Prisma ORM、PostgreSQL |
| 实时 | 套接字。IO、WebSockets |
| 身份验证 | JWT、加密、CASL |
| 构建 | Turborepo、pnpm工作区 |
快速开始
先决条件
- Node.js>=20.0.0
- pnpm>=9.0.0
- Docker(用于PostgreSQL)
安装
# Clone the repository
git clone
cd mcp-agent-studio
# Install dependencies
pnpm install
# Generate Prisma client
pnpm db:generate
# Start PostgreSQL
docker compose up -d
# Push database schema
cd server && npx prisma db push && cd ..
# Seed test data
cd server && npx dotenv -e .env -- npx tsx prisma/seed.ts && cd ..
# Start development server
pnpm dev访问应用程序
- 仪表盘: http://localhost:5173
- API: http://localhost:3000
- 测试证书:
test@example.com/password123
可用脚本
| 脚本 | 描述 |
|---|---|
pnpm dev | 以开发模式启动所有服务 |
pnpm dev:server | 仅启动后端 |
pnpm dev:dashboard | 仅启动前端 |
pnpm dev:mcp | 启动示例MCP服务器 |
pnpm build | 构建所有包 |
pnpm typecheck | 运行TypeScript类型检查 |
pnpm lint | 运行ESLint |
pnpm db:generate | 生成Prisma客户端 |
pnpm db:push | 将架构推送到数据库 |
pnpm mcp:test | 运行MCP协议测试 |
测试
E2E测试(剧作家)
# Run E2E tests (requires dev server running)
cd apps/dashboard
pnpm exec playwright test
# Run with UI
pnpm exec playwright test --uiMCP集成测试
# Start sample MCP server
pnpm dev:mcp
# In another terminal, run tests
pnpm mcp:test项目结构
mcp-agent-studio/
├── apps/
│ └── dashboard/ # React frontend
├── server/ # Fastify backend
│ ├── src/
│ │ ├── routes/ # API routes
│ │ ├── services/ # Business logic
│ │ └── websocket/ # Socket.IO handlers
│ └── prisma/ # Database schema
├── packages/
│ └── types/ # Shared TypeScript types
├── tools/
│ └── sample-mcp-server/ # Test MCP server
└── docs/
├── architecture/ # Architecture docs
└── plans/ # Implementation plansMCP服务器集成
使用示例服务器
# Start sample server on port 3001
pnpm dev:mcp
# Add to MCP Agent Studio:
# URL: http://localhost:3001
# Token: sample-token-12345示例服务器工具
| 工具 | 说明 |
|---|---|
echo | 回复一条消息 |
calculate | 基本算术 |
get_time | 当前服务器时间 |
execute_prompt | 模拟快速执行 |
list_files | 列出目录文件 |
read_file | 读取文件内容 |
API终点
认证
POST /api/auth/login-登录POST /api/auth/register-注册POST /api/auth/refresh-刷新令牌POST /api/auth/logout-注销
服务器
GET /api/servers-列出服务器POST /api/servers-创建服务器POST /api/servers/:id/test-测试连接
代理
GET /api/agents-列出代理POST /api/agents-创建代理POST /api/agents/from-prompt-从NL提示符创建
任务
GET /api/tasks-列出任务POST /api/tasks-创建任务GET /api/tasks/:id/dependencies-获取依赖关系
聊天
POST /api/chat/send-发送消息GET /api/chat/sessions-列出会话
环境变量
创建 .env 在服务器目录中:
DATABASE_URL="postgresql://postgres:postgres@localhost:5432/mcp_studio"
JWT_SECRET="your-secret-key"
JWT_EXPIRES_IN="15m"
REFRESH_TOKEN_EXPIRES_IN="7d"
PORT=3000部署
生产部署
使用自动化CI/CD部署到生产环境:
# Quick start (60 minutes total)
# See DEPLOYMENT-QUICKSTART.md for detailed steps
# 1. Provision Hetzner server (10 min)
# 2. Configure secrets (5 min)
# 3. Configure DNS (2 min)
# 4. Deploy (auto on push to master)
# For full guide:
cat DEPLOYMENT-QUICKSTART.md文档:
生产URL:
- 仪表板:https://mcp-studio.ilinqsoft.com
- APIhttps://api.mcp-studio.ilinqsoft.com
文档
许可证
麻省理工学院
