OptimToken
Server Details
Compare LLM API pricing, estimate workload costs, and benchmark cloud compute. By OptimNow.
- Status
- Unhealthy
- Last Tested
- Transport
- Streamable HTTP
- URL
- Repository
- OptimNow/ai-pricing-hub-mcp
- GitHub Stars
- 0
- Server Listing
- OptimToken MCP
Available Tools
5 toolscompare-compute-pricingCompare Cloud Compute PricingARead-onlyInspect
Compare cloud compute instance pricing across AWS, Azure, GCP, DigitalOcean, OCI, OVH, and Alibaba. Filter by region, provider, vCPUs, memory, category, processor, or use case. All prices are Linux on-demand list prices in USD. Not every price column is live: provenance.priceTypes says which of each provider's price columns come from a live API, which are static constants, and which are unavailable, and provenance.staticPriceColumns lists the non-live ones outright. When you report a savings plan or reserved rate that appears there, say that it is a static estimate. IMPORTANT: Report all prices EXACTLY as returned. Do NOT add commentary or recommendations beyond the data.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max instances to return (default: 20) | |
| region | No | Pricing region: us-east, us-west, europe, asia-pacific. Default: us-east | |
| sortBy | No | Sort by: price, vcpus, memory, pricePerVCPU. Default: price | |
| useCase | No | Use case. Must be one of these exactly (case-insensitive): Web App, Database, HPC, ML & AI, Dev/Test, Big Data. Any other string returns zero matches rather than an error. | |
| category | No | Instance category. Must be one of these exactly (case-insensitive): General Purpose, Compute Optimized, Memory Optimized, Storage Optimized, GPU / Accelerated, Burstable. Any other string returns zero matches rather than an error. | |
| maxVCPUs | No | Maximum number of vCPUs | |
| minVCPUs | No | Minimum number of vCPUs | |
| provider | No | Cloud provider. Must be one of these exactly (case-insensitive): AWS, Azure, GCP, DigitalOcean, OCI, OVH, Alibaba. Any other string returns zero matches rather than an error. | |
| maxMemory | No | Maximum memory in GiB | |
| minMemory | No | Minimum memory in GiB | |
| processor | No | Processor. Matched by exact equality (case-insensitive), so a partial value like 'H100' returns nothing. Known values: Intel, AMD, Graviton, Ampere, NVIDIA A100, NVIDIA H100, NVIDIA L4, NVIDIA T4, NVIDIA V100, NVIDIA Other. |
Output Schema
| Name | Required | Description |
|---|---|---|
| error | No | |
| source | Yes | |
| instances | Yes | |
| provenance | No | |
| catalogSize | Yes | |
| matchingCount | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint and openWorldHint. The description adds critical behavioral details: provenance of price columns, static estimates, and the instruction to avoid commentary. This goes beyond annotations.
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?
The description is concise (6 sentences) and well-structured, front-loading the main purpose and then providing important caveats. Every sentence 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?
Given the tool has 11 parameters with full schema descriptions and an output schema, the description provides sufficient context: scope, filtering, provenance handling, and exact reporting instructions. It is complete for agent use.
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%, so parameters are already described. The description adds value by clarifying exact matching behavior for useCase, category, and processor, and noting defaults for region and sortBy.
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 clearly states the tool compares cloud compute instance pricing across multiple providers and lists them. It distinguishes from sibling tools (e.g., compare-llm-models) which are about LLM models, not compute pricing.
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 description specifies when to use the tool (comparing compute pricing) and gives behavioral instructions (report prices exactly, mention static estimates). It does not explicitly exclude cases like Windows or spot pricing, but the context of 'Linux on-demand list prices' is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compare-llm-modelsCompare LLM ModelsARead-onlyInspect
Browse and filter the whole LLM catalogue and get back a ranked table: price, quality (ELO), efficiency and capabilities. Use this when the user wants to SEE THE FIELD — 'show me models under $1/1M', 'which providers have vision models', 'list open-weight models above ELO 1300'. For a single PICK under a budget use recommend-llm-model; to weigh 2-4 NAMED models against each other use compare-models-side-by-side. Prices come from optimtoken.optimnow.io where reachable; the response's provenance says which tier served them and whether they are vendor-verified. Filter by provider, price tier (category), openness, capability, price range, or minimum ELO score. Optionally enrich with business metrics for a use case. Price tier and openness are independent: a model can be Frontier-priced and open-weight at once. Reports both list-price cost and the optimized cost achievable with prompt caching and the batch API. IMPORTANT: Report all prices, costs, and scores EXACTLY as returned. Do NOT add commentary, opinions, or recommendations beyond what the data shows. Present the results as a table and let the user draw conclusions.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max models to return (default: 15) | |
| minElo | No | Minimum Chatbot Arena ELO score. Typical range 1000-1500; ~1400 is roughly frontier-class. Models with no ELO score never satisfy this. | |
| category | No | Price tier, matched by exact equality (case-insensitive): Frontier, Mid-tier, Budget, Image. This is cost only — self-hostability is the separate `openness` axis. | |
| openness | No | Filter by self-hostability, derived from the licence: Open source, Open weights, Proprietary, Unknown | |
| provider | No | Filter by provider name (e.g. 'OpenAI', 'Anthropic', 'Google') | |
| capability | No | Capability, matched by exact equality (case-insensitive): Text, Vision, Code, Reasoning, Agents, Image Gen, Audio. Any other string returns zero matches. | |
| volumePreset | No | Monthly request volume: 10k, 100k, or 1m. Default: 100k | |
| maxInputPrice | No | Max input price per 1M tokens in USD | |
| useCasePreset | No | Workload shape, which sets tokens per request: supportTicket (1.5k in / 500 out), knowledgeQA (2k / 800), meetingSummary (10k / 1.2k, batch-eligible), marketingContent (2.5k / 1.8k), codingTask (3k / 2k), invoiceProcessing (1.5k / 600, batch-eligible), callSummary (2k / 700, batch-eligible), agentWorkflow (6k / 3k). Default: supportTicket | |
| maxOutputPrice | No | Max output price per 1M tokens in USD |
Output Schema
| Name | Required | Description |
|---|---|---|
| error | No | |
| models | Yes | |
| source | Yes | |
| eloAsOf | Yes | |
| dataAsOf | No | |
| provenance | No | |
| catalogSize | Yes | |
| finopsBadge | No | |
| volumeLabel | Yes | |
| useCaseLabel | Yes | |
| matchingCount | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate read-only and open-world hints. The description adds crucial behavioral context: data source (optimtoken.optimnow.io), provenance tier, vendor verification, and an explicit instruction to report values exactly as returned without added commentary. This goes beyond annotations and fully informs the agent of expected behavior.
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?
The description covers all necessary aspects in about 200 words. It is front-loaded with the core purpose and usage guidelines, then addresses data provenance, filtering options, and agent behavior. While thorough, a slightly tighter structure could improve conciseness without losing content.
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?
Given the tool's complexity (10 parameters, 3 enums, output schema exists), the description comprehensively addresses the purpose, usage scenarios, data sources, agent instructions, and key interactions between filters. It leaves no critical gaps for correct invocation.
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?
With 100% schema description coverage, the baseline is 3. The tool description adds value by summarizing filterable dimensions and clarifying that price tier and openness are independent axes (e.g., Frontier-priced and open-weight). This aids correct parameter usage without duplicating schema details.
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 explicitly states the tool browses and filters an LLM catalogue to return a ranked table with price, ELO, efficiency, and capabilities. It distinguishes itself from sibling tools by naming 'recommend-llm-model' for a single pick under budget and 'compare-models-side-by-side' for weighing 2-4 named models, making the purpose unmistakable.
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 description clearly specifies when to use this tool ('when the user wants to SEE THE FIELD') with concrete example queries, and explicitly tells when not to use it by directing to alternative tools for single picks or side-by-side comparisons. This provides excellent guidance for correct selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compare-models-side-by-sideCompare Models Side by SideARead-onlyInspect
Compare 2-4 named LLM models against all 8 use-case profiles at a chosen monthly volume, showing list and optimized cost for each. Use when the user names specific models to weigh against each other, rather than filtering the whole catalogue. If they also supply their own token counts, or a volume outside 10k/100k/1m, use estimate-llm-cost instead. Every name is resolved against the catalogue and the result is reported: a name that matched nothing, matched several models, or duplicated an earlier pick is stated explicitly. IMPORTANT: Report all prices and costs EXACTLY as returned, and repeat any name-resolution warning to the user — a missing column is not the same as a model that costs nothing.
| Name | Required | Description | Default |
|---|---|---|---|
| models | Yes | 2-4 model names to compare, e.g. ['GPT-4o', 'Claude Opus 5', 'Gemini 3.1 Pro'] | |
| volumePreset | No | Monthly request volume: 10k, 100k, or 1m. Default: 100k |
Output Schema
| Name | Required | Description |
|---|---|---|
| error | No | |
| models | Yes | |
| source | Yes | |
| volume | Yes | |
| eloAsOf | Yes | |
| dataAsOf | No | |
| provenance | No | |
| resolution | Yes | |
| volumeLabel | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations (readOnlyHint, openWorldHint, destructiveHint), the description adds critical behavior: name resolution reporting, exact price reproduction, warning propagation, and distinguishing missing columns from zero-cost models. No contradictions found.
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?
The description is efficient with three sentences plus an IMPORTANT instruction. It is front-loaded with the primary purpose and uses a natural flow. Slightly more structured (e.g., bullet points) could improve readability, but it is well within acceptable bounds.
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?
Given that an output schema exists (so return values are covered), the description covers purpose, usage boundaries, resolution behavior, and important agent instructions. No obvious gaps for the tool's complexity level.
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% already. The description adds meaningful context about model resolution behavior and volume presets, but does not significantly deepen parameter explanations since the schema already defines them well.
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 clearly states the tool compares 2-4 named LLM models against all 8 use-case profiles at a chosen monthly volume. It distinguishes itself from siblings by explicitly contrasting with filtering the whole catalogue and referencing estimate-llm-cost as an alternative.
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?
Explicitly says when to use ('when the user names specific models to weigh against each other') and when not to use ('if they also supply their own token counts, or a volume outside 10k/100k/1m, use estimate-llm-cost'). Provides clear decision boundaries.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
estimate-llm-costEstimate LLM CostARead-onlyInspect
Cost a workload with EXACT numbers the caller supplies: arbitrary token counts per request and any monthly volume, not just the 10k/100k/1m presets the other cost tools use. Use this for 'about 800 in and 200 out, 4 million calls a month', or to price one named model across every use-case profile. To compare 2-4 named models like for like at a preset volume, use compare-models-side-by-side instead. Provide a model name to get detailed cost breakdowns, or compare costs across all use case presets. Each figure comes twice: list price, and the optimized price achievable with prompt caching and the batch API. IMPORTANT: Report all cost figures EXACTLY as returned. Do NOT add commentary or recommendations beyond the data.
| Name | Required | Description | Default |
|---|---|---|---|
| modelName | No | Model name, e.g. 'GPT-4o'. A partial name matches up to 5 models and ALL of them are costed. If omitted, the first 8 catalogue entries are used — that is catalogue order, not a quality ranking. | |
| monthlyVolume | No | Exact monthly request count, any integer (default 100,000). This tool does not take the 10k/100k/1m presets the other cost tools use. | |
| useCasePreset | No | Workload shape, which sets tokens per request: supportTicket (1.5k in / 500 out), knowledgeQA (2k / 800), meetingSummary (10k / 1.2k, batch-eligible), marketingContent (2.5k / 1.8k), codingTask (3k / 2k), invoiceProcessing (1.5k / 600, batch-eligible), callSummary (2k / 700, batch-eligible), agentWorkflow (6k / 3k). Default: every preset. | |
| customInputTokens | No | Custom input tokens per request. Must be supplied TOGETHER with customOutputTokens — either alone is ignored and the preset is used. A custom shape assumes no cacheable prefix and no batch eligibility, so its optimized cost equals its list cost. | |
| customOutputTokens | No | Custom output tokens per request. Must be supplied TOGETHER with customInputTokens — either alone is ignored and the preset is used. |
Output Schema
| Name | Required | Description |
|---|---|---|
| error | No | |
| source | Yes | |
| volume | Yes | |
| eloAsOf | Yes | |
| dataAsOf | No | |
| modelCosts | Yes | |
| provenance | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses important behavioral traits beyond annotations: output includes both list and optimized prices, and instructions to report figures exactly as returned without adding commentary. No contradiction with annotations (readOnlyHint: true, destructiveHint: false).
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?
Well-structured and front-loaded: begins with the core purpose, then usage guidance, then parameter details. Every sentence adds value without redundancy. Length is appropriate for the complexity.
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?
Given the output schema exists, the description covers purpose, usage guidelines, parameter semantics, and behavioral instructions comprehensively. It leaves no gaps for an agent to misinterpret how to invoke the tool correctly.
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?
Adds significant meaning beyond the schema: explains that custom tokens must be supplied together, custom shape assumes no cacheable prefix or batch eligibility, modelName partial matching matches up to 5 models, monthlyVolume default is 100k and doesn't use presets, and useCasePreset defaults to every preset. Schema coverage is 100%, but description compensates with essential context.
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 clearly states the tool's purpose: costing workloads with exact token counts and monthly volume, distinguishing itself from sibling tools that use preset volumes. It uses specific verbs like 'cost' and 'price' and explicitly names the alternative compare-models-side-by-side.
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?
Provides explicit guidance on when to use this tool (exact numbers, custom tokens) and when to use a sibling (compare-models-side-by-side for comparing models at preset volumes). It also explains how to use it with model names or across presets.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
recommend-llm-modelRecommend an LLM ModelARead-onlyInspect
Pick a model. Returns a ranked top 3 for one workload under optional constraints, each with a per-constraint satisfied/violated breakdown as the evidence. Use this when the user wants an ANSWER rather than a table — 'what should I use for support tickets under $500 a month'. To browse or filter the whole catalogue instead, use compare-llm-models. Constraints: (monthly budget, minimum ELO, required capability, self-hostability). Returns a top 3 as structured facts — efficiency rank, ELO, list and optimized cost, FinOps flag, volatility, and a per-constraint satisfied/violated breakdown. When nothing satisfies every constraint the query is reported as over-constrained and the nearest misses are returned instead, each carrying the constraint it failed. IMPORTANT: Report the returned facts EXACTLY. The ranking is already computed — do not re-rank, and do not present a near miss as if it satisfied the constraints.
| Name | Required | Description | Default |
|---|---|---|---|
| minElo | No | Minimum Chatbot Arena ELO score. Typical range 1000-1500; ~1400 is roughly frontier-class. Models with no ELO score never satisfy this. | |
| openness | No | Require a self-hostability bucket, derived from the licence: Open source, Open weights, Proprietary, Unknown | |
| volumePreset | No | Monthly request volume: 10k, 100k, or 1m. Default: 100k | |
| useCasePreset | Yes | Workload shape, which sets tokens per request: supportTicket (1.5k in / 500 out), knowledgeQA (2k / 800), meetingSummary (10k / 1.2k, batch-eligible), marketingContent (2.5k / 1.8k), codingTask (3k / 2k), invoiceProcessing (1.5k / 600, batch-eligible), callSummary (2k / 700, batch-eligible), agentWorkflow (6k / 3k). | |
| maxMonthlyBudget | No | Maximum monthly budget in USD at the given volume. Tested against the LIST-price monthly cost, not the caching/batch-optimized cost. | |
| requiredCapability | No | Capability the model must have: Text, Vision, Code, Reasoning, Agents, Image Gen, Audio |
Output Schema
| Name | Required | Description |
|---|---|---|
| error | No | |
| source | Yes | |
| volume | Yes | |
| eloAsOf | Yes | |
| dataAsOf | No | |
| nearMisses | Yes | |
| provenance | No | |
| catalogSize | Yes | |
| rankedCount | Yes | |
| volumeLabel | Yes | |
| useCaseLabel | Yes | |
| candidateCount | Yes | |
| overConstrained | Yes | |
| recommendations | Yes | |
| roiCalculatorUrl | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, but the description adds critical behavioral context beyond that: it details returned fields (efficiency rank, ELO, costs, FinOps flag, volatility, constraint breakdown), explains over-constrained behavior with near misses, and includes a strong warning not to re-rank. No contradictions.
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?
The description is moderately sized and front-loaded with the core action. It could be slightly more concise by removing the detailed field list that may be redundant with the output schema, but overall each sentence adds value. The warning is essential but feels slightly expanded.
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?
Given the tool has 6 parameters, full schema coverage, an output schema, and moderate complexity (constraint behavior, over-constrained handling), the description covers all key aspects: input/output, edge cases, constraints, ranking instruction, and sibling differentiation. No gaps remain.
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 baseline is 3. The description adds context about constraints being 'optional' and their role in filtering, but doesn't explain parameter details beyond what the schema already provides (e.g., minElo's range is already described). The description's constraint summary is helpful but not new depth.
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 clearly states it returns a ranked top 3 for one workload under optional constraints, with a specific verb ('Pick a model') and concrete resource ('LLM Model'). It distinguishes itself from siblings like compare-llm-models by explicitly contrasting answering vs browsing.
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?
Explicitly says when to use ('when the user wants an ANSWER') and when to use the sibling tool instead ('To browse or filter the whole catalogue instead, use compare-llm-models'). Provides clear alternatives and usage context.
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. Dates show when Glama detected each change.
5 tool updates
- Changed
compare-compute-pricing4 fields changed- changed
Input schema / properties / category / descriptionPrevious value: -"Instance category: General Purpose, Compute Optimized, Memory Optimized, Storage Optimized, GPU / Accelerated, Burstable"New value: +"Instance category. Must be one of these exactly (case-insensitive): General Purpose, Compute Optimized, Memory Optimized, Storage Optimized, GPU / Accelerated, Burstable. Any other string returns zero matches rather than an error." - changed
Input schema / properties / processor / descriptionPrevious value: -"Processor filter: Intel, AMD, Graviton, Ampere, NVIDIA A100, NVIDIA H100, etc."New value: +"Processor. Matched by exact equality (case-insensitive), so a partial value like 'H100' returns nothing. Known values: Intel, AMD, Graviton, Ampere, NVIDIA A100, NVIDIA H100, NVIDIA L4, NVIDIA T4, NVIDIA V100, NVIDIA Other." - changed
Input schema / properties / provider / descriptionPrevious value: -"Cloud provider: AWS, Azure, GCP, DigitalOcean, OCI, OVH, Alibaba"New value: +"Cloud provider. Must be one of these exactly (case-insensitive): AWS, Azure, GCP, DigitalOcean, OCI, OVH, Alibaba. Any other string returns zero matches rather than an error." - changed
Input schema / properties / useCase / descriptionPrevious value: -"Use case filter: Web App, Database, HPC, ML & AI, Dev/Test, Big Data"New value: +"Use case. Must be one of these exactly (case-insensitive): Web App, Database, HPC, ML & AI, Dev/Test, Big Data. Any other string returns zero matches rather than an error."
- Changed
compare-llm-models10 fields changed- changed
Input schema / properties / capability / descriptionPrevious value: -"Filter by capability: Text, Vision, Code, Reasoning, Agents, Image Gen, Audio"New value: +"Capability, matched by exact equality (case-insensitive): Text, Vision, Code, Reasoning, Agents, Image Gen, Audio. Any other string returns zero matches." - changed
Input schema / properties / category / descriptionPrevious value: -"Filter by price tier: Frontier, Mid-tier, Budget, Image"New value: +"Price tier, matched by exact equality (case-insensitive): Frontier, Mid-tier, Budget, Image. This is cost only — self-hostability is the separate `openness` axis." - changed
Input schema / properties / minElo / descriptionPrevious value: -"Minimum ELO score (quality benchmark from Chatbot Arena)"New value: +"Minimum Chatbot Arena ELO score. Typical range 1000-1500; ~1400 is roughly frontier-class. Models with no ELO score never satisfy this." - added
Input schema / properties / minElo / exclusiveMinimumAdded value: +0 - changed
Input schema / properties / useCasePreset / descriptionPrevious value: -"Use case for cost estimation. Default: supportTicket"New value: +"Workload shape, which sets tokens per request: supportTicket (1.5k in / 500 out), knowledgeQA (2k / 800), meetingSummary (10k / 1.2k, batch-eligible), marketingContent (2.5k / 1.8k), codingTask (3k / 2k), invoiceProcessing (1.5k / 600, batch-eligible), callSummary (2k / 700, batch-eligible), agentWorkflow (6k / 3k). Default: supportTicket" - added
Output schema / properties / models / items / properties / batchAppliedAdded value: +{ + "type": "boolean" +} - added
Output schema / properties / models / items / properties / batchEligibleAdded value: +{ + "type": "boolean" +} - added
Output schema / properties / models / items / properties / cacheAppliedAdded value: +{ + "type": "boolean" +} - added
Output schema / properties / models / items / properties / cacheEligibleAdded value: +{ + "type": "boolean" +} - changed
Output schema / properties / models / items / requiredPrevious value: -[ - "provider", - "model", - "inputPricePer1M", - "outputPricePer1M", - "contextWindow", - "category", - "capabilities", - "openness", - "efficiencyScore", - "useCaseCost", - "optimizedUseCaseCost", - "monthlyBudget", - "optimizedMonthlyBudget", - "volatilityRisk", - "isFinOpsFriendly" -]New value: +[ + "provider", + "model", + "inputPricePer1M", + "outputPricePer1M", + "contextWindow", + "category", + "capabilities", + "openness", + "efficiencyScore", + "useCaseCost", + "optimizedUseCaseCost", + "monthlyBudget", + "optimizedMonthlyBudget", + "volatilityRisk", + "isFinOpsFriendly", + "batchEligible", + "cacheEligible", + "batchApplied", + "cacheApplied" +]
- Added
compare-models-side-by-side - Changed
estimate-llm-cost11 fields changed- changed
Input schema / properties / customInputTokens / descriptionPrevious value: -"Custom input tokens per request (overrides preset)"New value: +"Custom input tokens per request. Must be supplied TOGETHER with customOutputTokens — either alone is ignored and the preset is used. A custom shape assumes no cacheable prefix and no batch eligibility, so its optimized cost equals its list cost." - changed
Input schema / properties / customOutputTokens / descriptionPrevious value: -"Custom output tokens per request (overrides preset)"New value: +"Custom output tokens per request. Must be supplied TOGETHER with customInputTokens — either alone is ignored and the preset is used." - changed
Input schema / properties / modelName / descriptionPrevious value: -"Model name to estimate costs for (e.g. 'GPT-4o', 'Claude Sonnet 4'). If omitted, shows top models."New value: +"Model name, e.g. 'GPT-4o'. A partial name matches up to 5 models and ALL of them are costed. If omitted, the first 8 catalogue entries are used — that is catalogue order, not a quality ranking." - changed
Input schema / properties / monthlyVolume / descriptionPrevious value: -"Custom monthly volume (default: 100,000)"New value: +"Exact monthly request count, any integer (default 100,000). This tool does not take the 10k/100k/1m presets the other cost tools use." - changed
Input schema / properties / useCasePreset / descriptionPrevious value: -"Use case preset. Default: all presets."New value: +"Workload shape, which sets tokens per request: supportTicket (1.5k in / 500 out), knowledgeQA (2k / 800), meetingSummary (10k / 1.2k, batch-eligible), marketingContent (2.5k / 1.8k), codingTask (3k / 2k), invoiceProcessing (1.5k / 600, batch-eligible), callSummary (2k / 700, batch-eligible), agentWorkflow (6k / 3k). Default: every preset." - added
Output schema / properties / modelCosts / items / properties / costs / items / properties / batchAppliedAdded value: +{ + "type": "boolean" +} - added
Output schema / properties / modelCosts / items / properties / costs / items / properties / batchEligibleAdded value: +{ + "type": "boolean" +} - added
Output schema / properties / modelCosts / items / properties / costs / items / properties / cacheAppliedAdded value: +{ + "type": "boolean" +} - added
Output schema / properties / modelCosts / items / properties / costs / items / properties / cacheEligibleAdded value: +{ + "type": "boolean" +} - added
Output schema / properties / modelCosts / items / properties / costs / items / properties / savingsPctAdded value: +{ + "type": "number" +} - changed
Output schema / properties / modelCosts / items / properties / costs / items / requiredPrevious value: -[ - "useCase", - "inputTokens", - "outputTokens", - "perRequest", - "monthly", - "perRequestOptimized", - "monthlyOptimized" -]New value: +[ + "useCase", + "inputTokens", + "outputTokens", + "perRequest", + "monthly", + "perRequestOptimized", + "monthlyOptimized", + "savingsPct", + "batchEligible", + "cacheEligible", + "batchApplied", + "cacheApplied" +]
- Added
recommend-llm-model
3 tool updates
- Changed
compare-compute-pricing5 fields changed- added
Input schema / properties / regionAdded value: +{ + "description": "Pricing region: us-east, us-west, europe, asia-pacific. Default: us-east", + "enum": [ + "us-east", + "us-west", + "europe", + "asia-pacific" + ], + "type": "string" +} - changed
Output schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema" - added
Output schema / properties / provenanceAdded value: +{ + "additionalProperties": false, + "properties": { + "catalogTotal": { + "type": "number" + }, + "catalogueIsSubset": { + "type": "boolean" + }, + "dataAsOf": { + "type": "string" + }, + "fallbackReason": { + "type": "string" + }, + "label": { + "type": "string" + }, + "notice": { + "type": "string" + }, + "priceTypes": { + "additionalProperties": { + "additionalProperties": { + "type": "string" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + }, + "region": { + "type": "string" + }, + "servedFromCacheAgeMs": { + "type": "number" + }, + "source": { + "type": "string" + }, + "sourceRegions": { + "additionalProperties": { + "type": "string" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + }, + "sources": { + "additionalProperties": { + "type": "string" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + }, + "staticPriceColumns": { + "items": { + "type": "string" + }, + "type": "array" + }, + "tier": { + "type": "number" + }, + "unappliedFilters": { + "items": { + "type": "string" + }, + "type": "array" + }, + "unavailablePriceColumns": { + "items": { + "type": "string" + }, + "type": "array" + }, + "upstreamErrors": { + "items": { + "type": "string" + }, + "type": "array" + }, + "upstreamSchemaVersion": { + "type": "string" + }, + "upstreamTimestamp": { + "type": "string" + } + }, + "required": [ + "tier", + "source", + "label", + "region", + "staticPriceColumns", + "unavailablePriceColumns" + ], + "type": "object" +} - added
Output schema / properties / sourceAdded value: +{ + "type": "string" +} - changed
Output schema / requiredPrevious value: -[ - "instances", - "matchingCount", - "catalogSize" -]New value: +[ + "instances", + "matchingCount", + "catalogSize", + "source" +]
- Changed
compare-llm-models2 fields changed- changed
Output schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema" - added
Output schema / properties / provenanceAdded value: +{ + "additionalProperties": false, + "properties": { + "catalogTotal": { + "type": "number" + }, + "dataAsOf": { + "type": "string" + }, + "eloAsOf": { + "type": "string" + }, + "label": { + "type": "string" + }, + "notice": { + "type": "string" + }, + "pricesVerified": { + "type": "boolean" + }, + "source": { + "type": "string" + }, + "tier": { + "type": "number" + }, + "upstreamSchemaVersion": { + "type": "string" + }, + "upstreamSource": { + "type": "string" + }, + "upstreamTimestamp": { + "type": "string" + } + }, + "required": [ + "tier", + "source", + "label", + "pricesVerified", + "eloAsOf" + ], + "type": "object" +}
- Changed
estimate-llm-cost2 fields changed- changed
Output schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema" - added
Output schema / properties / provenanceAdded value: +{ + "additionalProperties": false, + "properties": { + "catalogTotal": { + "type": "number" + }, + "dataAsOf": { + "type": "string" + }, + "eloAsOf": { + "type": "string" + }, + "label": { + "type": "string" + }, + "notice": { + "type": "string" + }, + "pricesVerified": { + "type": "boolean" + }, + "source": { + "type": "string" + }, + "tier": { + "type": "number" + }, + "upstreamSchemaVersion": { + "type": "string" + }, + "upstreamSource": { + "type": "string" + }, + "upstreamTimestamp": { + "type": "string" + } + }, + "required": [ + "tier", + "source", + "label", + "pricesVerified", + "eloAsOf" + ], + "type": "object" +}
3 tool updates
- Changed
compare-compute-pricing5 fields changed- removed
Input schema / properties / regionRemoved value: -{ - "description": "Pricing region: us-east, us-west, europe, asia-pacific. Default: us-east", - "enum": [ - "us-east", - "us-west", - "europe", - "asia-pacific" - ], - "type": "string" -} - changed
Output schema / $schemaPrevious value: -"https://json-schema.org/draft/2020-12/schema"New value: +"http://json-schema.org/draft-07/schema#" - removed
Output schema / properties / provenanceRemoved value: -{ - "additionalProperties": false, - "properties": { - "catalogTotal": { - "type": "number" - }, - "catalogueIsSubset": { - "type": "boolean" - }, - "dataAsOf": { - "type": "string" - }, - "fallbackReason": { - "type": "string" - }, - "label": { - "type": "string" - }, - "notice": { - "type": "string" - }, - "priceTypes": { - "additionalProperties": { - "additionalProperties": { - "type": "string" - }, - "propertyNames": { - "type": "string" - }, - "type": "object" - }, - "propertyNames": { - "type": "string" - }, - "type": "object" - }, - "region": { - "type": "string" - }, - "servedFromCacheAgeMs": { - "type": "number" - }, - "source": { - "type": "string" - }, - "sourceRegions": { - "additionalProperties": { - "type": "string" - }, - "propertyNames": { - "type": "string" - }, - "type": "object" - }, - "sources": { - "additionalProperties": { - "type": "string" - }, - "propertyNames": { - "type": "string" - }, - "type": "object" - }, - "staticPriceColumns": { - "items": { - "type": "string" - }, - "type": "array" - }, - "tier": { - "type": "number" - }, - "unappliedFilters": { - "items": { - "type": "string" - }, - "type": "array" - }, - "unavailablePriceColumns": { - "items": { - "type": "string" - }, - "type": "array" - }, - "upstreamErrors": { - "items": { - "type": "string" - }, - "type": "array" - }, - "upstreamSchemaVersion": { - "type": "string" - }, - "upstreamTimestamp": { - "type": "string" - } - }, - "required": [ - "tier", - "source", - "label", - "region", - "staticPriceColumns", - "unavailablePriceColumns" - ], - "type": "object" -} - removed
Output schema / properties / sourceRemoved value: -{ - "type": "string" -} - changed
Output schema / requiredPrevious value: -[ - "instances", - "matchingCount", - "catalogSize", - "source" -]New value: +[ + "instances", + "matchingCount", + "catalogSize" +]
- Changed
compare-llm-models2 fields changed- changed
Output schema / $schemaPrevious value: -"https://json-schema.org/draft/2020-12/schema"New value: +"http://json-schema.org/draft-07/schema#" - removed
Output schema / properties / provenanceRemoved value: -{ - "additionalProperties": false, - "properties": { - "catalogTotal": { - "type": "number" - }, - "dataAsOf": { - "type": "string" - }, - "eloAsOf": { - "type": "string" - }, - "label": { - "type": "string" - }, - "notice": { - "type": "string" - }, - "pricesVerified": { - "type": "boolean" - }, - "source": { - "type": "string" - }, - "tier": { - "type": "number" - }, - "upstreamSchemaVersion": { - "type": "string" - }, - "upstreamSource": { - "type": "string" - }, - "upstreamTimestamp": { - "type": "string" - } - }, - "required": [ - "tier", - "source", - "label", - "pricesVerified", - "eloAsOf" - ], - "type": "object" -}
- Changed
estimate-llm-cost2 fields changed- changed
Output schema / $schemaPrevious value: -"https://json-schema.org/draft/2020-12/schema"New value: +"http://json-schema.org/draft-07/schema#" - removed
Output schema / properties / provenanceRemoved value: -{ - "additionalProperties": false, - "properties": { - "catalogTotal": { - "type": "number" - }, - "dataAsOf": { - "type": "string" - }, - "eloAsOf": { - "type": "string" - }, - "label": { - "type": "string" - }, - "notice": { - "type": "string" - }, - "pricesVerified": { - "type": "boolean" - }, - "source": { - "type": "string" - }, - "tier": { - "type": "number" - }, - "upstreamSchemaVersion": { - "type": "string" - }, - "upstreamSource": { - "type": "string" - }, - "upstreamTimestamp": { - "type": "string" - } - }, - "required": [ - "tier", - "source", - "label", - "pricesVerified", - "eloAsOf" - ], - "type": "object" -}
3 tool updates
- Changed
compare-compute-pricing5 fields changed- added
Input schema / properties / regionAdded value: +{ + "description": "Pricing region: us-east, us-west, europe, asia-pacific. Default: us-east", + "enum": [ + "us-east", + "us-west", + "europe", + "asia-pacific" + ], + "type": "string" +} - changed
Output schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema" - added
Output schema / properties / provenanceAdded value: +{ + "additionalProperties": false, + "properties": { + "catalogTotal": { + "type": "number" + }, + "catalogueIsSubset": { + "type": "boolean" + }, + "dataAsOf": { + "type": "string" + }, + "fallbackReason": { + "type": "string" + }, + "label": { + "type": "string" + }, + "notice": { + "type": "string" + }, + "priceTypes": { + "additionalProperties": { + "additionalProperties": { + "type": "string" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + }, + "region": { + "type": "string" + }, + "servedFromCacheAgeMs": { + "type": "number" + }, + "source": { + "type": "string" + }, + "sourceRegions": { + "additionalProperties": { + "type": "string" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + }, + "sources": { + "additionalProperties": { + "type": "string" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + }, + "staticPriceColumns": { + "items": { + "type": "string" + }, + "type": "array" + }, + "tier": { + "type": "number" + }, + "unappliedFilters": { + "items": { + "type": "string" + }, + "type": "array" + }, + "unavailablePriceColumns": { + "items": { + "type": "string" + }, + "type": "array" + }, + "upstreamErrors": { + "items": { + "type": "string" + }, + "type": "array" + }, + "upstreamSchemaVersion": { + "type": "string" + }, + "upstreamTimestamp": { + "type": "string" + } + }, + "required": [ + "tier", + "source", + "label", + "region", + "staticPriceColumns", + "unavailablePriceColumns" + ], + "type": "object" +} - added
Output schema / properties / sourceAdded value: +{ + "type": "string" +} - changed
Output schema / requiredPrevious value: -[ - "instances", - "matchingCount", - "catalogSize" -]New value: +[ + "instances", + "matchingCount", + "catalogSize", + "source" +]
- Changed
compare-llm-models2 fields changed- changed
Output schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema" - added
Output schema / properties / provenanceAdded value: +{ + "additionalProperties": false, + "properties": { + "catalogTotal": { + "type": "number" + }, + "dataAsOf": { + "type": "string" + }, + "eloAsOf": { + "type": "string" + }, + "label": { + "type": "string" + }, + "notice": { + "type": "string" + }, + "pricesVerified": { + "type": "boolean" + }, + "source": { + "type": "string" + }, + "tier": { + "type": "number" + }, + "upstreamSchemaVersion": { + "type": "string" + }, + "upstreamSource": { + "type": "string" + }, + "upstreamTimestamp": { + "type": "string" + } + }, + "required": [ + "tier", + "source", + "label", + "pricesVerified", + "eloAsOf" + ], + "type": "object" +}
- Changed
estimate-llm-cost2 fields changed- changed
Output schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema" - added
Output schema / properties / provenanceAdded value: +{ + "additionalProperties": false, + "properties": { + "catalogTotal": { + "type": "number" + }, + "dataAsOf": { + "type": "string" + }, + "eloAsOf": { + "type": "string" + }, + "label": { + "type": "string" + }, + "notice": { + "type": "string" + }, + "pricesVerified": { + "type": "boolean" + }, + "source": { + "type": "string" + }, + "tier": { + "type": "number" + }, + "upstreamSchemaVersion": { + "type": "string" + }, + "upstreamSource": { + "type": "string" + }, + "upstreamTimestamp": { + "type": "string" + } + }, + "required": [ + "tier", + "source", + "label", + "pricesVerified", + "eloAsOf" + ], + "type": "object" +}
3 tool updates
- First observed
compare-compute-pricing - First observed
compare-llm-models - First observed
estimate-llm-cost
Frequently Asked Questions
Claiming proves that you control a remote MCP connector. It does not move, proxy, or interrupt the server.
Open the connector listing, choose Claim ownership, and sign in to Glama.
Complete one verification method:
GitHub identity — fastest for official registry listings. For a namespace such as
io.github.alice/server, link the matching GitHub user, then choose Claim with GitHub. An organization namespace such asio.github.acme/serveralso needs that organization to have installed the Glama AI GitHub App and approved its permissions, because GitHub discloses organization membership only to apps it has installed. Use HTTP or DNS when it has not.HTTP challenge — works when you can deploy a public file. Generate a token, publish the exact JSON Glama shows at
/.well-known/glama.jsonon the same origin as the connector, then choose Check HTTP challenge.DNS challenge — works when you control DNS but cannot change the server. Generate a token, create the exact TXT record Glama shows, wait for it to propagate, then choose Check DNS challenge.
After verification, Glama sends a confirmation email and gives you access to listing details, thumbnails, health checks, and analytics. Keep the HTTP file or DNS record in place: Glama periodically checks it and ownership remains verified while the token is discoverable.
The HTTP ownership file has this structure:
{
"$schema": "https://glama.ai/mcp/schemas/connector.json",
"claim": "glama_claim_..."
}Claim tokens are opaque, stable, and bound to the signed-in Glama account. They contain no email address or other personal information. If Glama can no longer discover a verified HTTP or DNS token, it starts a seven-day grace period before removing claim-based access. Restore the same token during that period to keep ownership verified. Never publish an email address, Glama session token, GitHub token, or connector credential as ownership proof.
If verification fails, confirm that you copied the current token exactly. The HTTP file must be public, return valid JSON with a successful HTTP response, and stay on the connector's origin. DNS changes may need more time to propagate. A claim cannot transfer to a different origin or hostname: if the connector target changes, Glama starts the grace period and the new target must be claimed separately after the previous claim is released.
For a connector linked to the official MCP Registry, registry updates continue to replace its name, description, and URL by default. After claiming, open Manage connector and enable Use Glama listing details as the source of truth if edits made on Glama should be preserved. Categories and thumbnails are always managed on Glama; registry linkage and technical connection settings continue to sync.
Control your server's listing on Glama, including description and metadata
Access analytics and receive server usage reports
Get monitoring and health status updates for your server
Feature your server to boost visibility and reach more users
To improve your MCP server's ranking:
Claim ownership of the server listing
Complete the server profile with an accurate description and thumbnail
Provide a test profile so Glama can connect to and evaluate the server
Keep tool definitions clear and complete to earn a high Tool Definition Quality Score (TDQS)
Route real usage through the Glama Gateway; more recorded successful server uses also improve the ranking
For users:
Full audit trail – every tool call is logged with inputs and outputs for compliance and debugging
Granular tool control – enable or disable individual tools per connector to limit what your AI agents can do
Centralized credential management – store and rotate API keys and OAuth tokens in one place
Change alerts – get notified when a connector changes its schema, adds or removes tools, or updates tool definitions, so nothing breaks silently
For server owners:
Proven adoption – public usage metrics on your listing show real-world traction and build trust with prospective users
Tool-level analytics – see which tools are being used most, helping you prioritize development and documentation
Direct user feedback – users can report issues and suggest improvements through the listing, giving you a channel you would not have otherwise
The connector status is unhealthy when Glama is unable to successfully connect to the server. This can happen for several reasons:
The server is experiencing an outage
The URL of the server is wrong
Credentials required to access the server are missing or invalid
If you are the owner of this MCP connector and would like to make modifications to the listing, including providing test credentials for accessing the server, please contact support@glama.ai.
Discussions
No comments yet. Be the first to start the discussion!
Related MCP Connectors
Live LLM API pricing: token prices, comparisons, cheapest-model lookups. No key required.
Compare up-to-date pricing for 40+ LLMs (incl. Chinese) & estimate cost from tokens. EN/zh.
LLM and GPU rental prices: model price lookup, GPU listings, cheapest-GPU search, price history
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.51MIT
- FlicenseNot gradedqualityCmaintenanceProvides tools to count tokens, estimate API costs, optimize prompts, and compare AI model pricing for multiple LLMs.88-
- AlicenseAqualityCmaintenanceGlobal 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.8103MIT
- AlicenseNot gradedqualityDmaintenanceCompare AI inference pricing across 9 providers in real time. Routing recommendations, spend tracking, and budget alerts for AI agents.119MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.
TDQS
Each tool serves a clearly distinct purpose: cloud compute pricing, LLM catalogue browsing, side-by-side model comparison, custom cost estimation, and model recommendation. The descriptions provide explicit guidance on when to use each tool, eliminating ambiguity.
All tool names follow a consistent verb-noun pattern with hyphens (e.g., compare-compute-pricing, estimate-llm-cost). The verbs are imperative and the nouns clearly describe the object, forming a predictable and readable set.
5 tools is well-scoped for the domain of cloud compute and LLM cost comparison. Each tool earns its place by covering a distinct workflow (browsing, comparing specific models, custom costing, recommendation).
The tool surface covers the full spectrum of user needs: compute pricing across providers, LLM catalogue exploration, side-by-side comparisons, arbitrary cost estimation, and recommendation with constraints. There are no obvious gaps for the stated purpose of cost analysis.