list_models
Search, filter, sort, and page the live model catalog
Ask a second model — or several at once — without leaving the conversation you are already in.
LABSCO SUMMARY
compare_models is the reason to install it: one prompt, several models, answers laid out together, instead of several tabs and a lot of copying. Everything runs on your own OpenRouter key, so the bill lands where you expect it to.
A TypeScript server over OpenRouter, which fronts 400+ models behind one API. Thirteen tools and one usage resource, and every paid call bills to your own OpenRouter key.
Node.js 24 LTS, pnpm 12.0.0 and OPENROUTER_API_KEY. Clone the repository, run pnpm install and pnpm run check (which also builds it), then point your client at node dist/server.js. OPENROUTER_MANAGEMENT_KEY is optional and only needed for credits, account activity and analytics. The server speaks only MCP 2026-07-28 and does not accept the older initialize handshake.
Build from source — git clone https://github.com/th3nolo/openrouter-mcp.git
USE CASES
Send the same question to a model from another family and read both replies back in one place, rather than switching tools to do it.
List what is available with pricing and context length attached, then read one model's full specification before committing to it.
Fan the same prompt out to several model ids at once with a shared max_tokens, and compare how each one handles it.
Listed in project docs. Your client may show a different list.
list_modelsSearch, filter, sort, and page the live model catalog
get_modelRead one exact model, variant, or alias
list_model_endpointsCompare the providers serving one model
list_providersFilter providers by name, headquarters, or datacenter
list_model_rankingsRead one completed UTC day of model rankings
list_app_rankingsRead popular or trending public apps
get_creditsRead purchased, used, and remaining credits
list_activityRead endpoint-level daily account activity
get_analytics_schemaDiscover current analytics metrics, dimensions, operators, and granularities
query_analyticsQuery bounded Activity Explore aggregates over an explicit time range
chat_with_modelGenerate one response and return its generation ID
compare_modelsGenerate with two to eight models, three calls at a time
get_generationRead provider, tokens, latency, and cost for one generation ID
BEFORE YOU INSTALL
13 tools named in the project's documentation. openrouter://usage is the one resource, and it reads usage and limits for your API key. get_credits, list_activity, get_analytics_schema and query_analytics need an OpenRouter management key.
OPENROUTER_MANAGEMENT_KEY in your environment
INSTALLATION
You clone this one yourself.
git clone https://github.com/th3nolo/openrouter-mcp.git
cd openrouter-mcp
pnpm install
pnpm run check
cp .env.example .envEdit .env and set your API key:
OPENROUTER_API_KEY=<YOUR_OPENROUTER_API_KEY>Register the server with your client (the claude mcp add line, or the mcpServers block)
claude mcp add --transport stdio --scope user \
--env OPENROUTER_API_KEY=<YOUR_OPENROUTER_API_KEY> \
openrouter -- node <YOUR_PATH_TO_OPENROUTER_MCP>/dist/server.js{
"mcpServers": {
"openrouter": {
"command": "node",
"args": [
"<YOUR_PATH_TO_OPENROUTER_MCP>/dist/server.js",
"--transport",
"stdio"
],
"env": {
"OPENROUTER_API_KEY": "<YOUR_OPENROUTER_API_KEY>",
"OPENROUTER_BASE_URL": "https://openrouter.ai/api/v1",
"OPENROUTER_APP_NAME": "OpenRouter MCP Server"
}
}
}
}