Skip to main content
Glama
iran-bourse-mcp

iran-bourse-mcp

by msmahdinejad

market_snapshot

Read-onlyIdempotent

Retrieve an end-of-day table of every instrument for a past trading date, with optional filters by security type and sorting by value, volume, trades, or change percent.

Instructions

End-of-day table for every instrument on a past date (تاریخچه کل بازار در یک روز).

Input Schema

NameRequiredDescriptionDefault
dateYesGregorian or Jalali date of a past trading day
limitNo
sort_byNovalue, volume, trades, change_pctvalue
security_typeNostock, fund or bond

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare readOnly, idempotent, openWorld and non-destructive, so the safety profile is covered. The description adds that results are end-of-day rather than intraday and are scoped to a past date, but it leaves a tension unexplained: 'every instrument' versus a schema default limit of 30 (max 300), leaving the agent unsure whether the response is truncated by default.

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?

One front-loaded sentence with the resource and scope stated immediately, followed by a bilingual gloss. The Persian parenthetical is a faithful duplicate rather than new information, so it is mild padding, but the sentence is otherwise efficient.

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 four parameters, one required, no output schema and modest annotation detail, the definition should clarify what a 'table' row contains (price, volume, change) and how limit interacts with the 'every instrument' claim. It orients the agent adequately but omits those operational details.

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 coverage is 75% – date and sort_by are documented, limit and security_type are weakly or only partially described – so the schema does most of the work. The description reinforces that the date must be a past trading day but adds nothing about limit truncation, sort semantics, or the stock/fund/bond filter values.

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?

States a concrete deliverable: an end-of-day table covering every instrument for a specified past date, which tells an agent this is a cross-sectional, single-day snapshot. It stops short of naming or excluding siblings such as market_overview, market_watch or price_history, so the distinction must be inferred from the 'every instrument / one date' scope.

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?

The only guidance is the implicit constraint 'on a past date' – useful, since it tells the agent not to use it for live data. There is no explicit when-to-use, no stated alternative for current-day or per-symbol queries, and no prerequisites such as needing a valid trading day.

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