CI/CD自动化平台

MCP CI/CD自动化平台是一个AI驱动的模拟服务器生成和测试工具,能够自动从任何MCP服务器实现生成安全、无副作用的测试环境。

  • by clouvelai
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 clouvelai/explore-mcp

使用说明

MCP 持续集成/持续交付(CI/CD)自动化平台

针对MCP服务器的AI驱动模拟服务器生成与测试

利用Claude AI,自动从任何MCP服务器实现中生成安全无副作用的测试环境。

快速入门

# Setup
uv sync && cp ENV_TEMPLATE .env
# Add your OPENAI_API_KEY to .env

# Add and test a server
./mcp publish mcp_servers/calculator/server.py
./mcp test calculator

# Check registry status
./mcp status

核心工作流程

Real MCP Server → AI Discovery → Mock Server + Evaluations → CI/CD Testing

主要特点

🤖 机器人 AI驱动的生成

  • 零设置指向任何MCP服务器,立即获取评估套件
  • 智能模拟器克劳德生成逼真的回复,无副作用
  • 综合测试自动生成用于验证、边界情况测试和错误处理的测试用例

🛠️(扳手或工具的符号,可具体翻译为“扳手”或根据上下文翻译为“工具”等) npm/docker 风格的注册表

# Server Management
./mcp add calculator mcp_servers/calculator/server.py --category Utilities
./mcp list
./mcp inspect calculator
./mcp remove old-server

# Operations  
./mcp discover --all
./mcp generate --all
./mcp test --all

# CI/CD Workflows
./mcp sync                    # Discover + regenerate if changed
./mcp status                  # Registry health overview

🌐 表示“互联网”或“世界万维网”。 多交通方式支持

  • 本地服务器stdio 传输(或:标准I/O传输)
  • 远程服务器HTTP/SSE 自动检测
  • npm 包全局安装并进行二进制检测
  • 公共APIMicrosoft Learn,自定义端点

在 https://github.com/modelcontextprotocol/servers 上查找更多服务器

示例

本地服务器

./mcp publish mcp_servers/calculator/server.py
./mcp test calculator

远程服务器

./mcp add microsoft-docs https://learn.microsoft.com/api/mcp --category Documentation
./mcp sync && ./mcp test microsoft-docs

npm 包服务器

./mcp add fs @modelcontextprotocol/server-filesystem --source npm --category Storage
./mcp sync && ./mcp test fs

批处理操作

./mcp add gmail mcp_servers/gmail/server.py --category Communication
./mcp add google-drive mcp_servers/google_drive/server.py --category Storage
./mcp sync && ./mcp test --all

聊天界面

与GPT-4集成的交互式测试:

# Terminal 1: Backend
uv run python main.py

# Terminal 2: Frontend
cd chat-frontend && npm install && npm start
# Opens http://localhost:3000

尝试: “25加17等于多少?” - 观看GPT-4自动使用您的MCP工具!

建筑学

┌─────────────────┐    Discovery    ┌──────────────────┐    Generation    ┌─────────────────┐
│   Real MCP      │ ─────────────►  │  AI Generator    │ ─────────────►  │  Generated      │
│   Server        │                 │                  │                 │  Outputs        │
│ ┌─────────────┐ │                 │ ┌──────────────┐ │                 │ ┌─────────────┐ │
│ │• tool_alpha │ │                 │ │ Discovers    │ │                 │ │ Mock Server │ │
│ │• tool_beta  │ │◄────────────────│ │ Tools &      │ │────────────────►│ │ - Same APIs │ │
│ │• tool_gamma │ │                 │ │ Schemas      │ │                 │ │ - No Effects│ │
│ └─────────────┘ │                 │ └──────────────┘ │                 │ │ - Realistic │ │
└─────────────────┘                 │                  │                 │ │   Responses │ │
                                    │ ┌──────────────┐ │                 │ └─────────────┘ │
                                    │ │ Generates    │ │                 │                 │
                                    │ │ Test Cases   │ │────────────────►│ ┌─────────────┐ │
                                    │ └──────────────┘ │                 │ │ Eval Suite  │ │
                                    └──────────────────┘                 │ │ - Valid     │ │
                                                                         │ │ - Invalid   │ │
                                                                         │ │ - Edge      │ │
                                                                         │ └─────────────┘ │
                                                                         └─────────────────┘

平台组件

  • MCP 注册表 CLI (./mcp): npm/docker风格的服务器管理
  • 人工智能生成 (ai_generation/): 由Claude驱动的模拟与测试生成
  • 后端API (backend/): Flask应用,连接GPT-4与MCP服务器
  • 聊天界面 (chat-frontend/): 用于交互式测试的React前端
  • 示例服务器 (mcp_servers/): 计算器、Gmail、Google Drive 的实现

环境设置

# Dependencies
uv sync
cd chat-frontend && npm install

# Environment
cp ENV_TEMPLATE .env
# Add OPENAI_API_KEY and Google OAuth credentials

注册状态

检查您当前的注册表:

./mcp status

示例输出:

📊 MCP Registry Status
==================================================
Total servers: 5
Discovered: 3/5
Generated: 3/5

📂 By Category:
  Communication: 1
  Documentation: 1  
  Storage: 1
  Utilities: 2

发展

添加新工具

# mcp_servers/{server}/tools.py
@mcp.tool()
def your_tool(param: str) -> str:
    """Tool description."""
    return "result"

测试更改

./mcp discover calculator  # Rediscover after changes
./mcp generate calculator  # Regenerate mocks
./mcp test calculator      # Run evaluations

主要优势

  • 安全测试无副作用或外部依赖的模拟服务器
  • **领域无关(或领域独立)**与任何MCP服务器兼容,无论其用途如何
  • **准备好实施CI/CD(持续集成/持续交付)**带有健康监控和批量操作的注册表管理
  • 由人工智能驱动克劳德生成智能测试题和逼真的回答
  • 开发者友好开发者已经熟悉的npm/docker风格命令

开始吧: ./mcp publish mcp_servers/calculator/server.py && ./mcp test calculator