MCP SERVER

Run the Council from inside Claude Desktop, Cursor & Windsurf

Council AI hosts a Model Context Protocol server at mcp.council-ai.app. Add a 10-line JSON config to your MCP-aware client and the council shows up as native tools — including council_query_with_rag, which fans your prompt across every model AND retrieves from your personal document library in one call.

Get Ultra Generate PAT

Council AI's MCP server (Ultra tier, $99.99/mo) exposes nine tools to any MCP-aware client: council_query (fan a prompt across N frontier models, return moderator-synthesized consensus + agreement score, key disagreement, and an optional devil's-advocate synthesis mode), council_review (multi-model code review of a diff — verdict-first: SHIP/NO-SHIP, findings confirmed by 2+ models, attributed single-model dissents), council_query_with_rag (same as council_query plus retrieval from your personal Council RAG library — unique to Council), library_search, library_list, library_upload, library_delete, council_models, and council_usage. The endpoint is https://mcp.council-ai.app/mcp, authenticated via per-user Personal Access Tokens you generate in Settings. Works with Claude Desktop, Cursor, Windsurf, Claude Code, ChatGPT Connectors, and any other MCP-aware client. Setup takes about 60 seconds.

What the MCP server exposes

Setup in Claude Code

One command in your terminal (--scope user makes it available in every project):

claude mcp add --transport http --scope user council-ai \
  https://mcp.council-ai.app/mcp \
  --header "Authorization: Bearer csa_YOUR_PAT_HERE"

Generate your PAT in Settings → MCP tokens.

Setup in Claude Desktop

Claude Desktop launches local MCP servers only, so the config bridges to our remote endpoint through mcp-remote. Open claude_desktop_config.json and add:

{
  "mcpServers": {
    "council-ai": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-remote",
        "https://mcp.council-ai.app/mcp",
        "--header",
        "Authorization:${COUNCIL_AUTH}"
      ],
      "env": {
        "COUNCIL_AUTH": "Bearer csa_YOUR_PAT_HERE"
      }
    }
  }
}

The Authorization:${COUNCIL_AUTH} form (no space, env-interpolated) is deliberate — it also works on Windows, where spaces inside args break. Restart Claude Desktop; the council tools appear in the tools menu.

Setup in Cursor

Add to ~/.cursor/mcp.json (or Cursor Settings → MCP):

{
  "mcpServers": {
    "council-ai": {
      "url": "https://mcp.council-ai.app/mcp",
      "headers": { "Authorization": "Bearer csa_YOUR_PAT_HERE" }
    }
  }
}

Cursor calls the council tools from its agent loop the moment they're listed.

Setup in Windsurf

Windsurf reads ~/.codeium/windsurf/mcp_config.json and names the key serverUrl (not url):

{
  "mcpServers": {
    "council-ai": {
      "serverUrl": "https://mcp.council-ai.app/mcp",
      "headers": { "Authorization": "Bearer csa_YOUR_PAT_HERE" }
    }
  }
}

Why ship a multi-LLM MCP at all

Single-model coding assistants are great until they're confidently wrong. The MCP server gives your agent loop a "phone a friend" tool — when Claude inside Cursor is uncertain about a refactor, it calls council_query and gets verification from GPT-5.5, Gemini 3 Pro, and DeepSeek V4 in one round-trip — and before you merge, council_review has models from multiple labs review the same diff and returns a SHIP/NO-SHIP verdict with confirmed findings and dissents. With council_query_with_rag, those models also see your codebase notes and architecture docs from your RAG library.

Frequently asked questions

Which clients does the MCP server work with?

Anything that speaks the Model Context Protocol over Streamable HTTP — Claude Desktop, Cursor, Windsurf, Claude Code, ChatGPT Desktop with Connectors, Zed, and any custom MCP client. The endpoint is https://mcp.council-ai.app/mcp.

Is the MCP server included in Pro?

No. The MCP server is an Ultra-tier feature ($99.99/mo) because the cost of fanning every council_query across multiple frontier models is bounded by Ultra's higher monthly budget. Pro users still get the full web app with the council; Ultra is the tier that lets you invoke it from elsewhere.

What is a Personal Access Token (PAT)?

A per-user secret you generate in Settings → MCP tokens. The MCP server authenticates each tool call against the PAT, looks up your user, and bills against your monthly Council budget. PATs can be revoked at any time and are scoped to your account only.

What makes council_query_with_rag unique?

Other multi-LLM MCPs (like the various open-source fan-out servers) can route a prompt across providers, but they don't bundle retrieval. Council's RAG library is per-user, multi-tenant, and every model in the fan-out sees the retrieved context — so you can ask 'how does our auth flow handle session refresh?' and get a synthesized answer grounded in your own code/docs.

Can I use the MCP server with my own API keys?

Not on user accounts. Council is fully managed; we hold the provider relationships. The MCP server's value is the synthesis + RAG layer, which works better when we manage rate limits and routing across providers.