Multi Model Mcp — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited Multi Model Mcp (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
An MCP server that exposes tools for sub-agent style reasoning across multiple LLM providers. From Claude Code (or any MCP client), you can delegate prompts to OpenAI, Anthropic, Gemini, Groq, Ollama, OpenRouter, and any LiteLLM-supported provider — then run critique loops, debates, red-teaming, and answer ranking without leaving your conversation.
| Tool | Description |
|---|---|
ask_model | Send a prompt to one configured model |
ask_many | Send the same prompt to multiple models in parallel |
reason_together | Multi-step reasoning: independent → critique, debate, or red-team |
critique_answer | Ask models to critique a draft answer |
pick_best_answer | Have a judge model rank candidate answers |
list_models | List all configured model aliases |
reason_together strategiesRequires Python ≥ 3.11 and uv.
git clone https://github.com/YOUR_USERNAME/multi-model-mcp
cd multi-model-mcp
uv syncCopy and edit models.yaml — it ships with common models pre-configured. Each entry is a model alias pointing to a LiteLLM model string:
models:
gpt:
litellm_model: gpt-4.1
api_key_env: OPENAI_API_KEY
claude:
litellm_model: claude-sonnet-4-5
api_key_env: ANTHROPIC_API_KEY
local:
litellm_model: ollama/qwen3:latest
api_base: http://localhost:11434 # no key neededAdd any provider LiteLLM supports: Groq (groq/llama-3.3-70b-versatile), Mistral, Together AI, DeepSeek, OpenRouter (openrouter/...), etc.
cp .env.example .env
# edit .env with your keysOnly keys for providers you actually use are required.
Add to your project's .mcp.json (or ~/.claude.json for global):
{
"mcpServers": {
"multi-model": {
"command": "uv",
"args": [
"run",
"--project", "/path/to/multi-model-mcp",
"multi-model-mcp"
],
"env": {
"OPENAI_API_KEY": "sk-...",
"ANTHROPIC_API_KEY": "sk-ant-...",
"GEMINI_API_KEY": "...",
"MODELS_CONFIG_PATH": "/path/to/multi-model-mcp/models.yaml"
}
}
}
}Or if you install it:
uv tool install .Then use "command": "multi-model-mcp" without args.
# Simple query
Use ask_model with alias "gpt" to explain backpressure in streaming systems.
# Parallel comparison
Use ask_many with aliases ["gpt", "claude", "gemini"] to explain the CAP theorem.
Compare their answers.
# Multi-model reasoning
Use reason_together with task "Should we use event sourcing for this service?"
model_aliases ["gpt", "gemini"], critic_model_alias "claude", strategy "independent_then_critique"
# Debate
Use reason_together with task "Is GraphQL worth the complexity over REST?"
model_aliases ["gpt", "claude"], critic_model_alias "gemini", strategy "debate", rounds 2
# Red-team a decision
Use reason_together with task "Our plan is to use a single Postgres instance for all tenants"
model_aliases ["gpt", "gemini", "groq"], strategy "red_team", rounds 2
# Critique a draft
Use critique_answer with question "What is eventual consistency?"
draft_answer "It means data will eventually be the same across nodes."
model_aliases ["claude", "gpt"]
# Pick the best
Use pick_best_answer with question "What is the best way to handle auth tokens?"
candidate_answers ["Store in localStorage", "Store in httpOnly cookies", "Store in memory only"]
judge_model_alias "claude"models.yaml fields| Field | Required | Description |
|---|---|---|
litellm_model | Yes | LiteLLM model string (e.g. gpt-4.1, gemini/gemini-2.5-pro, ollama/qwen3:latest) |
description | No | Human-readable label |
api_key_env | No | Env var name holding the API key |
api_base | No | Override base URL (needed for Ollama, proxies) |
timeout | No | Per-call timeout in seconds (default: 60) |
max_retries | No | Retry attempts on rate limit / timeout (default: 2) |
| Provider | Example model string |
|---|---|
| OpenAI | gpt-4.1, gpt-4o, o4-mini |
| Anthropic | claude-sonnet-4-5, claude-opus-4-8 |
| Google Gemini | gemini/gemini-2.5-pro, gemini/gemini-2.5-flash |
| Groq | groq/llama-3.3-70b-versatile |
| Ollama | ollama/qwen3:latest, ollama/llama3.3 |
| OpenRouter | openrouter/anthropic/claude-sonnet-4-5 |
| Mistral | mistral/mistral-large-latest |
| DeepSeek | deepseek/deepseek-chat |
| Together AI | together_ai/meta-llama/Llama-3-70b-chat-hf |
See LiteLLM providers docs for the full list.
ask_many / reason_together does not crash the call.reason_together presents the critic's output as a synthesized answer, not ground truth.models.yaml with no code changes.~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.