flopsindex-mcp
Server Details
Live GPU compute & inference token price indices for AI agents — 591 reference indices across H100/A100/B200/B300 spot+on-demand, Claude/GPT/Llama token pricing, and more. Every value is methodology-versioned and citable via the /v1/verify handshake.
- Status
- Healthy
- Uptime
- 100.0% over 66 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-06-18
- URL
TDQS
Scored across 5 tools
get_index, get_price, and verify (with value omitted) all return the current published value, so their boundaries overlap significantly. Descriptions try to differentiate intent (cite vs. cheap lookup vs. verification), but an agent could easily misselect among these three for a simple 'get the value' request. list_indices and search_indices are more clearly distinct.
Four of five tools follow a verb_noun pattern (get_index, get_price, list_indices, search_indices) consistently. 'verify' is a bare verb with no noun, a minor deviation, but overall the naming is predictable and readable.
Five tools is well-scoped for a read-only public price-index service, covering the discover/lookup/verify lifecycle without redundancy bloat. Each tool has a plausible role.
The surface covers discovery (list/search), value retrieval (get_index/get_price), and verification, which is complete for a public citation-oriented read-only domain. Minor gaps exist around historical/time-series queries and metadata enumeration, which the descriptions explicitly say are withheld by design.
Available Tools
5 toolsget_indexGet a FLOPS index citationARead-onlyInspect
Resolve a FLOPS index to its source-opaque PUBLIC citation payload. Returns exactly {index_id, value, unit, as_of, data_tier, confidence, methodology_url, verify_url, citation_url, permalink} — no source-level detail. Prefer get_index when you intend to CITE the value.
| Name | Required | Description | Default |
|---|---|---|---|
| index_id | Yes | FLOPS index id / slug, e.g. 'FLOPS-H100-OD', 'FLOPS-A100-SPOT'. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
readOnlyHint=true already establishes the safe-read profile, and the description adds genuinely useful context beyond it: the payload is deliberately source-opaque and contains no source-level detail, which is decision-relevant information about what this tool will and will not return. It does not cover error behavior or any freshness/latency characteristics, keeping it below 5.
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 tightly front-loaded sentences: the purpose and output shape come first, the disambiguation rule last. The ten-field enumeration is long but earns its place because no output schema exists to carry that 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 compensates by enumerating the exact returned fields, and the read-only annotation covers the safety profile, so an agent has enough to call it correctly. Remaining gaps — failure mode for an unknown index and whether the value can be stale — are minor.
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 index_id parameter already documents its format with concrete slug examples ('FLOPS-H100-OD'). The description adds no syntax, aliasing, or lookup guidance 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?
The description gives a specific verb ('Resolve') and resource ('FLOPS index') and states exactly what is produced: a 'source-opaque PUBLIC citation payload' with an enumerated field list. The clause 'Prefer get_index when you intend to CITE the value' orients it against get_price without the agent needing to open either schema.
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?
It provides a clear selection rule — use this tool when you intend to cite the value — which implicitly steers the agent away from get_price for citation workflows. It stops short of naming the alternative explicitly or stating exclusions/error conditions (e.g., unknown index_id), so it is strong but not exhaustive.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_priceGet a FLOPS index priceARead-onlyInspect
Fetch the current published value for a FLOPS compute price index. Returns {value, unit, as_of, data_tier, confidence, verify_url, citation_url}. Cheapest way to answer 'what is the latest public reference price for X?' (refreshed every 6 hours). Confidence is a label (HIGH or MED), never a numeric weight. Carries no methodology or source attribution by design — the anonymous surface does not enumerate the tiers or families it withholds.
| Name | Required | Description | Default |
|---|---|---|---|
| slug | Yes | FLOPS index slug. Accepts FLOPS-<MODEL>-OD, FLOPS-<MODEL>-SPOT, FLOPS-<MODEL>-DEPIN, or a bare gpu_model. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only declare readOnlyHint=true, so the description carries the rest of the load and does it well: it discloses the 6-hour refresh cadence, clarifies that confidence is a label (HIGH/MED) and never a numeric weight, and warns that no methodology or source attribution is included by design. It stops short of describing pagination or error behavior, but the key semantic caveats are surfaced.
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?
Front-loaded with the action, then the return shape, then the caveats; every sentence carries information. The closing sentence about the 'anonymous surface' is slightly meta and verbose, but it still conveys that tiers/families are intentionally withheld.
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, and the description compensates by enumerating the return fields (value, unit, as_of, data_tier, confidence, verify_url, citation_url) and the freshness guarantee. Combined with the confidence-label clarification and the explicit attribution limitation, an agent has enough to call and interpret the result 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?
Schema coverage is 100% and the single slug parameter is already fully documented in the schema, including the accepted FLOPS-<MODEL>-OD/-SPOT/-DEPIN and bare gpu_model forms. The description adds no syntax, format, or resolution-order 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?
The description states a specific verb and resource: 'Fetch the current published value for a FLOPS compute price index,' and even lists the returned fields, so the agent knows exactly what the call yields. It does not explicitly distinguish itself from the sibling get_index, so an agent cannot tell from the text alone whether get_index is the fuller/different counterpart.
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?
It positions itself as the 'cheapest way to answer what is the latest public reference price for X?', which implies usage context. However, it never names an alternative (get_index, search_indices, verify) or states a when-not condition, so routing between this and its siblings is left to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_indicesList public FLOPS indicesARead-onlyInspect
List all public FLOPS compute-price indices. Returns {count, indices[]} where each row is {index_id, family, value, unit, as_of, confidence, change_24h, delayed}. Use this to discover available indices before calling get_price or verify. No auth required.
| Name | Required | Description | Default |
|---|---|---|---|
| family_filter | No | Optional family prefix to filter by (e.g. 'FLOPS-H100' or 'FLOPS-B300'). Case-sensitive substring match. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only declare readOnlyHint=true; the description adds genuinely new behavioral facts: no authentication required and the presence of a 'delayed' flag per row, which hints at data freshness characteristics. It stops short of pagination, rate limits, or result-size limits, so it is not exhaustive.
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?
Three sentences, front-loaded with purpose, then return shape, then usage. Every sentence carries distinct information and there is 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, describing the return envelope and row fields is exactly the right compensation, and the no-auth note removes a common pre-call uncertainty for a discovery tool. Nothing an agent needs to call it 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?
Schema description coverage is 100% and the single family_filter parameter is fully documented in the schema, including examples and case-sensitivity. The description says nothing about the filter, so it adds no value here; 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 ('List all public FLOPS compute-price indices') with a clear scope qualifier ('public'). An agent can distinguish this enumeration tool from get_index/search_indices without inspecting schemas.
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 states the use case: 'Use this to discover available indices before calling get_price or verify,' which gives a clear call-ordering signal. It does not, however, contrast itself against the sibling search_indices or get_index, which is the one remaining ambiguity in a family of four lookup tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_indicesSearch FLOPS indicesARead-onlyInspect
Resolve a free-text query to canonical FLOPS index slugs. Use when you don't know the exact slug — e.g. 'H100 spot' returns the matching SPOT family entries. Best paired with get_price to look up + quote a value in one turn.
| Name | Required | Description | Default |
|---|---|---|---|
| q | Yes | Free-text query (e.g. 'h100 spot' or 'b200 on-demand'). | |
| limit | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, so safety is already covered. The description usefully describes the result shape (matching SPOT family entries) but says nothing about the result cap or the limit parameter's behavior, so it adds only modest context beyond the annotation.
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?
Three short sentences with the core function front-loaded, followed by the usage trigger and the pairing tip. No filler or restatement 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?
No output schema exists, and the description partially compensates by characterizing the return as canonical slugs with family matches. However, ranking behavior and how the limit truncates results go unaddressed, leaving a minor gap for a search 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 coverage is 50%: only 'q' is self-documented, and 'limit' (default 10, max 50) has no schema description. The description mentions the free-text query concept but adds no syntax or semantics for either parameter, so it fails to compensate for the coverage gap.
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 (resolve) and resource (free-text query → canonical FLOPS index slugs), which is a distinct capability from the exact-lookup siblings get_index and list_indices. A concrete example ('H100 spot' → SPOT family entries) makes the transformation unambiguous.
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 trigger: 'Use when you don't know the exact slug', which implicitly routes exact-slug lookups elsewhere. It also recommends pairing with get_price for a lookup+quote turn. It stops short of naming get_index as the explicit alternative for known slugs.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
verifyVerify a FLOPS valueARead-onlyInspect
Check a FLOPS index value against the published index. Pass value with a number you are about to cite (or already hold) and the response tells you whether it is right: verified true/false, expected (what you submitted), actual_value (what FLOPS publishes) and delta_pct. Omit value to simply look up the current published value — then verified is null, which means 'not checked', NOT 'correct'. Without an API key you are checked against the public value, which is rounded to 2 decimals and delayed onto a 6-hour grid, so a full-precision real-time number will not match anonymously. No source list or source-count is exposed.
| Name | Required | Description | Default |
|---|---|---|---|
| value | No | Optional. The number you want checked, e.g. 2.14. Omit it to do a plain lookup. | |
| index_id | Yes | FLOPS index identifier (e.g. 'FLOPS-H100-OD', 'FLOPS-B300-OD'). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only supply readOnlyHint, so the description carries the real burden and delivers: it enumerates the response fields (`verified`, `expected`, `actual_value`, `delta_pct`), disambiguates `verified: null` as 'not checked' rather than 'correct', and discloses the anonymous-mode rounding and 6-hour delay that will make full-precision numbers fail. It also states what is NOT exposed (no source list or source count).
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?
Front-loaded with the core action and outcome fields, and each sentence adds a distinct fact (params, null semantics, anonymous caveat, exclusions). It is dense and slightly run-on in the middle, but there is essentially 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?
There is no output schema, yet the description still enumerates the returned fields, and it covers the auth-mode caveat and the negative-result semantics an agent needs to interpret results correctly. Nothing material is missing for a 2-parameter read-only 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 coverage is 100%, so the baseline is 3, but the description adds genuine meaning beyond the schema: it explains the intent of `value` (a number you are about to cite) and the behavioral consequence of omitting it (verified becomes null). It adds little for `index_id`, which the schema already documents with examples.
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 ('Check a FLOPS index value against the published index') and covers both modes of the operation (verification vs. plain lookup). It is clearly distinguishable from siblings like get_index/get_price/list_indices/search_indices, which either fetch raw data or enumerate rather than validate a submitted value.
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 explicit conditional guidance: pass `value` when you are about to cite a number, omit it to do a plain lookup, and notes the API-key/anonymous-check tradeoff. It does not, however, name a sibling tool as the alternative for the lookup case (e.g., get_index), leaving that routing to inference.
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.
1 tool update
- Changed
verify1 field changed- changed
Input schema / properties / index_id / descriptionPrevious value: -"FLOPS index identifier (e.g. 'FLOPS-H100-OD', 'FLOPS-B300-SPOT')."New value: +"FLOPS index identifier (e.g. 'FLOPS-H100-OD', 'FLOPS-B300-OD')."
2 tool updates
- Changed
get_price1 field changed- changed
Input schema / properties / slug / descriptionPrevious value: -"FLOPS index slug. Accepts FLOPS-<MODEL>-OD, FLOPS-<MODEL>-SPOT, FLOPS-<MODEL>-OD-T1, FLOPS-B300-OD-NORDICS, or a bare gpu_model."New value: +"FLOPS index slug. Accepts FLOPS-<MODEL>-OD, FLOPS-<MODEL>-SPOT, FLOPS-<MODEL>-DEPIN, or a bare gpu_model."
- Changed
search_indices1 field changed- changed
Input schema / properties / q / descriptionPrevious value: -"Free-text query (e.g. 'b300 nordics on-demand')."New value: +"Free-text query (e.g. 'h100 spot' or 'b200 on-demand')."
1 tool update
- Changed
get_index1 field changed- changed
Input schema / properties / index_id / descriptionPrevious value: -"FLOPS index id / slug, e.g. 'FLOPS-H100-OD', 'FLOPS-A100-SPOT', 'ITPI-...'."New value: +"FLOPS index id / slug, e.g. 'FLOPS-H100-OD', 'FLOPS-A100-SPOT'."
1 tool update
- Changed
verify2 fields changed- changed
Input schema / properties / index_id / descriptionPrevious value: -"FLOPS index identifier (e.g. 'FLOPS-H100-OD-T1', 'FLOPS-B300-SPOT')."New value: +"FLOPS index identifier (e.g. 'FLOPS-H100-OD', 'FLOPS-B300-SPOT')." - added
Input schema / properties / valueAdded value: +{ + "description": "Optional. The number you want checked, e.g. 2.14. Omit it to do a plain lookup.", + "type": "number" +}
19 tool updates
- Removed
compute_margin - Removed
get_arbitrage_windows - Removed
get_basis - Removed
get_forecast - Removed
get_forecast_accuracy - Removed
get_inference_qos - Removed
get_iso_health_events - Removed
get_lmp_history - Removed
get_methodology - Removed
get_regional - Removed
get_regional_spread - Removed
get_sla_delta - Removed
get_timeseries - Removed
get_trading_catalog - Removed
get_trading_terminal - Removed
gpu_capex - Removed
list_methodologies - Removed
recompute_audit - Removed
spread
24 tool updates
- First observed
compute_margin - First observed
get_arbitrage_windows - First observed
get_basis - First observed
get_forecast - First observed
get_forecast_accuracy - First observed
get_index - First observed
get_inference_qos - First observed
get_iso_health_events - First observed
get_lmp_history - First observed
get_methodology - First observed
get_price - First observed
get_regional - First observed
get_regional_spread - First observed
get_sla_delta - First observed
get_timeseries - First observed
get_trading_catalog - First observed
get_trading_terminal - First observed
gpu_capex - First observed
list_indices - First observed
list_methodologies - First observed
recompute_audit - First observed
search_indices - First observed
spread - First observed
verify
Related MCP Servers
- AlicenseNot gradedqualityBmaintenancePerplexity for social: ask what competitors are running across social and get answers grounded in real ad and creative data, not guesses.2Apache 2.0
- AlicenseCqualityBmaintenanceCompetitor Monitor AI - MCP server providing AI-powered tools and automation by MEOK AI Labs119 npmMIT
- AlicenseAqualityCmaintenanceEnables brand visibility monitoring across major AI platforms like ChatGPT, Claude, Gemini, and Perplexity. It allows users to track visibility scores, analyze competitor data, and receive actionable insights to improve AI-generated brand recommendations.164 npm1MIT

industrylens-mcpofficial
AlicenseNot gradedqualityBmaintenanceBrowse IndustryLens's published competitive-intelligence reports and head-to-head competitor comparisons from any AI agent — real, source-backed data.MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.