Skip to main content
Glama
amar-mcp

amar-mcp

by sepehr071

Macro indicators

am_indicators
Read-onlyIdempotent

Read Iran's official macro-indicators workbook by topic and table, returning trade, housing, prices, budget and decile data with source release info.

Instructions

Read the Centre's monthly macro-indicators workbook: trade, housing, money, budget, prices by decile and more.

The workbook (شاخص های کلان اقتصادی و اجتماعی کشور) stacks about 100 small tables on 12 subjects, mostly annual and recent quarters or months. Call with no arguments for the topics, with topic for its table list (n, title), then with topic and table for the data: columns carry the combined header text, rows are [label, values...]. Dash and '000' placeholders come back as null. Data runs to different dates per table (housing prices stop at 1400, trade at 1404); the release it came from is in source. The newest file is found by title, so no id is needed.

Input Schema

NameRequiredDescriptionDefault
findNoOnly rows whose first cell contains this text (a year, province, month...)
lastNoRows to return: the latest ones in a time table, else the first
tableNoTable number from the topic's list, or Persian words of its title (e.g. 'اجاره', 'دهک')
topicNoSubject sheet: population (and labour, education), household (income, expenditure, Gini, deciles), accounts (national accounts), prices (CPI by decile or province, PPI, food prices), money, budget (government finance), trade (exports, imports, balance of payments), stock, energy, industry, housing (permits, price and rent), agriculture. Omit to list all topics.
max_colsNoColumns to return
col_offsetNoSkip this many columns on the left (wide tables)

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.1

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent, non-destructive and openWorld, so safety is covered; the description adds genuinely new behavior: dash and '000' placeholders are returned as null, data ends at different dates per table, the release is exposed in `source`, and the newest file is located by title rather than id. It does not discuss truncation limits beyond the row/column parameters, which keeps it from a 5.

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 workbook purpose and the call sequence are front-loaded, and the two paragraphs earn most of their space with caveats about placeholders, per-table date ranges and output row shape. The Persian title and topic parentheticals add some bulk but carry real disambiguation value.

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?

There is no output schema, yet the description explains the return shape (combined header columns, rows as [label, values...]), the null encoding for placeholders, uneven date coverage across tables, and where provenance lives. For a 6-parameter read-only research tool that is enough for an agent to call it correctly in a single pass.

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 the schema already documents find, last, table, topic, max_cols and col_offset, establishing a baseline of 3. The description adds procedural meaning by linking topic and table into a drill-down and noting no id is needed because the newest file is found by title, but it does not deepen the filtering or slicing parameters further.

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 states a specific verb and resource: read the Centre's monthly macro-indicators workbook, and it spells out the 12 subject areas (trade, housing, money, budget, prices) plus the ~100 stacked tables. It does not explicitly name a sibling to distinguish itself from, e.g. am_table or am_inflation, so it stays at 4 rather than 5.

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

Usage Guidelines4/5

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

It gives a clear progressive call sequence: no arguments lists topics, `topic` returns the table list, and `topic` + `table` returns data. What is missing is any exclusion or alternative routing (when to use am_inflation or am_ppi instead of this workbook), so it is strong context without explicit 'when not to use'.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.