modelright
Server Details
Live registry of AI model specs, context windows, and per-token pricing.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
TDQS
Scored across 6 tools
Tools target distinct operations: search, list, get, compare, provider listing, and ingest status. list_models and search_models both return model lists and could be momentarily confused, but descriptions clarify search is substring-based and list is filter-based.
All tools use consistent snake_case verb_noun naming (compare_models, get_model, list_models, list_providers, search_models, get_ingest_status). No mixed conventions or vague names.
Six tools is well-scoped for a read-only model registry and comparison service. Each tool covers a distinct capability without redundancy or filler.
The surface covers discovery (list/search), detail (get), comparison, provider overview, and data freshness. Minor gap: no dedicated historical price/availability trend tool, though get_model includes recent snapshots.
Available Tools
6 toolscompare_modelsCompare modelsAInspect
Side-by-side comparison of 2-10 models by provider/slug: context window, input/output price per 1M tokens, modalities, status.
| Name | Required | Description | Default |
|---|---|---|---|
| models | Yes | Models to compare |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses the returned fields (context window, price, modalities, status), which is useful behavioral context, but does not state that the operation is read-only, whether it requires auth, or what happens with invalid provider/slug combinations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with zero waste. The core action and its output fields are stated immediately, and no sentence is redundant.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema, but the description compensates by enumerating the comparison fields returned, so an agent knows what to expect. The only gap is failure behavior for invalid or duplicate model entries, which is minor for a low-risk read tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and the single parameter is fully documented in the schema, including minItems/maxItems bounds. The description's mention of '2-10 models by provider/slug' restates schema content rather than adding format or validation detail beyond it, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (compare) and resource (models), plus the exact dimensions compared: context window, pricing per 1M tokens, modalities, and status. This clearly distinguishes it from siblings like get_model (single lookup), list_models, and search_models.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The '2-10 models' scope implies the tool is for multi-model comparison rather than single lookups, but the description never explicitly states when to prefer it over get_model or search_models. No exclusions or prerequisites are given, leaving routing to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_ingest_statusGet ingest statusAInspect
Data-freshness check: registry totals and the most recent ingest runs (source, model count, status, time).
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Recent ingest runs to return (default 10) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden, and it partially delivers by enumerating the returned fields (source, model count, status, time). However, it says nothing about read-only safety, permissions, freshness lag, or whether runs are paginated beyond the limit parameter.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single compact sentence that front-loads the tool's purpose and then lists output contents, with no filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple parameterless-in-practice read tool with no output schema, the description supplies the key return contents an agent needs to judge relevance. It is nearly complete, only missing notes on freshness semantics or error/empty behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and the sole parameter 'limit' is fully documented in the schema with its default and range. The description's phrase 'most recent ingest runs' loosely corresponds to limit but adds no syntax or format detail beyond the schema; baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a concrete deliverable — registry totals plus the most recent ingest runs with their fields — which clearly distinguishes this read-only status tool from the model-catalog siblings (get_model, list_models, compare_models). It reframes the tool as a 'data-freshness check,' which is meaningful, though it never explicitly says 'retrieve status'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'Data-freshness check' implies when to reach for it, but there is no explicit when/when-not guidance and no alternative tool named for other ingestion-related needs. Usage is inferable rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_modelGet model detailAInspect
Full detail for one model (provider+slug from search_models): specs, current price, status, and recent price/availability snapshots.
| Name | Required | Description | Default |
|---|---|---|---|
| slug | Yes | Model slug, e.g. 'gpt-4o' | |
| provider | Yes | Provider slug, e.g. 'openai' | |
| snapshots | No | Recent snapshots to include (default 10, 0 to skip) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the burden. It discloses the shape of the payload (specs, price, status, snapshots) but says nothing about read-only guarantees, auth/permission needs, rate limits, or pagination. Adequate but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence that names the resource, the required inputs, and the returned fields. No filler or repetition of the title.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and no annotations, the description compensates by enumerating the returned fields and the input source. It is complete enough for an agent to call correctly, though a note on whether the call is read-only or costs anything would close the remaining gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3, but the description adds provenance the schema lacks: provider and slug values should come from search_models. The snapshots parameter's default/0-to-skip behavior is left to the schema, which already covers it.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Full detail for one model') and enumerates the content returned: specs, current price, status, and recent snapshots. It is clearly distinct from list_models/search_models/compare_models, though it does not explicitly name an alternative tool to avoid.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives a clear workflow hook: use this after search_models, supplying 'provider+slug from search_models'. It does not state exclusions (e.g. when compare_models or list_models is preferable), but the context for calling it is unambiguous.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_modelsList modelsAInspect
List tracked models with pricing and context windows. Filter by provider, modality tag, status, or price/context bounds.
| Name | Required | Description | Default |
|---|---|---|---|
| sort | No | Sort order (default name) | |
| limit | No | Max results (default 100) | |
| status | No | Status filter, e.g. 'available', 'deprecated' | |
| modality | No | Modality tag filter, e.g. 'text', 'image', 'audio' | |
| provider | No | Provider slug filter, e.g. 'anthropic' | |
| minContextWindow | No | Minimum context window | |
| maxInputPricePerM | No | Max input price per 1M tokens (USD) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden. 'List tracked models' usefully signals a read-only catalog operation and clarifies scope ('tracked'), but it says nothing about pagination behavior, defaults, or how results are ordered.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tight sentences, zero waste, with the resource and returned fields front-loaded before the filter list.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 100% schema coverage and no output schema, the description supplies the missing return-value hint (pricing and context windows) and the filterable dimensions, which is nearly everything needed. Only pagination/ordering behavior is left unstated.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so every parameter is already documented with examples (provider slugs, modality tags, status values, price units). The description only restates the filter categories and adds no syntax or format detail beyond the schema, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (List) and resource (tracked models) and even names what is returned (pricing, context windows). It does not differentiate from the sibling search_models, so an agent cannot tell from the text alone which listing/search tool to pick.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The enumeration of filter dimensions implies the use case (filtered browsing of the model catalog) but never states when to use this versus search_models or get_model, and gives no exclusions or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_providersList providersAInspect
List providers tracked by the registry with their model counts. Use provider slugs in list_models / get_model / compare_models.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden, but for a zero-parameter listing operation there is limited behavior to disclose. It does reveal that results include model counts alongside providers, yet says nothing about ordering, pagination, or the data source/registry scope. Adequate but thin on behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences, front-loaded with the action and its scope, with the second sentence adding distinct downstream value. No filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema present, the description partially compensates by naming the returned fields (providers and model counts). It doesn't cover ordering or how complete the provider list is, but for a simple 0-param enumerator this is nearly sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so there are no parameter semantics to document; the baseline for a 0-param tool applies. The description still helpfully notes that the returned provider slugs are the keys consumed by other tools.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('List providers tracked by the registry') and adds scope detail ('with their model counts'), which is more than a restatement of the name. It doesn't explicitly contrast with a sibling list tool, but no sibling lists providers, so the risk of confusion is low.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The second sentence tells the agent exactly why to call this and what to do with the result: obtain provider slugs for list_models / get_model / compare_models. That's clear enabling context. It stops short of explicit when-not guidance, but for a zero-param enumeration tool little else is needed.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_modelsSearch modelsAInspect
Substring search across model name, slug, and provider — the fast path to a model's provider/slug pair for the detail tools.
| Name | Required | Description | Default |
|---|---|---|---|
| q | Yes | Search text, e.g. 'sonnet' | |
| limit | No | Max results (default 20) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden. It does disclose matching semantics — plain substring matching over three fields, not fuzzy or semantic — which is genuinely useful. However, it says nothing about result ordering, what happens when nothing matches, or that results are capped/paginated, so it is only partially transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single em-dash-joined sentence with zero waste. The core action is front-loaded and the routing hint is compact, so nothing needs trimming.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-parameter search tool with no annotations and no output schema, the description covers what is searched and why (to feed detail tools). It omits return shape and result ordering, but those gaps are minor given the tool's simplicity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and both parameters (q, limit) are documented in the schema, so the baseline is 3. The description adds only that q matches name/slug/provider, a marginal semantic gain over the schema's own 'Search text' example; it says nothing about limit beyond the schema's default.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource: 'substring search across model name, slug, and provider', which tells an agent exactly what fields are matched. The trailing clause positions it relative to 'the detail tools', implicitly separating it from get_model/list_models, though it never names a sibling explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied rather than stated: 'the fast path to a model's provider/slug pair for the detail tools' signals that you call this to obtain the provider/slug needed by detail tools. There is no explicit when-not or named alternative (e.g. list_models for browsing), so the agent must infer the boundary.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
6 tool updates
- First observed
compare_models - First observed
get_ingest_status - First observed
get_model - First observed
list_models - First observed
list_providers - First observed
search_models
Related MCP Connectors
Live pricing data for AI models across vendors: input/output prices per 1k tokens as JSON.
Live LLM API pricing: token prices, comparisons, cheapest-model lookups. No key required.
Sourced AI-model pricing and capability data — compare and route to the cheapest capable model.
Live LLM API price + status radar across 11 providers, with public per-model price HISTORY.
Related MCP Servers
- AlicenseAqualityFmaintenanceProvides AI assistants with real-time access to 1000+ AI models including their latest pricing, context windows, capabilities, and specifications. Supports model search, comparison, recommendations, and live testing.369 npm1MIT
- FlicenseNot gradedqualityBmaintenanceEnables users to retrieve live pricing data for AI models across vendors, including input and output prices per 1k tokens, via a simple API.-
- FlicenseNot gradedqualityFmaintenanceProvides verified, up-to-date model IDs, pricing, and specs for over 100 models across 19 providers, preventing AI agents from using outdated or hallucinated model names.-
- FlicenseAqualityDmaintenanceProvides up-to-date AI model names and pricing from models.dev, solving model hallucination by fetching recently released models.1-
Glama MCP Gateway
Add one secure layer between your agents and this server.