Skip to main content
Glama

calculate

Read-onlyIdempotent

Create a derived series from two indicators using an Excel-style op: ratio (A/B), ratio_pct (A/B100), diff (A-B), sum (A+B), product (AB). Returns the per-timepoint result + summary. Use for things like debt-to-GDP ratio, revenue-per-employee, spread between two yields. autario refuses to combine columns of different kinds. Read the semantics field of the schema before combining two columns. A refused call answers error_code incompatible_semantics with both columns, the reason, and the ops that WOULD work (e.g. spend and clicks do not add but divide into cpc); pass override=true with a reason to compute it anyway, and the reason is returned with the result. Every result carries a computation block naming the columns, kinds, rows and window it used. Runs on any verified autario indicator (World Bank, FRED, Eurostat, OECD, IMF, WHO, ECB, US Census, SEC).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
aYes
bYes
opNoratio | ratio_pct | diff | sum | product
fullNoReturn the full raw time series (heavy, many tokens). Default false → you get only the summary/stats, which is enough to ANSWER a question. Set true only when you must plot or export every point.
timeNo
entityYes
reasonNoWhy the refused combination is correct here. Returned with the result so a human can audit the decision.
overrideNoCompute a combination autario refused as incompatible. Requires `reason`.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • addedInput schema / properties / override
      Added value: +{
      +  "description": "Compute a combination autario refused as incompatible. Requires `reason`.",
      +  "type": "boolean"
      +}
    • addedInput schema / properties / reason
      Added value: +{
      +  "description": "Why the refused combination is correct here. Returned with the result so a human can audit the decision.",
      +  "type": "string"
      +}
  2. Changed1 schema field changed
    • addedInput schema / properties / full
      Added value: +{
      +  "description": "Return the full raw time series (heavy, many tokens). Default false → you get only the summary/stats, which is enough to ANSWER a question. Set true only when you must plot or export every point.",
      +  "type": "boolean"
      +}
  3. First observed

TDQS

A4.9/5.0
Behavior5/5

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

Annotations already declare readOnlyHint and idempotentHint, so the tool is safe. The description goes further by explaining the refusal behavior (error_code incompatible_semantics), the override mechanism with audit reason, and that every result includes a computation block with columns, kinds, rows, and window. It also clarifies the 'full' parameter's heavy token cost and default summary-only behavior, which is critical for cost-aware selection.

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 dense but tightly written, with each sentence covering an essential aspect: operations, use cases, refusal behavior, override path, result structure, and supported data sources. Front-loading the verb and operations helps. Minor deduction for being long (3-4 sentences) and listing many sources at the end, but all is relevant.

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 tool's complexity (8 params, 50% schema coverage, no output schema), the description covers all critical aspects: operation semantics, use cases, failure modes (incompatible semantics), override with audit trail, result computation block, full vs summary output, and data source compatibility. An agent has enough to call it correctly and handle errors. The only missing piece is a note that no output schema exists, but that's minor.

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

Parameters5/5

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

While schema coverage is only 50%, the description compensates by explaining the semantics of the op parameter ('Excel-style op: ratio, ratio_pct, diff, sum, product'), the role of a and b as two indicators, and the meaning of full (returns full series vs summary) and reason/override (justification for overrides, returned for audit). It adds depth beyond the schema's terse 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?

The description opens with a precise verb ('Create a derived series') and names the exact resource (two indicators) plus the operations supported (ratio, ratio_pct, diff, sum, product). It clearly distinguishes from siblings like 'pct_change' and 'correlate' by focusing on pairwise arithmetic combinations, and the examples (debt-to-GDP) make the use case concrete.

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?

It explicitly states when to use it (debt-to-GDP, revenue-per-employee, yield spreads) and when to avoid it: it mentions that autario refuses to combine columns of different semantic kinds, and instructs the agent to read the schema's semantics field before combining. It also describes what to do on refusal (override with reason), covering both standard and edge cases.

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