AI Rate Card
REMOTE · AIRATECARD.COM
Daily-checked AI model API prices from 120+ providers: search, compare, cheapest, cost estimates.
Available components
Last scanned (58 minutes ago)
Scores higher than 61% of remote servers
Reachable. Last reached 5 Nov 2026.
Category AI and Machine Learning
How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score → Why this is hard to score →
Endpoint Security80
- The endpoint's TLS certificate is valid, in date, and uses a strong key. View diagnostics → Pass
- No authorisation is required to call this server. Every tool declares its destructiveHint and none is destructive, so open access doesn't expose one. See how to fix → View diagnostics → Partial
- HTTPS is enforced; there's no plaintext access path. View diagnostics → Pass
- The HSTS (Strict-Transport-Security) header is present. View diagnostics → Pass
- DNSSEC check failed: this domain isn't protected by DNSSEC. See how to fix → View diagnostics → Fail
Transport & Reachability100
- Verified streamable-http transport via a live MCP handshake. View diagnostics → Pass
Schema Quality & AI Usability76
- 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
- AI-judged instruction clarity (good).Pass
- Context-footprint check failed: tool/resource definitions use about 2460 tokens (~189/item across 13 items; 13 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management3
- Stability observed for 1 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage100
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 100% of tool parameters carry a description.Pass
Tool Safety100
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- We read all 13 captured tool definition(s), and no name or description among them implies an irreversible operation.Pass
- An AI judge read all 14 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
- Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 5 Nov 26 0
- Stability: unverified → 0.03 ▲ functional
- 4 Nov 26 74
First indexed and scored.
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 5 Nov 2026 · Probed https://airatecard.com/mcp
TLS valid
Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .
| Subject | Issuer | Valid from | Valid until | Key | Signature | Serial |
|---|---|---|---|---|---|---|
| CN=airatecard.com | CN=YE2,O=Let's Encrypt,C=US | 27 Sept 2026 | 26 Dec 2026 | ECDSA 256 | ECDSA-SHA384 | 69b8ff4c295de0d3b918958af4796e9dbf1 |
| SANs: *.airatecard.com, airatecard.com | ||||||
| CN=YE2,O=Let's Encrypt,C=US (CA) | CN=Root YE,O=ISRG,C=US | 3 Sept 2025 | 2 Sept 2028 | ECDSA 384 | ECDSA-SHA384 | 4df3b15dd6c0784c507cd37b58e6f115 |
| CN=Root YE,O=ISRG,C=US (CA) | CN=ISRG Root X2,O=Internet Security Research Group,C=US | 13 May 2026 | 2 Sept 2032 | ECDSA 384 | ECDSA-SHA384 | 872165fc34b6e5fba8add5b3705fb53a |
| CN=ISRG Root X2,O=Internet Security Research Group,C=US (CA) | CN=ISRG Root X1,O=Internet Security Research Group,C=US | 13 May 2026 | 2 Sept 2032 | ECDSA 384 | SHA256-RSA | 6c8f1dc727c7117f7baf853ac980f9cd |
Background: What to check on a remote MCP endpoint →
DNSSEC insecure
Validation of airatecard.com. — Not signed
| Zone | DS | Keys | Algorithms | Outcome |
|---|---|---|---|---|
| . | trust_anchor | 20326, 38696 | 8, 8 | Verified |
| com. | present | 19718 | 13 | Verified |
| airatecard.com. | absent | Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation |
Authentication No authorisation required
The endpoint answered without asking for a token. Anyone who knows the URL can reach it.
| Result | No authorisation required |
|---|---|
| HTTP status | 200 |
| Header | Value |
|---|---|
| strict-transport-security | max-age=15552000; includeSubDomains |
| content-security-policy | default-src 'self'; script-src 'self' 'inline-speculation-rules'; style-src 'self' 'unsafe-inline'; img-src 'self' data: https:; font-src 'self'; connect-src 'self'; object-src 'none'; base-uri 'self'; form-action 'self' https: http://127.0.0.1:* http://localhost:*; frame-ancestors 'none' |
| x-content-type-options | nosniff |
| x-frame-options | DENY |
| referrer-policy | strict-origin-when-cross-origin |
| permissions-policy | camera=(), microphone=(), geolocation=(), payment=(), usb=() |
Background: How OAuth 2.1 works in the 2026 MCP spec →
Transports 2 probes
| Transport | URL | Outcome | Status | Location |
|---|---|---|---|---|
| streamable-http | https://airatecard.com/mcp | Verified | 200 | |
| http (plaintext) | http://airatecard.com/mcp | HTTPS enforced | 301 | https://airatecard.com/mcp |
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →
cheapest_for_workload ~329
The cheapest offers for a whole monthly workload, ranked by monthly cost in USD: give a preset (a typical job; see list_workload_presets) and/or your own tokens a month. Best offer of each model; free promos and batch/flex/priority/regional prices left out unless asked. Each row: monthly_cost_usd, prices, context, checked_at, card_url and a ready cite line.
| Name | Type | Req | Description |
|---|---|---|---|
| category | string | – | model type, llm by default |
| include_free | boolean | – | also free / promo offers (default false) |
| include_special | boolean | – | also batch, flex, priority, regional prices (default false) |
| input_modality | string | – | the model must accept this input, e.g. image |
| input_tokens | integer | – | input tokens a month, e.g. 10000000 |
| limit | integer | – | rows, 10 by default |
| min_context | integer | – | context window needed, tokens, e.g. 128000 |
| one_per_model | boolean | – | only the best offer of each model (default true) |
| output_tokens | integer | – | output tokens a month, e.g. 2000000 |
| preset | string | – | chatbot | coding_agent | rag | summarization | long_context | vision | embedding_index | trial - fills tokens, min_context, category; your own values win |
| query | string | – | only models or providers matching these words, e.g. claude |
| tools | boolean | – | the model must support tool/function calling |
No output schema declared.
No examples provided.
cheapest_models_by_task ~190
The n cheapest MODELS for a job (task): each model counted once at its own lowest current price (input tokens by default). One row per model with that price, where it is and card_url.
| Name | Type | Req | Description |
|---|---|---|---|
| component | string | – | input_tokens (default), output_tokens, or the task's own unit |
| n | integer | – | 10 by default |
| scope | string | – | all (default), specialized (the task's own category) or multi/universal (qualifying llm models - the two names mean the same set, WP-0086) |
| task | string | yes | what the buyer wants done: text (chat/LLM), vision, image, video, tts (speech from text), stt (text from speech), embedding, rerank, moderation - a job, not a model type (search_offers' category is t… |
No output schema declared.
No examples provided.
cheapest_offers ~92
The cheapest current offers (rows: one model at one provider) of one model type, by input price. For the cheapest MODELS of a job (one row per model) use cheapest_models_by_task; for a monthly workload use cheapest_for_workload.
| Name | Type | Req | Description |
|---|---|---|---|
| category | string | – | model type, llm (text models) by default |
| limit | integer | – | rows, 10 by default |
No output schema declared.
No examples provided.
compare_models ~115
2 to 5 models side by side: the best current offer of each and, for up to 4, every field compared (lowest and median input/output price, context, max output, providers, regions, a 1M-in/200k-out workload cost), who wins by how many percent, providers selling all, and summary sentences.
| Name | Type | Req | Description |
|---|---|---|---|
| models | array | yes | model ids (e.g. openai/gpt-4o-mini, as model_id in search_offers rows) or names to search for |
No output schema declared.
No examples provided.
estimate_cost ~139
The cost of a workload (input, output and cached input tokens, number of requests) at every current provider of one model, cheapest first, in USD - what the same job costs where.
| Name | Type | Req | Description |
|---|---|---|---|
| cached_input_tokens | integer | – | of the input, tokens read from the prompt cache |
| input_tokens | integer | – | input tokens of the whole job, e.g. 1000000 |
| model | string | yes | model id or a name to search for |
| output_tokens | integer | – | output tokens of the whole job, e.g. 200000 |
| requests | integer | – | number of calls (for per-request prices) |
No output schema declared.
No examples provided.
get_card ~151
One card with its citation. card_id is '<kind>:<key>': offer:<provider>|<model id as the provider writes it> (e.g. offer:anthropic|claude-opus-4), model:<creator>/<model> (e.g. model:anthropic/claude-opus-4), seller:<provider key> (e.g. seller:anthropic). Ids come from search_offers (offer_id, model_id, provider_id) and from the card_url of every result. Works for every seller, a hidden test seller too.
| Name | Type | Req | Description |
|---|---|---|---|
| card_id | string | yes | offer:<provider>|<model>, model:<creator>/<model> or seller:<key> |
No output schema declared.
No examples provided.
get_model_prices ~47
Every seller's current price of one model (an id, or a name to search for), cheapest input first.
| Name | Type | Req | Description |
|---|---|---|---|
| model | string | yes | model id or a name to search for |
No output schema declared.
No examples provided.
list_articles ~59
AI Rate Card's articles on AI model prices (the cheapest models by task, price moves, costs), newest first, with their links - to quote or point a reader to.
| Name | Type | Req | Description |
|---|---|---|---|
| lang | string | – | language of the articles, en by default |
No output schema declared.
No examples provided.
list_workload_presets ~38
The ready-made workloads of cheapest_for_workload: name, what job it is, tokens a month, context needed, model type.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
median_price_by_task ~189
The typical (median) current price of a job (task) across models, and the n models closest to it - what a normal price for this job is. Same arguments as cheapest_models_by_task.
| Name | Type | Req | Description |
|---|---|---|---|
| component | string | – | input_tokens (default), output_tokens, or the task's own unit |
| n | integer | – | 10 by default |
| scope | string | – | all (default), specialized (the task's own category) or multi/universal (qualifying llm models - the two names mean the same set, WP-0086) |
| task | string | yes | what the buyer wants done: text (chat/LLM), vision, image, video, tts (speech from text), stt (text from speech), embedding, rerank, moderation - a job, not a model type (search_offers' category is t… |
No output schema declared.
No examples provided.
most_expensive_models_by_task ~190
The n most expensive MODELS for a job (task): each model counted once at its own lowest current price, highest first - the top of the market. Same arguments as cheapest_models_by_task.
| Name | Type | Req | Description |
|---|---|---|---|
| component | string | – | input_tokens (default), output_tokens, or the task's own unit |
| n | integer | – | 10 by default |
| scope | string | – | all (default), specialized (the task's own category) or multi/universal (qualifying llm models - the two names mean the same set, WP-0086) |
| task | string | yes | what the buyer wants done: text (chat/LLM), vision, image, video, tts (speech from text), stt (text from speech), embedding, rerank, moderation - a job, not a model type (search_offers' category is t… |
No output schema declared.
No examples provided.
search_offers ~285
Search current AI model offers (one model at one provider = one offer) by words, model type and limits; priced offers first, doubtful prices after sane ones. Each row has offer_id, model_id, provider_id, prices in USD per 1M tokens (or per unit), card_url and a cite line. Next: get_card {"card_id": "offer:<offer_id>"} for one offer, get_model_prices for one model everywhere, estimate_cost / cheapest_for_workload for a cost.
| Name | Type | Req | Description |
|---|---|---|---|
| category | string | – | model type: llm (text models), embedding, image_generation, text_to_speech ...; none = every type |
| free_only | boolean | – | only offers that cost nothing (default false) |
| input_modality | string | – | e.g. text, image, audio |
| limit | integer | – | rows, 20 by default |
| max_input_price | number | – | USD per 1M input tokens, at most |
| min_context | integer | – | context window in tokens, at least |
| multi | boolean | – | also (or only, with no category) the multimodal offers that qualify (WP-0086) |
| query | string | – | words of the model, seller or display name |
| sort | string | – | order, price_input (cheapest input first) by default |
No output schema declared.
No examples provided.
validate_provider_files ~252
For a provider (seller) joining the catalog: check a models.yaml before putting it online - the same check as the wizard and POST /v1/provider/validate. Give the file's text in `models` (YAML, or the same structure as JSON text); `domain` (the provider's site) makes the model_page checks exact. Returns ok, the problems (file, line, model, path, value, code, message, hint - fix each and call again), the catalog's preview of the models and next_action. No account needed for this check. Publishing needs a signed-in person: the provider_* tools (provider_start -> provider_verify_domain -> provider_check_files -> provider_publish) are on the account server /mcp/account (OAuth sign-in, scope provider), not on this public server; or the wizard at /join, or POST /v1/provider/applications. Templates: /static/templates/models.min.yaml (required fields only) and models.yaml (every field with hints).
| Name | Type | Req | Description |
|---|---|---|---|
| domain | string | – | the provider's domain, e.g. example.ai |
| models | string | yes | the models.yaml text |
| name | string | – | the provider's name |
No output schema declared.
No examples provided.
How do I install the AI Rate Card MCP server?
AI Rate Card is a hosted endpoint at https://airatecard.com/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.
remote · airatecard.com
claude mcp add --transport http com-airatecard-ai-rate-card 'https://airatecard.com/mcp'
What is the AI Rate Card MCP server?
AI Rate Card is an MCP server listed in the public MCP registry as com.airatecard/ai-rate-card. Daily-checked AI model API prices from 120+ providers: search, compare, cheapest, cost estimates. This page covers its hosted endpoint (https://airatecard.com/mcp).
Is the AI Rate Card MCP server safe to use?
AI Rate Card scores 74 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.
What tools does the AI Rate Card MCP server expose?
AI Rate Card exposes 13 tools: search_offers, get_model_prices, cheapest_offers, compare_models, estimate_cost, and 8 more. Their descriptions and schemas cost roughly 2,076 tokens of context every time the server is loaded.
Does the AI Rate Card MCP server require authentication?
No. We connected to AI Rate Card without credentials and it answered, so anything it exposes is reachable by anyone who knows the address.
Is the AI Rate Card MCP server still maintained?
AI Rate Card is still listed as active in the MCP registry. We last reached this channel on 5 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.