Command Palette

Search for a command to run...

UnylyUnyly
Browse all

Claude Model Router

FreeNot checked

Routes each task to the cheapest Claude model that still clears the quality bar — a Claude Code skill + MCP server that optimizes total cost to an acceptable an

GitHubEmbed

About

Routes each task to the cheapest Claude model that still clears the quality bar — a Claude Code skill + MCP server that optimizes total cost to an acceptable answer, not sticker price.

README

Route every task to the cheapest Claude model that still gets it right — and cut cost by ~60% vs always using the top model.

Model Router — cost by strategy: hybrid routing reaches 100% accuracy at ~61% lower cost than always-top, on a 20-task held-out set.

The catch it solves: the cheapest model is not the cheapest answer. Underpower a hard task and it fails, you retry on a bigger model, and you've paid twice. This router picks the right tier the first time — and escalates automatically if it's wrong.

  • ✅ 100% routing accuracy on a held-out test set
  • ✅ ~60% cheaper than always-top
  • ✅ Pure Python, stdlib-only — nothing to pip install

Requirements

  • Python 3.9+
  • (optional) the claude CLI — lets the installer auto-register the MCP server

Install

git clone https://github.com/manishk753/claude-model-router.git
cd claude-model-router
./install.sh

Installs the Claude Code skill, registers the MCP server (if claude is on your PATH), and runs a smoke test. Re-running is safe. Restart Claude Code afterward so the tools load.

Want just one piece?

Command Installs
./install.sh Skill + MCP server (all projects)
./install.sh --skill Skill only
./install.sh --mcp-user MCP server only (all projects)
./install.sh --mcp MCP server only (this project)
./install.sh --help Show help

Use it

Run the examples below from the repo directory.

1. Command line

python3 -m router "Debug this race condition in our async job queue"

Returns JSON: model, tier, complexity, confidence, rationale, escalate_to.

Force the top tier for high-stakes work:

python3 -m router "Delete inactive users in production" --context '{"critical": true}'

2. Claude Code (skill)

Type /model-router <task>. Claude routes, then uses the returned tier's model — cheap → haiku, mid → sonnet, high → opus, top → fable.

3. MCP server

Exposes one tool: route_task(task, critical?, context_tokens?). The installer registers it for you. To do it by hand from the repo directory:

claude mcp add --scope user model-router -- python3 "$(pwd)/router/mcp_server.py"

Claude Desktop — add to claude_desktop_config.json (use the absolute path to router/mcp_server.py):

{"mcpServers": {"model-router": {
  "command": "python3",
  "args": ["/absolute/path/to/claude-model-router/router/mcp_server.py"]
}}}

4. Python API

pip install anthropic   # only this path needs it
from router.dispatcher import dispatch
response, decision, attempts = dispatch("Debug this race condition: ...")

dispatch() routes, calls the chosen model, and auto-escalates one tier on failure.

Try the eval

python3 eval/run_eval.py     # scores every strategy, prints a table
python3 eval/run_test.py     # held-out set + writes eval/test_report.html

Configure

All model IDs, prices, tier cutoffs, and weights live in config.json — no code changes needed.

⚠️ Model IDs and prices change over time. Verify them against the live API.

Tune: run python3 eval/run_eval.py, read the misroute list, then adjust tier_cutoffs first, weights second, keyword banks last.

How it works

Free deterministic heuristics handle clear cases. A tiny Haiku classifier breaks ties only on ambiguous tasks. A capped escalation path catches the rest. Full decision contract and rules: SKILL.md.

from github.com/manishk753/claude-model-router

Installing Claude Model Router

This server has no published package — it is built from source. Open the repository and follow its README.

▸ github.com/manishk753/claude-model-router

FAQ

Is Claude Model Router MCP free?

Yes, Claude Model Router MCP is free — one-click install via Unyly at no cost.

Does Claude Model Router need an API key?

No, Claude Model Router runs without API keys or environment variables.

Is Claude Model Router hosted or self-hosted?

Self-hosted: the server runs locally on your machine via the install command above.

How do I install Claude Model Router in Claude Desktop, Claude Code or Cursor?

Open Claude Model Router on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.

Related MCPs

Compare Claude Model Router with

Not sure what to pick?

Find your stack in 60 seconds

Author?

Embed badge for your README

Browse similar

All development MCPs