Skip to main content
Glama

Get price index history

get_price_index_history
Read-only

Use to show how AI agent and MCP prices have moved over time: the dated Agent Economy Price Index series, the same chained like-for-like series agentery.com/aepi charts. Points are index levels (base 100), never prices. Whole-economy series by default; tier for one buyer tier; provider_type agent|mcp for one delivery type (own base 100); period 30d (default) / 90d / all; response_mode summary (default) or full (adds gap flags). Thin data returns insufficient_history, never an invented series. For what one capability costs use price_benchmark or market_report. Also reads a private custom benchmark's history via benchmark_id.

Input Schema

NameRequiredDescriptionDefault
tierNoReturn one buyer tier's series ('team' = Team/SME). Default 'all' = the headline series.
sinceNoOptional, for providers that poll: the `cursor` (or `next_cursor`) from your previous call, or an ISO timestamp of your last check. Returns only what changed since then: new_points (newly published days), corrected_points (earlier days whose published level changed, with previous_level) and withdrawn_points, plus next_cursor for the next call. status 'no_changes' when nothing changed. Omit for the full history.
periodNoHistory window. Default '30d'.
benchmark_idNoOptional: a private custom benchmark token (cb_…) — returns that cohort's dated series instead of the economy series. Cannot be combined with niche.
provider_typeNo'all' (default) = the combined whole-economy series, or the standalone 'agent' / 'mcp' / 'subscription' / 'hybrid' / 'one_off' / 'payg' = the billing-LENS series (they cut across provider/mcp; a rate sits in one delivery type AND one lens; own base 100) — 'payg' (pay-as-you-go, engine v2) series (own base 100).
response_modeNo'summary' (default, compact) or 'full'.

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "additionalProperties": true,
      +  "description": "JSON result; identical to the text content block.",
      +  "type": "object"
      +}
  2. Changed1 schema field changed
    • addedInput schema / properties / since
      Added value: +{
      +  "description": "Optional, for providers that poll: the `cursor` (or `next_cursor`) from your previous call, or an ISO timestamp of your last check. Returns only what changed since then: new_points (newly published days), corrected_points (earlier days whose published level changed, with previous_level) and withdrawn_points, plus next_cursor for the next call. status 'no_changes' when nothing changed. Omit for the full history.",
      +  "type": "string"
      +}
  3. Changed2 schema fields changed
    • changedInput schema / properties / provider_type / description
      Previous value: -"'all' (default) = the combined whole-economy series, or the standalone 'agent' / 'mcp' / 'payg' (pay-as-you-go, engine v2) series (own base 100)."New value: +"'all' (default) = the combined whole-economy series, or the standalone 'agent' / 'mcp' / 'subscription' / 'hybrid' / 'one_off' / 'payg' = the billing-LENS series (they cut across provider/mcp; a rate sits in one delivery type AND one lens; own base 100) — 'payg' (pay-as-you-go, engine v2) series (own base 100)."
    • changedInput schema / properties / provider_type / enum
      Previous value: -[
      -  "all",
      -  "agent",
      -  "mcp",
      -  "payg"
      -]New value: +[
      +  "all",
      +  "agent",
      +  "mcp",
      +  "subscription",
      +  "hybrid",
      +  "one_off",
      +  "payg"
      +]
  4. Changed2 schema fields changed
    • changedInput schema / properties / provider_type / description
      Previous value: -"'all' (default) = the combined whole-economy series, or the standalone 'agent' / 'mcp' series (own base 100)."New value: +"'all' (default) = the combined whole-economy series, or the standalone 'agent' / 'mcp' / 'payg' (pay-as-you-go, engine v2) series (own base 100)."
    • changedInput schema / properties / provider_type / enum
      Previous value: -[
      -  "all",
      -  "agent",
      -  "mcp"
      -]New value: +[
      +  "all",
      +  "agent",
      +  "mcp",
      +  "payg"
      +]
  5. Changed2 schema fields changed
    • addedInput schema / properties / benchmark_id
      Added value: +{
      +  "description": "Optional: a private custom benchmark token (cb_…) — returns that cohort's dated series instead of the economy series. Cannot be combined with niche.",
      +  "type": "string"
      +}
    • changedInput schema / properties / provider_type / enum
      Previous value: -[
      -  "all",
      -  "provider",
      -  "mcp"
      -]New value: +[
      +  "all",
      +  "agent",
      +  "mcp"
      +]
  6. Changed4 schema fields changed
    • removedInput schema / properties / niche
      Removed value: -{
      -  "description": "For scope 'niche': a canonical niche slug or natural-language query.",
      -  "type": "string"
      -}
    • changedInput schema / properties / provider_type / description
      Previous value: -"Delivery-type scope for scope 'aepi': 'all' (default), or the standalone 'agent' / 'mcp' series (own base 100). Per-type niche history is a Phase-2 follow-up; acknowledged, not silently applied, on scope 'niche'."New value: +"'all' (default) = the combined whole-economy series, or the standalone 'agent' / 'mcp' series (own base 100)."
    • removedInput schema / properties / scope
      Removed value: -{
      -  "description": "'aepi' (default) or 'niche'.",
      -  "enum": [
      -    "aepi",
      -    "niche"
      -  ],
      -  "type": "string"
      -}
    • changedInput schema / properties / tier / description
      Previous value: -"For scope 'aepi', return one buyer tier's series ('team' = Team/SME). Default 'all' = the headline series."New value: +"Return one buyer tier's series ('team' = Team/SME). Default 'all' = the headline series."
  7. Changed1 schema field changed
    • changedInput schema / properties / provider_type / enum
      Previous value: -[
      -  "all",
      -  "agent",
      -  "mcp"
      -]New value: +[
      +  "all",
      +  "provider",
      +  "mcp"
      +]
  8. Changed1 schema field changed
    • addedInput schema / properties / provider_type
      Added value: +{
      +  "description": "Delivery-type scope for scope 'aepi': 'all' (default), or the standalone 'agent' / 'mcp' series (own base 100). Per-type niche history is a Phase-2 follow-up; acknowledged, not silently applied, on scope 'niche'.",
      +  "enum": [
      +    "all",
      +    "agent",
      +    "mcp"
      +  ],
      +  "type": "string"
      +}
  9. Added

