Skip to main content
Glama
iran-bourse-mcp

iran-bourse-mcp

by msmahdinejad

order_book_history

Read-onlyIdempotent

Rebuild a symbol’s intraday order-book evolution with sampled depth and buy/sell queue episodes, including peak queue sizes, for a chosen date and time range.

Instructions

Intraday order-book evolution rebuilt from every event: sampled depth plus buy/sell queue episodes with peak sizes (تاریخچه صف خرید و فروش).

Input Schema

NameRequiredDescriptionDefault
dateNoGregorian 2026-11-03 / 20261103 or Jalali 1405/08/12. Omit for the latest trading day.
symbolYesPersian symbol such as 'فولاد', or an insCode
to_timeNoHH:MM[:SS] Tehran time
from_timeNoHH:MM[:SS] Tehran time
step_secondsNoSampling step

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 readOnlyHint, idempotentHint, openWorldHint and destructiveHint=false, so safety is covered. The description adds genuine content-level context beyond that — data is event-rebuilt rather than snapshot, sampled at intervals, and includes queue episodes with peak sizes. It stops short of disclosing data volume, whether empty windows or non-trading days return errors, or how the sampled series is bounded, which matters for a potentially large intraday pull.

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 front-loaded sentence that leads with the resource and follows with the payload contents, with no filler. The parenthetical Persian alias is a compact disambiguation aid rather than padding. Slightly dense, but every clause carries information.

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

Completeness4/5

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

With 5 parameters, a single required field, rich annotations and no output schema, the description does the necessary job of telling the agent what the returned data represents (sampled depth plus queue episodes with peak sizes). Residual gaps are around result size and edge-case behavior for empty or out-of-session windows, which are secondary for a read-only query tool.

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 formats for date (Gregorian/Jalali), symbol (Persian name or insCode), from_time/to_time and step_seconds are already fully documented in the schema. The description only loosely echoes 'sampled depth', which hints at step_seconds, and adds no meaning beyond what the schema supplies; baseline 3 applies.

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 resource ('intraday order-book evolution') and a specific mechanism ('rebuilt from every event'), then enumerates contents: sampled depth and buy/sell queue episodes with peak sizes. It implicitly contrasts with the snapshot-style sibling 'order_book' but never names it, so sibling differentiation is left to inference.

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?

There is no explicit when-to-use or when-not-to-use guidance, and no sibling is named as an alternative. An agent must infer from 'Intraday ... evolution' that this is the historical/reconstructed variant rather than the live 'order_book' snapshot, which is a reasonable but unstated inference.

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