For developers · MCP
Call a Nexus AI Meeting from inside Claude Code, Codex and Cursor
Not a rival to your coding agent — its partner. Several AI models from different vendors independently check the answer or plan your agent came up with, and return the conclusion, where they agree, where they disagree and each model's view, with sources.
- About 2 minutes to set up
- Runs via uvx, nothing resident
- Uses your plan's AI Meeting quota
Get started in 2 minutes
- 1
Create an API key
Sign in and create a key with the deliberate scope under Settings → API keys (it starts with nxs_). The key is shown only once, right after you create it.
Open API keys - 2
Put the key in an environment variable
Add it to your shell profile (~/.zshrc etc.). None of the configs below contain the key itself, so committing .cursor/mcp.json does not leak it.
bashexport NEXUS_API_KEY=nxs_... - 3
Register it with your agent
Requires Python 3.11+ and uv. uvx fetches the server on first run.
Run it in your terminal.
bashclaude mcp add --transport stdio --env NEXUS_API_KEY=$NEXUS_API_KEY nexus -- uvx nexus-sphere-mcpIf you have lowered MCP_TOOL_TIMEOUT in Claude Code, set it to at least 300000 (milliseconds).
- 4
Ask in plain words
Your agent picks the Nexus tool and calls it. For example:
- “Run this fix past Nexus second_opinion and tell me if anyone disagrees”
- “Use Nexus deliberate: should we move the cache to Redis or keep it in Postgres?”
- “Before I push, review the current changes with Nexus review_diff (source=git)”
Four tools
Few and sharp. Each finishes in a single call.
second_opinionStart hereSeveral AI models critique your agent's own answer, plan or fix: errors, risky assumptions, better alternatives, and each model's verdict (adopt as is / adopt with conditions / do not adopt).
deliberatePut a judgement call to an AI Meeting: design choices, trade-offs, questions that need current facts. Not for generating code.
review_diffReview a diff before you push: risk level, fixes two or more models agreed on, dissent from a single model, and what the council did not see.
get_resultFetch a deliberation you could not wait for, by trace_id. Starts nothing new and uses no quota.
Shared options: context (background, code snippet), participants (preferred AIs), web_search (auto / on / off), mode (quick / balanced / deep).
What comes back
You → Claude Code
Nexus → Claude Code (tool result)
## Second opinion: adopt with conditions **Conclusion** select_related removes the N+1 on user.org, but not on the many-to-many roles. Add prefetch_related and pin the query count in a test before merging [1]. ### Where they agree - The org foreign key is fixed by select_related (Claude, GPT, Gemini) ### Where they disagree - Paging — GPT: limit the rows first / Claude: not needed at today's volume ### Each AI - **Claude** (conditional): prefetch_related for roles; pin it with assertNumQueries - **GPT** (conditional): slow once the list grows; add paging - **Gemini** (supports): the approach is sound ### Sources [1] Django: QuerySet API reference — https://docs.djangoproject.com/en/stable/ref/models/querysets/ — trace_id: mcp-… · 74.2s
This output is an example. The actual content depends on the question and the AIs your organisation can use. Clients that speak MCP 2025-06-18 also get the same result as structured JSON.
Pricing
Each deliberate, second_opinion or review_diff call counts as one AI Meeting on your plan — the same quota and spending cap as running it in the app; calling it through the API is neither cheaper nor unlimited. get_result is not counted.
So that one leaked key cannot burn through a month's quota, each API key is limited to 30 calls an hour.
See plansWhat is sent, and how long it takes
Only the strings your agent passes as tool arguments are sent. No files are read (review_diff reads this repository's diff only when you ask for source=git). Oversized input is refused, never silently cut.
A deliberation takes 1–3 minutes. The server reports progress and waits up to 240 seconds; after that it returns a trace_id. The deliberation still finishes on the server, so get_result picks it up. Asking the same question again counts twice.
You always get where the models disagreed and which AIs could not answer — not just the agreement. It never passes itself off as unanimous.
More
The same package also ships the CLI (nexus review / nexus pr / nexus backtest).
uv tool install nexus-sphere-mcpTo call it over REST without MCP: POST /api/v2/daas/deliberate (pass proposal for a second opinion).