关于 Multi-MCP
Multi-MCP 是一个多模型 AI 编排 MCP 服务,可在 Claude Code 和 OpenCode 中使用。它并行调用 OpenAI、Anthropic、Google 等多个模型,用于代码审查、对比和辩论式共识分析,适合 Python 开发者和 DevOps 团队。
主要功能
- 01多模型并行代码审查
- 02OWASP Top 10 安全检查
- 03多模型对比分析
- 04多 Agent 辩论与共识流程
- 05CLI 与 API 模型混合使用
- 06模型别名与会话线程
适用场景
- 01使用多个模型审查模块的代码质量与可维护性
- 02对架构决策进行多模型对比
- 03对命名等主观问题发起模型辩论
MCP 相关
Multi-MCP 是一个 MCP 服务,向 Claude Code 或 OpenCode 等 MCP 客户端暴露 codereview、chat、compare 和 debate 等工具。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
uvx multi-mcpOPENAI_API_KEY密钥OpenAI API key for GPT models (optional - at least one provider required)ANTHROPIC_API_KEY密钥Anthropic API key for Claude models (optional - at least one provider required)GEMINI_API_KEY密钥Google API key for Gemini models (optional - at least one provider required)OPENROUTER_API_KEY密钥OpenRouter API key for additional models (optional)DEFAULT_MODELDefault model to use (defaults to gpt-5-mini)DEFAULT_MODEL_LISTDefault models for multi-model comparison (comma-separated, defaults to gpt-5-mini,gemini-3-flash)本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。
工具
6收录的工具列表 · 更新于 2 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| name | string | 是 | 步骤名称(例如,'Initial Analysis'、'Security Review') |
| models | array | 否 | 要并行运行的 LLM 模型列表(至少 1 个)(如果未指定,则使用默认模型(['gpt-5-mini', 'gemini-3-flash'])) |
| content | string | 是 | 提交给专家审阅者的代码审查请求。步骤 1:描述项目并定义审查目标和重点领域。步骤 2+:按质量、安全性、性能和架构整理并报告发现。包括:审查内容、重点领域(安全性/并发/逻辑)、具体问题、置信度。排除:代码片段(使用 `relevant_files`)、问题列表(使用 `issues_found`)。 |
| base_path | string | 是 | 用于识别项目和加载项目文件的项目根目录绝对路径 |
| thread_id | any | 否 | 用于继续之前的对话并保留上下文的 Thread ID。使用时机: - None/omit:开始全新的审查或聊天会话(step_number=1) - Provide thread_id:继续之前响应中的多步骤工作流(step_number>1) 每个响应都会返回 thread_id;请保存并在后续步骤中重复使用。 |
| next_action | enum | 是 | 建议的后续操作:使用 'continue' 继续,使用 'stop' 结束continue | stop |
| step_number | integer | 是 | 当前步骤 |
| issues_found | any | 否 | 必填:按严重级别、位置和详细说明列出已识别的问题。重要:此列表会在各步骤间累积。包括之前步骤中发现的所有问题以及新问题。每个字典必须包含以下键:'severity'(必填,取值之一:'critical'、'high'、'medium'、'low')、'location'(必填,格式为:'filename:line_number',如果行号未知则为 'filename')、'description'(必填,问题的详细说明)。示例:[{'severity': 'high', 'location': 'auth.py:45', 'description': 'SQL injection vulnerability in login query - user input not sanitized'}]。如果尚未发现问题,可以使用空列表。 |
| relevant_files | any | 否 | 与此问题相关的所有文件的绝对路径(最多 100 个文件)。重要:对于项目级问题(功能、架构、设计),必须包含项目文档(README.md、docs/、架构图)。对于特定代码的问题,请包含实现文件、相关模块、测试和配置。示例 1:'我们应该构建什么功能?' → 包含 README.md、src/server.py、config/*.*、tests/。示例 2:'审查此函数' → 包含包含该函数的文件、相关模块、测试和文档。 |
详细介绍
Multi-MCP:面向 Claude Code 的多模型代码审查与分析 MCP 服务
一款多模型 AI 编排 MCP 服务,用于自动代码审查和由大模型驱动的分析。Multi-MCP 集成了 Claude Code CLI 和 OpenCode,可编排多个 AI 模型(OpenAI GPT、Anthropic Claude、Google Gemini),用于代码质量检查、安全分析(OWASP Top 10)和多 Agent 共识。此工具基于 Model Context Protocol (MCP) 构建,帮助 Python 开发者和 DevOps 团队在开发工作流中直接借助 AI 提供的洞见,自动执行代码审查。
功能特性
- 🔍 代码审查 - 系统化工作流,包含 OWASP Top 10 安全检查和性能分析
- 💬 聊天 - 可感知代码仓库上下文的交互式开发辅助
- 🔄 比较 - 并行多模型分析,为架构决策提供支持
- 🎭 辩论 - 多 Agent 共识工作流(独立回答 + 评议)
- 🤖 多模型支持 - OpenAI GPT、Anthropic Claude、Google Gemini 和 OpenRouter
- 🖥️ CLI 和 API 模型 - 混合使用基于 CLI 的模型(Gemini CLI、Codex CLI)和 API 模型
- 🏷️ 模型别名 - 使用
mini、sonnet、gemini等简短名称 - 🧵 线程 - 在多步骤审查中保持上下文
工作原理
Multi-MCP 作为 MCP 服务运行,Claude Code 或 OpenCode 可连接到该服务,以使用 AI 驱动的代码分析工具:
- 安装 MCP 服务并配置 AI 模型 API 密钥
- 通过
make install自动与 Claude Code 或 OpenCode 集成 - 使用自然语言调用工具(例如:“multi codereview this file”)
- 获取多个并行编排的 AI 模型返回的结果
性能
快速多模型分析:
- ⚡ 并行执行 - 约 10 秒运行 3 个模型(顺序执行约需 30 秒)
- 🔄 异步架构 - 非阻塞 Python asyncio
- 💾 对话线程 - 在多步骤审查中保持上下文
- 📊 低延迟 - 响应时间取决于最慢的模型,而非所有模型耗时之和
快速开始
前置条件:
- Python 3.11+
- 至少一个提供商的 API 密钥(OpenAI、Anthropic、Google 或 OpenRouter)
安装
选项 1:从源代码安装
# Clone and install
git clone https://github.com/religa/multi_mcp.git
cd multi_mcp
# Execute ./scripts/install.sh
make install
# The installer will:
# 1. Install dependencies (uv sync)
# 2. Generate your .env file
# 3. Automatically add to Claude Code / OpenCode config (requires jq)
# 4. Test the installation
选项 2:手动配置
如果不想运行 make install:
# Install dependencies
uv sync
# Copy and configure .env
cp .env.example .env
# Edit .env with your API keys
将以下内容添加到 Claude Code(~/.claude.json)或 OpenCode(~/.opencode/opencode.json)中,并将 /path/to/multi_mcp 替换为实际的克隆路径:
Claude Code:
{
"mcpServers": {
"multi": {
"type": "stdio",
"command": "/path/to/multi_mcp/.venv/bin/python",
"args": ["-m", "multi_mcp.server"]
}
}
}
OpenCode:
{
"mcp": {
"multi": {
"type": "local",
"command": ["/path/to/multi_mcp/.venv/bin/python", "-m", "multi_mcp.server"],
"enabled": true
}
}
}
配置
环境配置(API 密钥和设置)
Multi-MCP 按以下顺序从 .env 文件加载设置(优先级从高到低):
- 环境变量(已在 shell 中设置)
- 项目
.env(当前目录或项目根目录) - 用户
.env(~/.multi_mcp/.env)——pip 安装时的回退选项
编辑 .env 并填写 API 密钥:
# API Keys (configure at least one)
OPENAI_API_KEY=sk-...
ANTHROPIC_API_KEY=sk-ant-...
GEMINI_API_KEY=...
OPENROUTER_API_KEY=sk-or-...
# Azure OpenAI (optional)
AZURE_API_KEY=...
AZURE_API_BASE=https://your-resource.openai.azure.com/
# AWS Bedrock (optional)
AWS_ACCESS_KEY_ID=...
AWS_SECRET_ACCESS_KEY=...
AWS_REGION_NAME=us-east-1
# Model Configuration
DEFAULT_MODEL=gpt-5-mini
DEFAULT_MODEL_LIST=gpt-5-mini,gemini-3-flash
模型配置(添加自定义模型)
模型在 YAML 配置文件中定义(用户配置优先):
- 软件包默认配置:
multi_mcp/config/config.yaml(随软件包一同提供) - 用户覆盖配置:
~/.multi_mcp/config.yaml(可选,优先级更高)
如需添加自己的模型,请创建 ~/.multi_mcp/config.yaml(示例请参阅 config.yaml 和 config.override.example.yaml):
version: "1.0"
models:
# Add a new API model
my-custom-gpt:
litellm_model: openai/gpt-4o
aliases:
- custom
notes: "My custom GPT-4o configuration"
# Add a custom CLI model
my-local-llm:
provider: cli
cli_command: ollama
cli_args:
- "run"
- "llama3.2"
cli_parser: text
aliases:
- local
notes: "Local LLaMA via Ollama"
# Override an existing model's settings
gpt-5-mini:
constraints:
temperature: 0.5 # Override default temperature
合并行为:
- 新模型会与软件包默认模型并存
- 已有模型会进行合并(你的设置会覆盖软件包默认设置)
- 可以将软件包模型的别名“转给”自定义模型
使用示例
在 MCP 客户端(Claude Code 或 OpenCode)中安装后,可使用以下命令:
💬 聊天 - 交互式开发辅助:
Can you ask Multi chat what's the answer to life, universe and everything?
🔍 代码审查 - 使用指定模型分析代码:
Can you multi codereview this module for code quality and maintainability using gemini-3 and codex?
🔄 比较 - 获取多种观点(使用默认模型):
Can you multi compare the best state management approach for this React app?
🎭 辩论 - 通过批判进行深入分析:
Can you multi debate the best project code name for this project?
启用允许列表
编辑 ~/.claude/settings.json,并将以下行添加到 permissions.allow,以允许 Claude Code 使用 Multi MCP,而不会因用户权限确认而受阻:
{
"permissions": {
"allow": [
...
"mcp__multi__chat",
"mcp__multi__codereview",
"mcp__multi__compare",
"mcp__multi__debate",
"mcp__multi__models"
],
},
"env": {
"MCP_TIMEOUT": "300000",
"MCP_TOOL_TIMEOUT": "300000"
},
}
模型别名
使用简短别名代替完整模型名称:
| 别名 | 模型 | 提供商 |
|---|---|---|
mini | gpt-5.6-luna | OpenAI |
nano | gpt-5.6-luna | OpenAI |
gpt | gpt-6-astra | OpenAI |
astra | gpt-6-astra | OpenAI |
sol | gpt-5.6-sol | OpenAI |
terra | gpt-5.6-terra | OpenAI |
luna | gpt-5.6-luna | OpenAI |
codex | gpt-5.3-codex | OpenAI |
fable | claude-fable-5-1 | Anthropic |
opus | claude-opus-5 | Anthropic |
sonnet | claude-sonnet-5 | Anthropic |
haiku | claude-haiku-4.5 | Anthropic |
gemini | gemini-3.1-pro-preview | |
gemini-3 | gemini-3.1-pro-preview | |
flash | gemini-3.8-flash | |
flash-lite | gemini-3.5-flash-lite | |
azure-mini | azure-gpt-5-mini | Azure |
bedrock-sonnet | bedrock-claude-4-5-sonnet | AWS |
运行 multi:models 查看所有可用模型和别名。
CLI 模型
Multi-MCP 可以执行 基于 CLI 的 AI 模型(例如 Gemini CLI、Codex CLI 或 Claude CLI),并与 API 模型配合使用。CLI 模型以子进程形式运行,可与所有现有工具无缝协作。
优势:
- 使用具有完整工具访问权限的模型(文件操作、Shell 命令)
- 在
compare和debate工作流中混合使用 API 和 CLI 模型 - 利用本地 CLI,避免 API 开销
内置 CLI 模型:
gemini-cli(别名:gem-cli)- Gemini CLI,采用自动编辑模式codex-cli(别名:cx-cli)- Codex CLI,采用全自动模式claude-cli(别名:cl-cli)- Claude CLI,采用 acceptEdits 模式
添加自定义 CLI 模型:
添加到 ~/.multi_mcp/config.yaml(请参阅模型配置):
version: "1.0"
models:
my-ollama:
provider: cli
cli_command: ollama
cli_args:
- "run"
- "codellama"
cli_parser: text # "json", "jsonl", or "text"
aliases:
- ollama
notes: "Local CodeLlama via Ollama"
前置条件:
CLI 模型需要安装相应的 CLI 工具:
# Gemini CLI
npm install -g @anthropic-ai/gemini-cli
# Codex CLI
npm install -g @openai/codex
# Claude CLI
npm install -g @anthropic-ai/claude-code
CLI 用法(实验性)
Multi-MCP 提供了一个独立的 CLI,可在无需 MCP 客户端的情况下进行代码审查。
⚠️ 注意: CLI 仍处于实验阶段,正在积极开发中。
# Review a directory
multi src/
# Review specific files
multi src/server.py src/config.py
# Use a different model
multi --model mini src/
# JSON output for CI/pipelines
multi --json src/ > results.json
# Verbose logging
multi -v src/
# Specify project root (for CLAUDE.md loading)
multi --base-path /path/to/project src/
为什么选择 Multi-MCP?
| 功能 | Multi-MCP | 单模型工具 |
|---|---|---|
| 并行执行模型 | ✅ | ❌ |
| 多模型共识 | ✅ | 不定 |
| 模型辩论 | ✅ | ❌ |
| 支持 CLI 和 API 模型 | ✅ | ❌ |
| OWASP 安全分析 | ✅ | 不定 |
故障排除
“未找到 API 密钥”
- 在
.env文件中至少添加一个 API 密钥 - 验证密钥是否已加载:
uv run python -c "from multi_mcp.settings import settings; print(settings.openai_api_key)"
集成测试失败
- 设置
RUN_E2E=1环境变量 - 验证 API 密钥有效且额度充足
调试模式:
export LOG_LEVEL=DEBUG # INFO is default
uv run python -m multi_mcp.server
查看 logs/server.log 中的日志,了解详细信息。
常见问题
问:我需要这三个 AI 提供商吗? 答:不需要,只需一个 API 密钥(OpenAI、Anthropic 或 Google)即可开始使用。
问:它真的会并行运行吗?
答:是的!使用 codereview、compare 或 debate 工具时,所有模型都会通过 Python 的 asyncio.gather() 并发执行。这意味着,你只需等待响应最慢的模型,就能同时收到多个模型的回复,而不必等待所有模型的响应时间之和。
问:我可以同时运行多少个模型? 答:没有硬性限制!你可以按需并行运行任意数量的模型。实际上,2-5 个模型适用于大多数用例。所有工具都会使用你配置的默认模型(通常为 2-3 个),但你可以指定任意数量的模型。
参与贡献
欢迎贡献!请参阅 CONTRIBUTING.md,了解:
- 开发环境设置
- 代码规范
- 测试指南
- 拉取请求流程
快速开始:
git clone https://github.com/YOUR_USERNAME/multi_mcp.git
cd multi_mcp
uv sync --extra dev
make check && make test
许可证
MIT 许可证 - 详情请参阅 LICENSE 文件
链接
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。