Skip to main content
Glama

get_hbm_market_data

Read-onlyIdempotent

Returns 10 HBM market sub-tables: accelerators, specs, marketShare, spotPrices (RETIRED 2026-07-28 — frozen), leadingIndicators, qualificationFeed, revenueForecast, supplierRevenue, validationChecks, bitDemand. Optional table parameter narrows to a single sub-table; omitting returns all 10.

USE THIS for: HBM3/3e/4 generation specs, SK Hynix/Samsung/Micron market share, derived HBM bit demand by SKU class and customer type (bitDemand, EB ranges, monthly).

spotPrices is a RETIRED series: no public HBM spot market exists in any generation — HBM sells via annual/multi-year LTAs. Its rows are frozen estimates served for the record with per-row retired marking; for current, sourced HBM pricing use get_market_dataset with dataset='hbm-pricing'.

bitDemand is NOT a workload split — it is a SKU-class/customer-type cut. Dominant HBM SKUs are dual-use, so a training-vs-inference HBM attribution would be dishonest; no public source publishes one.

DO NOT USE for: HBM price history or current HBM pricing (use get_market_dataset dataset='hbm-pricing'); per-accelerator HBM cost in a specific chip (use get_accelerator_costs.costBreakdown.hbmCostUsd); HBM cost in a hypothetical chip cost calc (use calculate_chip_cost with hbmStacks/hbmCost).

Returns INTERNAL_ERROR if the upstream Supabase HBM tables are unreachable. Research tables refresh Mon/Thu; bitDemand refreshes monthly (1st); spotPrices is frozen (retired 2026-07-28) and does not refresh.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
tableNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedInput schema / properties / table / enum
      Previous value: -[
      -  "accelerators",
      -  "specs",
      -  "marketShare",
      -  "spotPrices",
      -  "leadingIndicators",
      -  "qualificationFeed",
      -  "revenueForecast",
      -  "supplierRevenue",
      -  "validationChecks"
      -]New value: +[
      +  "accelerators",
      +  "specs",
      +  "marketShare",
      +  "spotPrices",
      +  "leadingIndicators",
      +  "qualificationFeed",
      +  "revenueForecast",
      +  "supplierRevenue",
      +  "validationChecks",
      +  "bitDemand"
      +]
  2. First observed

TDQS

A4.8/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly/idempotent/non-destructive, but the description adds material context those annotations cannot convey: spotPrices is a RETIRED, frozen series with per-row retired marking, bitDemand is a SKU-class/customer-type cut rather than a workload split, refresh cadences differ per table (Mon/Thu vs monthly vs never), and the tool returns INTERNAL_ERROR when upstream tables are unreachable. This is exactly the behavioral depth annotations cannot supply.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with what is returned, then usage routing, then behavioral caveats — a sensible order. It is long but most sentences carry unique information; the only waste is that spotPrices' retirement is stated three times (inline enum annotation, the dedicated paragraph, and the refresh cadence note), which could be consolidated.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description carries the full burden of explaining returns, and it does so thoroughly: it names all 10 sub-tables, explains the shapes of the non-obvious ones (bitDemand EB ranges monthly, spotPrices retired rows), covers the error case, and gives refresh expectations. An agent has enough to call this correctly and interpret the result.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% and the single enum param carries no per-value documentation in the schema, so the description must compensate — and it largely does by enumerating all 10 sub-tables and explaining the default behavior when `table` is omitted (returns all 10). It also disambiguates the meaning of the trickiest values (spotPrices retired, bitDemand as SKU/customer cut). Minor deduction only because the raw enum list is duplicated from the schema rather than adding new meaning for every value.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource (returns 10 named HBM market sub-tables) and enumerates exactly which payloads are available, so an agent knows the content without opening a schema. It further distinguishes itself by contrasting with get_market_dataset, get_accelerator_costs, and calculate_chip_cost.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicit 'USE THIS for' and 'DO NOT USE for' blocks name the conditions AND the alternative tool to use instead for each excluded case (pricing -> get_market_dataset dataset='hbm-pricing', per-chip cost -> get_accelerator_costs, hypothetical -> calculate_chip_cost). Nothing 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.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources