Skip to main content
Glama

History analysis

analyze_history
Read-onlyIdempotent

Trends, comparisons & 'movers': % change, strength, and min/max/avg over a window. Growth plan or higher.

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "analyze_history"
  }
}

Input Schema

NameRequiredDescriptionDefault
toNoWindow end YYYY-MM-DD (UTC). Defaults to today; a future date clamps to today.
baseNoCurrency everything is measured against (3-letter ISO 4217). Defaults to USD.
fromNoWindow start YYYY-MM-DD (UTC). Defaults to 20 years (2 decades) before `to`. See `period` for a shorthand.
sortNoMovers ranking: strengthened (default) or weakened.
limitNoMovers: how many top results to return (default 10, max 200).
statsNoInclude min/max/avg over the window per currency. Defaults to true; pass false to skip.
periodNoRelative window shorthand for `from`: e.g. 10y, 6m, 30d, ytd, max. Ignored if `from` is given.
intervalNoAttach a trend series per named currency: weekly, monthly, or yearly (compare mode only).
assetClassNoMovers universe: fiat (default, the liquid tradeable currencies), metals (XAU/XAG/XPT/XPD), or all (every currency incl. illiquid/frontier). fiat excludes metals/synthetics + illiquid frontier codes; redenomination artifacts are always dropped.
currenciesNoComma-separated currencies to compare, e.g. GBP,EUR,AED. OMIT to rank ALL currencies vs base ('movers' mode).

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false, and openWorldHint=false, so the safety profile is fully covered. The description adds one genuinely new behavioral fact, the plan-tier requirement, but says nothing about output volume, defaults for a 20-year window, or cost of unconstrained 'movers' ranking.

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?

A single dense sentence, front-loaded with the analysis categories and ending with the entitlement constraint. Nothing is padded, though the extreme compression leaves terms like 'strength' and 'movers' undefined for a first-time caller.

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

Completeness3/5

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

With 10 parameters, no required fields, and no output schema, the description should clarify at minimum the two operating modes and what a result looks like. It implies the modes but never states that omitting currencies switches to ranking, and the returned statistics ('strength') are left unexplained.

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

Parameters3/5

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

Schema description coverage is 100%, so every parameter is already documented in the schema, including period shorthand, assetClass universes, and the movers/compare switch via omitting `currencies`. The description adds only the high-level notion of a window and the movers/comparison modes, which is baseline-appropriate given how much the schema already carries.

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

Purpose4/5

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

The description names a specific analysis resource and enumerates the outputs it produces ('% change, strength, and min/max/avg over a window'), plus the 'movers' framing, which separates it from siblings such as analyze_volatility or analyze_correlation. It stops short of explicitly naming what it is not, and 'strength' is never defined, so it falls just short of a 5.

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

Usage Guidelines2/5

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

'Growth plan or higher' is an entitlement note, not usage guidance; there is no statement of when to pick this over get_history, analyze_volatility, or the other analyze_* siblings. The only routing signal ('movers' vs comparisons) lives in the schema description of `currencies`, not in the description.

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