sigma-verify
Allows verifying findings using Google Gemini models via the Google AI API.
Allows verifying findings using models served by Ollama, including local models and Ollama cloud models, with availability checks for local pulls and cloud access.
Allows verifying findings using OpenAI models via the OpenAI API, including reasoning models, with provenance tags on each result.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@sigma-verifyRun cross_verify on this finding with OpenAI and Gemini: the sky is blue."
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
sigma-verify
An MCP server that lets Claude Code agents check their findings against a model other than Claude. It wraps OpenAI, Google Gemini, and models served by Ollama (local and cloud) behind a small set of tools, and tags every result with the provider and model that produced it.
It is built on hateoas-agent and is used by the sigma Claude Code plugin (sigma-review, sigma-build), but it works with any MCP client.
Tools
The server starts with one gateway tool. Calling it unlocks the rest.
Tool | What it does |
| Reports which providers are available, which aren't, and why. Call it first. |
| One model assesses a finding: agree / disagree / partial / uncertain, with reasoning, confidence, and counter-evidence. |
| Runs |
| One model plays devil's advocate against a claim: counter-argument, logical gaps, evidence needed, vulnerability. |
| Lists available providers and models. |
| Summarizes pricing and quota notes for every provider, including unavailable ones. |
Provenance tags
Every result names its source, so it's clear which model said what:
Each result carries
provenance_tag: "|source:external-<provider>-<model>|".Agents record a successful check as
XVERIFY[<provider>:<model>], for exampleXVERIFY[gpt-oss:gpt-oss:120b-cloud]: agree(high).A failed call returns an
XVERIFY-FAIL[<provider>:<model>]string in itssigmafield with an error class (auth-error,rate-limit,timeout,network-error, and others). That marks a verification gap. It does not mean the model disagreed.cross_verifyreportscoverage: "partial"whenever any provider fails, so a partial run isn't mistaken for full cross-model agreement.
Related MCP server: Zen MCP Server
Providers
Provider | Default model | Type | Requires |
|
| API |
|
|
| API |
|
|
| local | Ollama + |
|
| local | Ollama + |
|
| local | Ollama + |
|
| local | Ollama + |
|
| free cloud | Ollama + |
|
| free cloud | Ollama + |
|
| paid cloud | Ollama + |
|
| paid cloud | Ollama + |
|
| paid cloud | Ollama + |
|
| paid cloud | Ollama + |
|
| API |
|
Ollama's free and paid tiers can change. Check ollama.com for current terms.
Local models run on your machine at no API cost. Cloud models run on ollama.com through your local Ollama install. init checks that Ollama is reachable and that local models have been pulled. It can't cheaply check whether you're signed in, so if you aren't, a cloud provider will show as available and then fail its first call with an auth-error.
Any model can be overridden with <PREFIX>_MODEL. The endpoint can be overridden with <PREFIX>_BASE_URL. llama, gemma, gpt-oss, and nemotron can also be routed through OpenRouter with <PREFIX>_PROVIDER=openrouter and OPENROUTER_API_KEY. .env.example lists every variable.
Anthropic is excluded by default
The callers are Claude agents, and Claude checking Claude is not cross-model verification. So anthropic is left out of every default selection: the cross_verify default set, the provider verify_finding and challenge pick when none is named, and the providers init lists as available. It is used only when:
the caller names it (
provider="anthropic", orproviders="anthropic,..."), orSIGMA_VERIFY_ALLOW_ANTHROPIC=1is set.
Install
Requires Python 3.11+ and uv.
claude mcp add sigma-verify --scope user -- \
uvx --from git+https://github.com/coloradored13/sigma-verify sigma-verifyTo add API-key providers, pass keys with -e:
claude mcp add sigma-verify --scope user \
-e OPENAI_API_KEY=sk-... \
-e GOOGLE_AI_API_KEY=... \
-- uvx --from git+https://github.com/coloradored13/sigma-verify sigma-verifyThen, in Claude Code, ask an agent to call init, or run /mcp to confirm that the server is connected.
Ollama setup (optional)
Ollama-backed providers need no API key.
ollama serve # or start the Ollama app
ollama pull llama3.1:8b # any local model from the table
ollama signin # only for cloud modelssigma-verify doesn't start Ollama for you by default. If Ollama isn't running, its providers are reported as unavailable. To have init (and server startup) run ollama serve when Ollama is installed but not running, set SIGMA_VERIFY_AUTOSTART_OLLAMA=1, for example with -e SIGMA_VERIFY_AUTOSTART_OLLAMA=1 on claude mcp add.
With no providers
You don't need any provider configured. With none available, init reports no_providers and lists what each provider needs. sigma-review and sigma-build still run, and findings just stay untagged. An untagged finding is neutral: it hasn't been checked against another model, and nothing counts against it.
Development
uv venv .venv
uv pip install -p .venv -e '.[dev]'
.venv/bin/python -m pytest tests/ -q
.venv/bin/ruff check src testsThe test suite runs offline. A shared fixture fakes the Ollama probe and blocks outbound TCP connections.
License
This server cannot be deployed
Maintenance
Related MCP Connectors
Cross-agent artifact workspace with provenance across Claude Code, Codex, Cursor, LangGraph.
Code review by AI models from different companies, usually two. Shows where they agree and disagree.
Multi-LLM council: 25+ frontier models in parallel, consensus scoring, verdict-first code review.
One MCP endpoint for Claude, GPT & Gemini: 100+ tools + no-code connectors + agent workers.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceConnects Claude Code with multiple AI models (Gemini, Grok-3, ChatGPT, DeepSeek) simultaneously, allowing users to get diverse AI perspectives, conduct AI debates, and leverage each model's unique strengths.153MIT
- -licenseNot gradedqualityNot gradedmaintenanceGives Claude access to multiple AI models (Gemini, OpenAI, OpenRouter, Ollama) for enhanced development capabilities including extended reasoning, collaborative development, code review, and advanced debugging.-
- AlicenseAqualityAmaintenanceEnables Claude to chat with various AI models and obtain multi-model consensus for complex decisions.4735 npm2MIT
- AlicenseNot gradedqualityDmaintenanceLets Claude Code query multiple AI models (Gemini, Grok, ChatGPT, DeepSeek) for diverse perspectives, code reviews, debates, and more.MIT