TDQS

A4.8/5.0
Behavior5/5

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

Beyond the readOnly/non-destructive annotations, it discloses that units are index levels never prices, that 'response_mode full adds gap flags', and that thin data returns 'insufficient_history, never an invented series' — a real behavioral guarantee. It also notes provider_type lenses have their own base 100, which changes how results must be interpreted.

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 purpose and units, and every clause carries information. It is dense and backtick-heavy, reading more like a compressed spec than a description, but no sentence is filler.

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 an output schema present, the description needn't enumerate fields, and it still covers the edge cases an agent must handle: insufficient_history on thin data, gap flags in full mode, and cursor-style incremental reads via `since`. Nothing needed 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.

Parameters4/5

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 meaning the schema does not carry: 'full' mode adds gap flags, tier selects 'one buyer tier' versus the default whole-economy series, and provider_type lens series are clarified as cutting across provider types. The `since` polling semantics live only in the schema, so the description doesn't fully duplicate that, which is fine.

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 first clause names a specific output ('the dated Agent Economy Price Index series, the same chained like-for-like series agentery.com/aepi charts') and immediately clarifies what the numbers are ('index levels (base 100), never prices'). It explicitly separates itself from price_benchmark and market_report, so an agent can pick it over siblings without opening the schema.

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?

'Use to show how AI agent and MCP prices have moved over time' gives a positive trigger, and 'For what one capability costs use price_benchmark or market_report' names the alternatives and the condition that selects them. The benchmark_id clause further scopes it to private-cohort history versus the default economy series.

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