Proxlai
Server Details
Verified, dated prices for 231 AI APIs in 38 markets: LLMs, GPUs, speech, video and more.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- Repository
- itai3000/proxlai-mcp
- GitHub Stars
- 0
TDQS
Scored across 5 tools
Each tool has a distinct role: list_markets finds market IDs, describe_market explains one market, search_offerings ranks offerings in a market, get_offering retrieves one offering, and compare_offerings puts selected offerings side by side. The boundaries between search_offerings and compare_offerings are clear from their descriptions: ranking within a market versus explicit side-by-side comparison of 2-4 offerings.
All tool names follow a consistent snake_case verb_noun pattern: list_markets, describe_market, search_offerings, get_offering, compare_offerings. Singular/plural nouns align naturally with whether the tool targets one item or many.
Five tools are well-scoped for a focused market/offering comparison server, with each tool covering a distinct step in the discovery-to-comparison workflow. There is no redundant or trivially overlapping tool.
The read-only surface covers the full workflow: discover markets, understand a market, search offerings under constraints, inspect one offering with price history, and compare multiple offerings. No obvious lifecycle gap exists for the stated pricing-comparison purpose.
Available Tools
5 toolscompare_offeringsCompare offeringsARead-onlyIdempotentInspect
Put 2 to 4 offerings from the same market side by side: prices, scores and every capability.
| Name | Required | Description | Default |
|---|---|---|---|
| ids | Yes | 2 to 4 offering ids from the same market |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, non-destructive and closed-world, so safety is covered. The description adds genuinely useful behavioral context beyond that: the 2-4 range, the same-market scoping requirement, and what the comparison surfaces (prices, scores, capabilities). It still doesn't say what happens when ids come from different markets, but this is solid against an already-rich annotation set.
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 states the action, the arity constraint, and the comparison dimensions with no filler. Nothing could be removed without losing information.
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 one-parameter read-only comparison tool with full annotations, the description covers the essentials and even sketches the return content. With no output schema, a slightly more explicit statement of the comparison result (e.g. a side-by-side table vs. per-field breakdown) would make it fully self-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?
Schema coverage is 100% and the schema already documents the ids array, its 2-4 bounds, and the same-market constraint. The description restates 'same market' and '2 to 4' without adding format, ordering, or error-handling semantics beyond the schema. Baseline 3 applies when the schema carries the parameter detail.
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 states a concrete verb and resource: putting 2-4 offerings side by side for comparison, and enumerates the comparison dimensions (prices, scores, capabilities). It clearly differs in intent from get_offering or search_offerings, but it never names a sibling explicitly, so the agent must infer the boundary.
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 by the phrasing: use this when you want a multi-offering comparison rather than a single lookup. There is no explicit 'use this instead of...' statement, no guidance on what to do when more than 4 ids are needed, and no stated prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
describe_marketDescribe a marketARead-onlyIdempotentInspect
Explain one market: what it is, how its pricing works, and the attributes you can filter and compare on (with plain-language help).
| Name | Required | Description | Default |
|---|---|---|---|
| market | Yes | Market id from list_markets, e.g. 'llm' or 'video-generation' |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive, closed-world behavior, so the safety profile is covered. The description adds what the response will contain (plain-language explanation of pricing and comparable attributes), which is useful since no output schema exists, but it omits any behavior on invalid or unknown market ids.
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?
One sentence, front-loaded with the action and resource, and the colon-style enumeration of contents adds information without padding. Nothing is wasted or 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?
For a one-parameter, read-only introspection tool with full schema coverage and no output schema, the description usefully explains what the returned explanation covers. It is close to complete, missing only error/unknown-id 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 single 'market' parameter is documented in the schema as a market id from list_markets with examples. The description adds no syntax, format, or validation detail beyond that, 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 ('explain') and resource ('one market') and enumerates the content of the explanation (what it is, pricing, filterable attributes). It implicitly distinguishes itself from list_markets by scoping to a single market, but never names a sibling to route the agent 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 only implied: 'one market' suggests this is a follow-up to list_markets and a prerequisite for compare_offerings, but the description states no when-to-use condition, no prerequisite, and no alternative to prefer. An agent must infer the placement from the singular scope.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_offeringGet one offeringARead-onlyIdempotentInspect
Full detail for one offering: description, capabilities, current price with its source, and price history.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Offering id from search_offerings, e.g. 'openai/gpt-6-luna' |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false and closed-world, so the safety profile is covered. The description adds useful content-level context by naming the returned fields (price with source, price history), but says nothing about lookup failure behavior or rate limits. A 3 is appropriate against this annotation coverage.
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 sentence with no filler, and the core resource is front-loaded before the enumeration of returned fields. Every clause earns its place.
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, so the description must carry the return-value burden, and it does summarize the response fields. It stops short of describing what happens for an unknown id or any depth limits on the price history, which leaves a small gap for a detail-fetch 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?
Only one parameter, and schema description coverage is 100% — the schema already explains the id and gives an example format ('openai/gpt-6-luna'). The description adds no further meaning about the identifier, so 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 and resource ('Full detail for one offering') and enumerates what is returned: description, capabilities, current price with its source, and price history. The singular 'one offering' combined with the id parameter clearly distinguishes it from the plural sibling search_offerings and from compare_offerings.
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 only implied: the schema's id description says the value comes from search_offerings, which hints at the search-then-fetch workflow. There is no explicit statement of when to use this versus compare_offerings or search_offerings, and no prerequisites or exclusions are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_marketsList AI marketsARead-onlyIdempotentInspect
List every market (kind of AI API) that has prices, with its id and pricing unit. Start here to find the market id.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive, closed-world behavior, so the safety profile is fully covered. The description contributes the substantive filter ('markets that have prices') and the returned fields, but adds no pagination, ordering, or auth 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 tight sentences with no waste; the scope (markets with prices) and the payoff (finding the market id) are both front-loaded.
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 parameters and no output schema, the description carries the burden of describing what comes back, and it does: an id and a pricing unit per market. Nothing an agent needs to call this correctly is missing.
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, which sets the baseline at 4. There is nothing for the description to clarify, and it correctly signals that the call needs no input.
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 every market'), defines the domain term ('kind of AI API'), and scopes it ('that has prices'), plus names the returned fields. It implies an entry-point role but never names a sibling like describe_market or search_offerings, so differentiation is left to inference.
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?
'Start here to find the market id' gives clear context for why an agent would call this and what it enables downstream. There are no exclusions or explicit alternatives, but for a no-arg enumeration tool the guidance is sufficient.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_offeringsSearch and rank offeringsARead-onlyIdempotentInspect
Rank the offerings in one market by price, quality and speed, with optional requirements and a maximum price. Returns prices with their verification date and source.
| Name | Required | Description | Default |
|---|---|---|---|
| sort | No | score (default): best match for the weights; price: cheapest first; quality: best first | |
| limit | No | How many results, default 10 | |
| market | Yes | Market id from list_markets | |
| filters | No | Requirements. Attribute keys come from describe_market. Do not add filters the user did not ask for. | |
| weights | No | What matters, each 0..1. Default: cost 0.5, quality 0.4, speed 0.1 | |
| maxPrice | No | Upper bound in the market's pricing unit (USD) | |
| include_unverified | No | Also rank offerings whose price is an unverified sample, never checked against the provider (default false: left out) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, non-destructive and closed-world, so the safety profile is covered. The description adds one genuinely useful behavioral fact beyond the annotations: the return carries prices with their verification date and source. It does not mention the default exclusion of unverified offerings or the default sort/limit behavior, which are behavioral facts an agent should know.
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 sentences, both front-loaded: the ranking action and scope come first, the return content second. No filler, no restatement of the title, and every clause carries information.
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, the description usefully states that results include prices plus verification date and source, which fills part of the return-value gap. Combined with a 100%-covered schema and rich annotations, an agent has nearly everything needed, though the weighting/sort defaults and the unverified-exclusion default are left entirely to the schema for a fairly complex 7-parameter, nested-object 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%, so every parameter (sort enum, limit, filters, weights, maxPrice, include_unverified) is already documented in the schema, including defaults and ranges. The description only gestures at 'optional requirements and a maximum price' and the three ranking dimensions, adding framing but no new semantic detail. Baseline 3 applies when the schema does the heavy lifting.
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 gives a specific verb and resource ('Rank the offerings in one market') plus the ranking dimensions (price, quality, speed) and the optional narrowing inputs. It is immediately clear what the tool produces, but it never contrasts itself with the sibling 'compare_offerings', which an agent could easily confuse with ranking a whole market.
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 only implied: the phrase 'in one market' and 'optional requirements and a maximum price' signals the shape of a valid call but never states when to reach for this tool over compare_offerings or get_offering. No exclusions, prerequisites, or alternative-routing guidance are given.
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.
5 tool updates
- First observed
compare_offerings - First observed
describe_market - First observed
get_offering - First observed
list_markets - First observed
search_offerings
Related MCP Connectors
LLM API prices across 70+ providers: cheapest offer, comparisons, history and cost estimates.
AI model prices per provider, benchmarks, own AI behavior tests and AI economy data, with sources.
The global price benchmark for AI inference: 23 price indexes, market KPIs and SKU-level prices.
Live LLM API price + status radar across 11 providers, with public per-model price HISTORY.
Related MCP Servers
- AlicenseAqualityAmaintenanceLive LLM API pricing: current token prices, model comparisons, cheapest-model lookups, and The LLM Price Index for 150+ models across 20+ providers, re-verified daily. No API key required.41MIT
- AlicenseAqualityBmaintenanceGlobal price benchmarking for AI inference across 2,600+ SKUs from 47 vendors. Query live pricing, market indexes, and model specs via 8 tools. Free tier available.865 npmMIT
- AlicenseAqualityAmaintenanceDaily-verified LLM API pricing dataset (44+ models, CN & global) with a hosted MCP server for live price queries and token cost estimation.2CC BY-4.0
- AlicenseNot gradedqualityCmaintenanceToken cost math for LLM API calls: current per-million-token rates for 69 models across 17 providers, with local arithmetic for estimates, comparisons and monthly budgets. Rates are verified and date-stamped.18 npm2MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.