Skip to main content
Glama

Kyrodata — Brazil Trade, Crop & Commodity Data

Build a like-for-like comparison window

kyrodata_resolve_comparison_window
Read-onlyIdempotent

Resolves an equal-length comparison window (like-for-like) for the trade data, anchored on the last fully published month, and returns ONLY the window metadata — from, to, label, months and whether it crosses a season. No figures. mode splits into two families, and the split is what matters: quarterly, semestral, annual, ytd and rolling_3m/6m/12m compare against the same period a year earlier and hold the season constant, while monthly and semestral_sequential compare against the period immediately before and therefore cross one. ytd runs January to the last published month, in both years. This exists to NAME a window in prose before it is described. The same window resolved internally and answered with value and volume in one call is kyrodata_compare_trade. Credit class: free (0 credits).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
modeYesWhich pair of equal-length windows to compare. Against the same period a year earlier: `quarterly`, `semestral`, `annual`, `ytd` (January to the last published month) and `rolling_3m`/`6m`/`12m`. Against the period immediately before, which crosses a season: `monthly` and `semestral_sequential`. Use `ytd` when the question names no period.
response_formatNoHow much of the answer to return. `concise` (the default) carries the headline figures; `detailed` adds the row-level series behind them and counts against the export quota.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
dataYesRaw numbers behind the text.
memoYestrue = identical call in the last 10 min, served again: 0 credits.
rowsNoTable rows; detailed only, capped per tool.
errorNoFailure message when status = error.
linksYesscreen = product page with these numbers.
deniedNoWhen status = denied: reason, feature, upgradeUrl.
statusYesok = data; denied = plan; error = failure or timeout.
windowNoLike-for-like window: from, to (YYYY-MM), label, months, crossesSeason.
caveatsYesReading caveats.
creditsYescharged, balance (null = unlimited), resetAt, session {charged, endsAt} of the 60-s billing session.
sourcesYesPer source: label, nameable, asOf.
dataVersionYesIdentity of the data that answered.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.6/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint false. The description adds that it returns ONLY metadata (from, to, label, months, season-crossing flag) and no figures, and that it is free (0 credits). It also explains the behavioral consequence of crossing a season for certain modes. This is more than the annotations alone convey, though it doesn't detail the exact output structure (but an output schema exists).

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?

The description is moderately long but every sentence carries weight: purpose, mode family explanation, usage note, reason for existence, alternative, and credit cost. It is front-loaded with the core purpose and flows logically. Slightly dense, but not wasteful.

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?

Given the complexity of 9 enum modes and the need to pick correctly, the description fully covers the mode semantics, what is returned (metadata fields), the cost, and the alternative for value/volume. An agent can confidently select and invoke this tool without further ambiguity.

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 both parameters are documented. The description adds significant meaning to the 'mode' parameter by grouping the nine enums into two families (year-over-year vs sequential) and explaining the season-crossing implication, plus the special 'ytd' behavior and the 'use ytd when no period is named' rule. This goes well beyond the schema's per-value descriptions.

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?

States a specific verb ('Resolves') and resource ('equal-length comparison window') anchored on the last fully published month, and explicitly distinguishes itself from kyrodata_compare_trade by noting it exists only to NAME a window in prose. This is unambiguous and clearly separate from siblings.

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?

Provides explicit when-to-use guidance: it names the alternative (kyrodata_compare_trade) that handles value/volume in one call, and instructs to use 'ytd' when no period is named. It also explains the mode split into two families, so an agent knows exactly which mode fits the question.

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