MCP Quickstart
Two minutes to call your council from any MCP client — Codex, Claude Code, Cursor, your own scripts.
1. Get a token
Create a new API token. Copy the plaintext — it shows once.
2. Add the server
Two transports. Hosted is the default; the local stdio server is for when you want code mode to touch your filesystem.
Hosted (default)
Endpoint: https://api.zcouncil.com/mcp. Auth: Authorization: Bearer YOUR_TOKEN.
Codex (~/.codex/config.toml):
Claude Code:
Cursor (~/.cursor/mcp.json):
VS Code (.vscode/mcp.json):
Anything else (stdio fallback):
Local stdio (zcouncil mcp)
Same tool surface, but exec runs in your shell instead of the cloud sandbox — code can read your repo, run binaries, and import your modules. Council members still hit the hosted endpoints. See code mode for the trust trade-off.
Codex:
Claude Code:
Set ZCOUNCIL_TOKEN=... in the environment or pass --token so the local server can call the hosted API.
3. Use it
Your MCP client sees four tools:
The local stdio server (zcouncil mcp) renames run_script → exec and runs it in your shell instead of the cloud sandbox. Same input shape, different trust tier.
Inside script code (run_script or exec):
council.run(input)— ask the full councilcouncil.ask(memberId, input)— ask one membercouncil.members()/council.profiles()— discoveryui.status(text)— progress notes streamed to the clientorchestrator.checkpoint({ input, schema? })— mid-script reasoning helper (hosted only)Promise.all([...])— parallelize member calls
Verify
You should see run, ask, members, run_script.
Next: the tool reference, the CLI, code mode, or the bridge if you want models to route through your local ChatGPT and Claude Code subscriptions.
[mcp_servers.zcouncil]command = "npx"args = ["-y", "mcp-remote", "https://api.zcouncil.com/mcp", "--header", "Authorization: Bearer YOUR_TOKEN"]claude mcp add zcouncil --transport http https://api.zcouncil.com/mcp --header "Authorization: Bearer YOUR_TOKEN"{ "mcpServers": { "zcouncil": { "url": "https://api.zcouncil.com/mcp", "headers": { "Authorization": "Bearer YOUR_TOKEN" } } }}{ "servers": { "zcouncil": { "url": "https://api.zcouncil.com/mcp", "headers": { "Authorization": "Bearer YOUR_TOKEN" } } }}npx -y mcp-remote https://api.zcouncil.com/mcp --header "Authorization: Bearer YOUR_TOKEN"codex mcp add zcouncil-local --transport stdio "npx -y @zcouncil/cli mcp"claude mcp add zcouncil-local --transport stdio "npx -y @zcouncil/cli mcp"curl https://api.zcouncil.com/mcp \ -H "Authorization: Bearer YOUR_TOKEN" \ -H "Content-Type: application/json" \ -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'