get_all_pricing
Get current pricing for all LLM models from all providers
countrycurrency
io.github.skakumanu由 GitHub 账号 skakumanu 发布v1.79.1更新于 Oct 29, 2026
Real-time, drift-verified LLM pricing across 31 providers with cost+quality model routing.
LLM 价格目录 MCP 服务器:比较模型与 IDE 费用、按成本与质量路由任务,并记录真实花费。
Web executable,通过 Streamable HTTP。 远程服务在工作区中配置后即可从网页运行时运行。
把这段提示词粘贴到 Claude Code、Codex、Cursor 等智能体,或 SourceWeft 对话中。智能体会读取该服务器的安装指南,先向你展示发布者、端点和登录方式,经你同意后再把它添加到你的客户端。密钥不会写进任何命令。
阅读 https://sourceweft.com/mcp/io.github.skakumanu%2Fllm-pricing-mcp-server/install.md,并按其中说明把这个 MCP 服务器接入我的客户端。修改任何配置之前,先告诉我它的发布者、端点和登录方式,等我确认。不要把 API 密钥写进命令或我会提交的文件;问我密钥应从哪里获取。把它添加到你客户端的 mcpServers 配置中。
{
"mcpServers": {
"llm-pricing": {
"type": "http",
"url": "https://llm-pricing-api.fly.dev/mcp"
}
}
}[CI/CD Pipeline] [License: MIT]
LLM pricing you can verify, route on, and act on: 32 MCP tools, a REST API and browser UIs over pricing data from 30 LLM providers.
Live at: https://llm-pricing-api.fly.dev · API reference: /api-docs · Swagger: /docs
alert_token.currency / country on pricing and estimates (13 currencies)./faq), published legal pages and security statement (/terms, /privacy, /refunds, /dpa, /subprocessors, /security)./chat, support_chat MCP tool) that knows the FAQ, the plan catalogue and your own account, and escalates anything it cannot do to the owner with a reference.Claude Desktop (remote, no install): open Settings → Connectors → Add custom connector and paste:
url entry in claude_desktop_config.json; that file only launches local commands.npx bridge (STDIO, no clone, no Python): add to claude_desktop_config.json:
LLM_PRICING_API_KEY is optional; it is forwarded as x-api-key. Options are in npm/llm-pricing-mcp/README.md.Run locally (Python 3.11):
All 32 tools are listed over POST /mcp and STDIO. MCP protocol version 2024-11-05.
Pass client (e.g. Claude Code, cursor, github copilot, cline) to recommend_model, optimize_workload, compare_costs or POST /router/recommend and the answer is restricted to models that tool can run before ranking; on the hosted MCP server it is inferred from the handshake when omitted, and an explicit value always wins. Recognised clients and the override order are in docs/MCP_QUICK_START.md.
The chat agent binds 27 of the 32 MCP tools (all except ask_agent, support_chat, get_telemetry, get_cache_stats and dispatch).
dispatch policy to POST /v1/chat/completions. The best eligible model runs for real and you get a dispatch_receipt with the chosen model, reason, actual cost and savings.balanced, cheapest, best_quality, lowest_latency, pinned. Failover never drops below your min_quality_score.stream: true (OpenAI-format SSE; the receipt arrives in the final chunk).tools, n > 1 and image parts are rejected up front, with the feature named.dispatch MCP tool. Executable providers are listed at GET /dispatch/providers.POST /dispatch/keys. After that, callers need only their service key.X-Provider-Key-<Provider> header still overrides the stored key.alert_tokenalert_token. It is stored only as a hash and nobody can recover it.POST /pricing/alerts/self/view or /self/delete with the token in the JSON body, or the manage_price_alert tool.invalid_webhook_url.WEBHOOK_ALLOW_PRIVATE_TARGETS is for local development only; never set it in production.POST /cost-estimate (one model) and POST /cost-estimate/batch (1–50 models). No key needed; requests are rate-limited.predict_cost and scripts/audit_repo.py estimate the cost of a workload or a codebase's LLM call sites.GET /data-quality gives one trust score, confirmed_pct, plus counts of drift-withheld, never-priced and stale models.price_source_kind (provider or registry). check_price_drift gives per-model detail.POST /usage records actual spend. GET /usage/summary and GET /usage/session/{session_id} analyze it.POST /usage/alerts) fire a webhook at a threshold; hard_stop: true also blocks dispatch for your org.support_chat MCP tool answer plan, billing, key, rate-limit and how-to questions only from the published FAQ (docs/FAQ.md), the plan catalogue (GET /billing/config) and, with your service key, your own account. No invented prices, policies or response times.POST /support/escalations/status returns the owner's reply.POST /billing/key/rotate rotates a key with the current one; GET /billing/account/export downloads everything held about your organisation and POST /billing/account/delete (body {"confirm": "DELETE", "org_id": ...}) irreversibly erases it, ends any Stripe subscription and opens a refund review when you delete inside the 14-day window (v1.87.0); service keys are stored only as a SHA-256 hash; the Stripe webhook handles failed renewals (14-day grace, then the free limit), refunds and disputes, and ignores duplicate deliveries.docs/legal/*.md (scripts/sync_legal.py), linked from the site footer, /billing and /faq, and show a draft notice until the owner turns on LEGAL_PAGES_LIVE and every placeholder is replaced. Paid checkout stays disabled until then; the Stripe customer portal is unaffected. Refunds: full within 14 days of the first payment, pro-rated after, every request reviewed by the owner via the support assistant. /security states what the service does and does not have (no SOC 2, ISO 27001 or third-party penetration test). The pre-launch list is docs/LAUNCH_CHECKLIST.md./orchestrator/* plus an Orchestrator block on /admin: approval queue, parked runs, run log (CSV), global pause, per-workflow mode, budgets. Nothing merges, moves money or sends anything without a recorded approval./release-feature command; the PR it opens completes the run and posts one status comment on the issue.compliance-audit.yml) and on-demand mechanical audit of the whole system: legal placeholders and the legal-live gate, Litestream coverage of every database, production secret presence (names only), version consistency, data-quality regression against the previous report, the weekly price audit, orchestrator budget, service-key hashing, Stripe reconciliation when STRIPE_AUDIT_KEY is set, and the launch checklist's "done" items. It is report-only (changes nothing audited), makes no legal-compliance claim, and opens an owner approval only when a check fails.POST /audit/run, GET /audit/reports, GET /audit/reports/{id} (latest alias) and a Compliance audit panel on /admin. Reports hold counts, file and setting names and opaque prefixes, never emails, keys or Stripe ids.release_notes_brief, pricing_comparison_deck, pricing_one_pager, internal_status_report). Every figure comes from a product data call made during the generation and is recorded in a provenance manifest; every number in the text is cross-checked against it (untraceable numbers are removed and counted); each price carries its price_as_of and a status label, and models without a usable price show "price not available" and stay out of rankings and charts.GET /documents/types, POST /documents/generate, GET /documents/artifacts, GET /documents/artifacts/{id} and .../download?format=html|md|pptx|docx (self-contained printable HTML, Markdown, a PowerPoint deck with native tables, native charts and speaker notes, or a Word document with native tables and numbered notes; a deck also saves as a Word handout, a one-pager has no .pptx and answers 415), plus a Documents panel on /admin. One bounded drafting call per document (claude-haiku-5-5 by default, claude-sonnet-5-5 on request) with a labelled data-only fallback; each document waits for the owner's publish approval. Nothing is sent anywhere, no MCP tool exposes it, and customer-visible behaviour is unchanged.x-api-key: <your-key> (MCP also accepts Authorization: Bearer <your-key>).Set via environment variables or .env. An unknown key in .env stops startup with an error naming it.
Full list: src/config/settings.py. Production settings: docs/DEPLOYMENT.md.
feature/* → develop → master. See docs/CONTRIBUTING.md.master when all CI gates pass: docs/DEPLOYMENT.md.来源:README.md,提交 86ffba4
Get current pricing for all LLM models from all providers
countrycurrencyEstimate the cost of using a specific LLM model
countrycurrencymodel_name必填input_tokens必填output_tokens必填Compare costs for multiple LLM models
countrycurrencymodel_names必填input_tokens必填output_tokens必填Get performance metrics (throughput, latency, context window) for models
providerinclude_costGet recommended use cases and strengths for LLM models
countrycurrencyproviderGet MCP server telemetry and usage statistics including tool usage, response times, and error rates
limitinclude_detailsQuery historical pricing snapshots recorded over time. Use this to look up past prices for a model or provider, or to see how prices have changed over a given number of days.
dayslimitprovidermodel_nameFind models whose prices changed the most over a given period. Returns models sorted by absolute percentage price change with a direction label ('increased', 'decreased', or 'unchanged'). Use this to answer questions like 'which models got cheaper this month?' or 'which providers raised prices recently?'
dayslimitRegister a webhook URL to receive notifications when a model's price changes by more than a specified percentage. Optionally scope the alert to a specific provider or model. Returns the alert ID.
url必填providermodel_namethreshold_pctList all registered price-change webhook alerts with their IDs and settings.
无需输入参数。
Delete a registered price-change alert by its ID.
alert_id必填Generate a download URL for the pricing history export. Returns a URL the user can open in their browser to download snapshot history as CSV (for spreadsheets) or JSON (for code). Use this when the user asks to export, download, or save pricing data.
dayslimitformatprovidermodel_nameList stored chat conversation sessions with their IDs, last-updated timestamp, turn count, and a preview of the most recent user message. Use this when the user asks to see their past conversations or chat history.
limitDelete a specific chat conversation by its ID. Use when the user asks to delete, clear, or remove a past conversation. Use list_conversations first to find the conversation ID.
conversation_id必填Get subscription pricing for AI coding IDE tools: GitHub Copilot, Cursor, Windsurf, Claude.ai, JetBrains AI, Amazon Q Developer, and Tabnine. Returns monthly subscription cost, inline completion support, context window, and per-tool strengths. Use this when the user asks to compare IDE AI tools, subscription-based coding assistants, or wants to know which IDE AI fits their budget.
providerinline_onlymax_monthlyPredict the real cost of an LLM call from your actual prompt text — no need to know token counts in advance. Counts tokens locally, infers the task type (or accepts one explicitly), estimates output length from empirical I/O profiles, and returns all models ranked cheapest-first with effective cost after prompt-cache savings. Also surfaces the best quality-per-dollar pick. Use this before making any LLM API call to avoid surprise bills.
top_nprompt必填task_typerequire_visioncache_hit_ratiomin_context_tokensrequire_function_callingOptimise a multi-task LLM workload by assigning the cheapest qualifying model to each task instead of running everything through one model. Takes a list of workloads (task type + monthly volume + optional quality floor and capability requirements) and returns a per-task model allocation, the total monthly cost, and the saving versus the best single-model deployment. If a monthly budget is given, leftover headroom is spent on the most cost-efficient quality upgrades. Use when the user asks how to cut LLM spend across several task types, or whether tiered model routing is worth it.
workloads必填min_quality_scoremonthly_budget_usdRecommend the optimal LLM model from a free-text description of your use case — no need to already know the routing engine's task_type vocabulary. Classifies the description into a task type, then runs it through the same routing engine behind /router/recommend (live pricing + benchmark quality, hard filters for cost/quality/context window, scored by quality-per-dollar). Returns the best match plus up to 3 alternatives. Read-only — use predict_cost first if you also want per-model cost estimates for an actual prompt, and optimize_workload if you have several distinct task types to route at once.
countrycurrencytask_typedescription必填ide_contextavg_input_tokensavg_output_tokensmin_quality_scoremin_context_windowmonthly_budget_usdprefer_low_latencypreferred_provider另有 3 个Audit this server's own pricing data against an external reference registry. Prices here are hand-maintained and go stale silently; a price that disagrees with the registry by more than the threshold is automatically withheld from serving the moment it's detected, not just when this tool runs. This reports what's currently withheld and why. The price value itself is never overwritten by the registry. Use when the user asks whether the pricing data is accurate or up to date, or wants to audit a specific provider's rates.
limitproviderthreshold_pctReport an aggregate accuracy summary for the pricing catalogue: what percentage of models have a confirmed, fresh price, how many are currently withheld due to price drift, how many are newly discovered and not yet priced, and how many confirmed prices are over 90 days old. A single trust signal, distinct from check_price_drift which lists individual disputes. Use when the user asks how accurate or trustworthy the pricing data is, overall.
无需输入参数。
Report process-lifetime hit/miss counts, total lookups, and hit rate for the ~5-minute recommendation cache, separately for the recommend_model tool and POST /router/recommend (never combined). Server-operations introspection for confirming the cache is reducing recomputation in production, not a pricing question. Counts reset on process restart; reading them never changes them.
无需输入参数。
Record actual token usage for a completed LLM call. Cost is computed server-side from current pricing, never trusted from the caller — this is the 'actual spend' counterpart to estimate_cost's hypothetical numbers. Usage is attributed to your org. Resubmitting the same request_id for the same org is a no-op. Use when the user wants to log or track real LLM spend, not just estimate it. Requires your service API key on the MCP connection (x-api-key or Authorization: Bearer); org_id defaults to, and must match, that key's org.
org_idmodel_name必填request_idsession_idoccurred_atinput_tokens必填output_tokens必填Get a summary of actual recorded LLM spend: total cost, request count, and breakdowns by model and provider, from usage events previously logged via record_usage. Use when the user asks what they've actually spent, as opposed to a hypothetical cost estimate. Requires your service API key on the MCP connection (x-api-key or Authorization: Bearer); org_id defaults to, and must match, that key's org.
daysorg_idAnalyze one specific session's actual recorded LLM usage (tagged via record_usage's session_id) on demand: total input/output tokens, total actual cost, and a per-model breakdown if more than one model was used. Also runs the session's own observed token pattern through the same routing engine behind recommend_model / POST /router/recommend to produce a grounded recommendation — or confirm the current choice is already optimal — with the estimated dollar savings or increase versus this session's actual cost. Returns has_data: false with no recommendation if the session_id has no recorded usage. Advisory only — never switches or reroutes anything. Requires your service API key on the MCP connection (x-api-key or Authorization: Bearer); org_id defaults to, and must match, that key's org.
org_idsession_id必填Bulk-import a completed session's usage in a single call — the retroactive counterpart to record_usage, for when a session wasn't instrumented live. Use when a calling agent (e.g. VS Code Copilot Chat) already has a session's turn-by-turn history in its own local store and wants this server to report on it exactly as if it had been tracked live. Accepts a list of entries under one shared session_id; each entry resolves its input and output tokens independently, either from exact counts when known or by estimating from raw turn text using this server's existing token counter. Cost is always computed server-side from current pricing, never trusted from the caller. A malformed entry (no usable tokens/text on one side, or an unresolvable model_name) is reported as its own per-entry failure and does not fail the rest of the batch. Idempotent like record_usage — resubmitting the same entries (same request_id, or the same session_id/model/occurred_at/token-or-text when request_id is omitted) is a no-op. Recorded usage is then readable via analyze_session_usage and GET /usage/session/{session_id}. Requires your service API key on the MCP connection (x-api-key or Authorization: Bearer); org_id defaults to, and must match, that key's org.
org_identries必填session_id必填Register a webhook URL to receive notifications when actual recorded spend (from record_usage) crosses a USD threshold within a rolling window. The alert monitors your org's spend. Fires at most once per period_days while spend stays over threshold. Returns the alert ID. Requires your service API key on the MCP connection (x-api-key or Authorization: Bearer); org_id defaults to, and must match, that key's org.
url必填org_idperiod_daysthreshold_usd必填List your org's registered budget-spend webhook alerts with their IDs and settings. Requires your service API key on the MCP connection (x-api-key or Authorization: Bearer); only alerts for that key's org are returned.
无需输入参数。
Delete one of your org's registered budget-spend alerts by its ID. Requires your service API key on the MCP connection (x-api-key or Authorization: Bearer); another org's alert ID reads as not found.
alert_id必填Ask the LLM Pricing AI agent a question in natural language. Use for complex queries about pricing, model recommendations, cost optimisation advice, or anything that benefits from multi-step reasoning.
message必填autonomousconversation_id已满足适用检查项的 100%
该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。
https://llm-pricing-api.fly.dev/mcp{ "mcpServers": { "llm-pricing": { "command": "npx", "args": ["-y", "llm-pricing-mcp"], "env": { "LLM_PRICING_API_KEY": "<your-service-key>" } } }}pip install -r requirements.txtuvicorn src.main:app --reload --port 8000 # REST + POST /mcp; STDIO server: python mcp/server.pypytest tests/ -q