npm @comparedge/llm-cost-mcpstdioMITupdated 1mo ago
Someone asks what the AI feature will cost at scale, and the honest answer around most teams is a shrug. Rates moved twice since anyone last checked, and the model itself will happily quote prices from its training data. This MCP server keeps current per-million-token rates for 69 models where your assistant can reach them, and does the arithmetic itself.
What can you do with ComparEdge LLM Cost?
Someone asks what the AI feature will cost at scale, and the honest answer around most teams is a shrug. Rates moved twice since anyone last checked, and the model itself will happily quote prices from its training data. This MCP server keeps current per-million-token rates for 69 models where your assistant can reach them, and does the arithmetic itself.
Watch it work
$ You: price Claude Opus 4.8 on a 25k-token prompt with a 1k answer, run 5,000 times
llm-cost › estimate_cost
Cost estimate: Claude Opus 4.8 (Anthropic)
Rates: input $5/1M, output $25/1M, cached input $0.5/1M
Per call (25,000 in + 1,000 out tokens):
input: $0.1250
output: $0.0250
per call total: $0.1500
Across 5,000 calls: $750.00
Ways to pay less for the same 5,000 calls:
with cached input: $187.50
via batch API: $375.00
Nothing here is rounded or guessed. The rate is verified, date-stamped, and the server multiplied.
$ You: compare that call on Opus 4.8, Sonnet 5, GPT-5.6 Terra and Gemini 3.1 Pro
llm-cost › compare_models_cost
25,000 in + 1,000 out, cheapest first:
1. Claude Sonnet 5 $0.0600 /call $300.00 /5k
2. Gemini 3.1 Pro $0.0620 /call $310.00 /5k
3. GPT-5.6 Terra $0.0775 /call $387.50 /5k
4. Claude Opus 4.8 $0.1500 /call $750.00 /5k
Ranking uses each model's live feed entry, not remembered prices.
The gap it closes
| An assistant on its own | An assistant with llm-cost |
|---|---|
| quotes output rates from training data, often a generation stale | reads the current rate, dated |
| flattens the estimate to "a few cents" | $0.1500 per call, $750.00 across 5,000 |
| never mentions batch or caching discounts | $375.00 batch, $187.50 cached, only where the model really offers them |
| confidently wrong, no way to tell | every figure traces to a feed entry with a verification date |
The same numbers answer in a browser through the LLM calculator, and the LLM category hub ranks every tracked model by rating and price.
Where the numbers travel
flowchart LR
V["provider pricing pages<br/>17 providers"] --> CE["verification<br/>date-stamped checks"]
CE --> F["model prices feed<br/>69 models, USD per 1M tokens"]
F -->|"6h cache, serve stale on failure"| MCP["llm-cost server<br/>local arithmetic"]
MCP --> A["your agent"]
The server never calls a provider API. It reads one public feed, llms-model-prices.json, and computes locally. Nothing to rate-limit, no key to leak, and a network hiccup serves the last good copy instead of an error. How each price gets checked is written up in the methodology, and the catalog behind it ships as an open dataset under CC BY 4.0.
The six tools
Four do the math. Two help you find the exact model id the math wants.
| Tool | Answers | Params |
|---|---|---|
estimate_cost |
one call, or N identical calls, in dollars | model, input_tokens, output_tokens, calls? |
compare_models_cost |
the same call priced across 2 to 6 models | models[], input_tokens, output_tokens |
monthly_budget |
daily, monthly, yearly spend for a workload | model, daily_calls, avg_input_tokens, avg_output_tokens |
cheapest_models |
lowest-cost models, optional context floor | min_context?, limit? |
list_models |
every model with rates, context and tier | provider? |
list_providers |
providers with model counts and cheapest pick | none |
- A page of English prose is roughly 500 tokens; one token is about four characters.
- Model references are forgiving:
claude-opus-4-8,Opus 4.8andanthropic/opusresolve to the same model. When the resolver is unsure, it returns candidates instead of guessing. cheapest_modelsranks by a blended rate weighting input to output 3 to 1, because real workloads read far more than they write. Confirm the winner withestimate_coston your actual split.
Prompts
| Prompt | Args | Runs |
|---|---|---|
estimate_my_workflow |
workflow, model? |
token estimates plus per-run and monthly cost for a described workflow |
pick_cheapest_model |
task |
cheapest model that still meets the requirement, top candidates priced |
forecast_ai_budget |
model, usage |
monthly and yearly bill projected from expected volume |
Wire it up
{
"mcpServers": {
"llm-cost": {
"command": "npx",
"args": ["-y", "@comparedge/llm-cost-mcp@latest"]
}
}
}
Claude Desktop keeps this file at ~/Library/Application Support/Claude/claude_desktop_config.json. Cursor: Settings, then MCP. VS Code with Copilot reads .vscode/mcp.json. Restart the client; six tools appear. No API key, no account. Per-client walkthroughs live in the setup guide.
Family
Built by ComparEdge, where software prices are checked against vendor pages before anyone quotes them. Two siblings share the data: the full catalog server and a price-change watcher, both on ComparEdge MCP.
MIT licensed. JSON-RPC 2.0 over stdio, standard Model Context Protocol.
Install
Add ComparEdge LLM Cost to your client. Pick the one you use.
claude mcp add llm-cost-mcp -- npx -y @comparedge/llm-cost-mcpcodex mcp add llm-cost-mcp -- npx -y @comparedge/llm-cost-mcpamp mcp add llm-cost-mcp -- npx -y @comparedge/llm-cost-mcp{
"mcpServers": {
"llm-cost-mcp": {
"command": "npx",
"args": [
"-y",
"@comparedge/llm-cost-mcp"
]
}
}
}Add to `claude_desktop_config.json`, then restart Claude Desktop.
{
"mcpServers": {
"llm-cost-mcp": {
"command": "npx",
"args": [
"-y",
"@comparedge/llm-cost-mcp"
]
}
}
}Add to `~/.cursor/mcp.json`, or `.cursor/mcp.json` for a single project.
code --add-mcp '{"name":"llm-cost-mcp","command":"npx","args":["-y","@comparedge/llm-cost-mcp"]}'Or add the block manually to `.vscode/mcp.json` under `servers`.
{
"mcpServers": {
"llm-cost-mcp": {
"command": "npx",
"args": [
"-y",
"@comparedge/llm-cost-mcp"
]
}
}
}Add to `~/.codeium/windsurf/mcp_config.json`.
{
"mcpServers": {
"llm-cost-mcp": {
"command": "npx",
"args": [
"-y",
"@comparedge/llm-cost-mcp"
]
}
}
}Add to `cline_mcp_settings.json` via the MCP Servers panel.
{
"mcpServers": {
"llm-cost-mcp": {
"command": "npx",
"args": [
"-y",
"@comparedge/llm-cost-mcp"
]
}
}
}Add to `~/.gemini/settings.json`.
{
"mcpServers": {
"llm-cost-mcp": {
"type": "local",
"command": "npx",
"args": [
"-y",
"@comparedge/llm-cost-mcp"
],
"tools": [
"*"
]
}
}
}Add to `~/.copilot/mcp-config.json`, or run `/mcp add` inside the CLI.
{
"context_servers": {
"llm-cost-mcp": {
"command": {
"path": "npx",
"args": [
"-y",
"@comparedge/llm-cost-mcp"
]
}
}
}
}Add to your Zed `settings.json`.
npx -y @comparedge/llm-cost-mcpRun `goose configure`, choose **Add Extension → Command-line Extension**, and paste this command.
Score
73 / 100
Good
- Documentation25/25
- Maintenance16/25
- Trust16/20
- Capability4/15
- Install experience12/15
- Documents what it does and how to connect
- Has a resolvable package or endpoint
- Exposes at least one tool, prompt or resource
- README has substantive content
- Includes a code example
- Documents its configuration
- Mentions credentials or security posture
- Last commit 52 days ago
- Has a release history
- Repository is not archived
- Licensed MIT
- Namespace verified in the official MCP registry
- Claimed by its owner
- Published under an organisation
- 0 tool(s) documented
- Provides prompt templates
- Provides resources
- 12 documented install method(s)
- Published to a package registry
- Offers a hosted endpoint — no local install
Version history
| Versions | Published |
|---|---|
| 1.0.0Latest | Jul 11, 2026 |