Browse 160+ LLM models and live pricing — no API key needed for catalog. Add key to route chat.
Browse OrcaRouter's model catalog and run chat completions from inside any Model Context Protocol client — Claude Desktop, Claude Code, Cursor, Windsurf, Zed, or anything else that speaks the protocol.
Catalog browsing works without an API key — compare pricing and capabilities before signing up.
orcarouter/auto router (cost / quality / balanced / LinUCB / gated-adaptive strategies)Try saying things like:
minimax/minimax-m2.7"orcarouter/auto and explain quantum computing"claude mcp add orcarouter -s user \
-e ORCAROUTER_API_KEY=sk-orca-your-key \
-- npx -y @orcarouter/mcp
Copy the example config for your MCP client into the client's config file:
| Client | Example | Action |
|---|---|---|
| Claude Desktop | claude-desktop.json | Replace |
| Claude Code | claude-code.json | Merge |
| Cursor | cursor.json | Replace |
| Windsurf | windsurf.json | Replace |
See examples/README.md for the config-file paths and notes on Zed and other clients.
Replace sk-or-... in the copied file with your OrcaRouter API key.
Restart your MCP client.
The root .mcp.json is the same config in the Open Plugins standard location, so registry/discovery tools that scan for it (e.g. cursor.directory) can pick this server up automatically.
Requires Node.js 18 or later. The ORCAROUTER_API_KEY env var is only
required for orcarouter_chat; catalog tools work without it.
orcarouter_chat — run a chat completion (with optional fallback chain)orcarouter_models_list — browse the catalog (pricing, context, capabilities)orcarouter_model_card — detailed info for one modelorcarouter_providers_list — list providers with model countsFull input schemas are exposed at runtime via the MCP tools/list method — your MCP client (Claude Desktop, Cursor, etc.) reads them automatically.
| Name | Required | Description |
|---|---|---|
ORCAROUTER_API_KEY | optional | OrcaRouter API key. Required only for orcarouter_chat. |
ORCAROUTER_BASE_URL | optional | API base URL. Defaults to https://api.orcarouter.ai. |
ORCAROUTER_REQUEST_TIMEOUT | optional | Per-request HTTP timeout in seconds. Defaults to 300. |
API keys are read from environment variables, never logged, and only sent to the OrcaRouter API. See SECURITY.md for the vulnerability disclosure policy.
# bun (preferred)
bun install
bun run test
bun run typecheck
bun run build
# or with npm
npm install
npm test
npm run typecheck
npm run build
The build produces an ESM bundle at dist/index.js with a
#!/usr/bin/env node shebang, runnable as the orcarouter-mcp binary.
See CONTRIBUTING.md. For newcomer-friendly tasks, browse the good first issue label.
Source-derived launch command. Check the maintainer’s required arguments and credentials before running:
npx -y @orcarouter/mcpMerge this template into ~/Library/Application Support/Claude/claude_desktop_config.json. Keep existing servers. Add any arguments, credentials, and permissions required by the maintainer; this template has not been install-tested.
{
"mcpServers": {
"io-github-continuum-ai-corp-orcarouter-mcp": {
"command": "npx",
"args": [
"-y",
"@orcarouter/mcp"
]
}
}
}Restart Claude Desktop completely for changes to take effect. Confirm the server appears connected in the client’s tool list, then try a read-only example from its documentation.
Claude Desktop setup referenceOrcaRouter works with any MCP-compatible client. Copy the config snippet from the Configuration section above and add it to the file shown for your client, then restart the application.
~/Library/Application Support/Claude/claude_desktop_config.jsonRestart Claude Desktop completely for changes to take effect.~/.cursor/mcp.jsonRestart Cursor for changes to take effect..vscode/mcp.jsonReload VS Code window for changes to take effect.~/.codeium/windsurf/mcp_config.jsonRestart Windsurf for changes to take effect..mcp.jsonSave at the project root, then start Claude Code in that project and review the MCP server approval prompt. Keep real credentials out of shared files.