Skip to main content
Glama
torob-mcp

torob-mcp

by sepehr071

In-person stores

tb_stores
Read-onlyIdempotent

Find in-person shops that stock a product, with address, opening hours, open-now status, shelf price and price age. Use to check if you can buy it today nearby.

Instructions

In-person shops that stock a product: address, opening hours, open now, shelf price and its age.

Use for "can I buy it today near me". Online offers: tb_sellers.

Input Schema

NameRequiredDescriptionDefault
cityNoCity id or name: only offers serving that city.
limitNo
productYesProduct id (UUID) or torob.com product URL.
with_locationNoAdd lat/lon.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed4 schema fields changedv0.2.0
    • changedInput schema / properties / city / description
      Previous value: -"City id or name (e.g. 'مشهد' or 468): only offers that deliver to / sit in that city."New value: +"City id or name: only offers serving that city."
    • removedInput schema / properties / limit / description
      Removed value: -"Rows to return (default 15, max 50)."
    • changedInput schema / properties / product / description
      Previous value: -"Product id (the UUID from search cards, e.g. '57ea65ae-0798-4cd0-96a7-38d8af180345'), a '/p/<id>/...' path or a full torob.com product URL."New value: +"Product id (UUID) or torob.com product URL."
    • changedInput schema / properties / with_location / description
      Previous value: -"Add map coordinates (lat, lon) of each store."New value: +"Add lat/lon."
  2. 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 this a read-only, idempotent, non-destructive open-world query, so the safety profile is covered. The description adds value the annotations cannot: it discloses what each result carries, including freshness cues like opening hours and "open now" plus the age of the shelf price, which tells the agent the data is time-sensitive. It does not mention result volume or how the limit behaves, leaving a small gap.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two compact sentences: the first front-loads what the tool returns, the second handles intent and redirection to the sibling. Nothing is redundant with the schema or annotations.

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 four parameters, no output schema, and a physically-located-data scope, the description carries the right load by enumerating return fields and framing the use case. Missing pieces are minor: nothing about result ordering or how the limit interacts with the open-now framing.

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 75%, with city, product, and with_location documented inline, so the baseline is 3. The description adds no parameter-level detail — no syntax for the product identifier or city, no note on what with_location costs in response size. The undocumented limit parameter is bounded by schema min/max/default, so little is lost.

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 the resource and its scope precisely — physical shops stocking a given product — and enumerates the returned attributes (address, opening hours, open-now status, shelf price and price age). It explicitly contrasts with tb_sellers for online offers, so an agent can separate the two. It stops short of distinguishing itself from other shop-related siblings such as tb_find_shops, tb_shop, or tb_shop_products.

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?

"Use for 'can I buy it today near me'" gives a concrete, recognisable intent that maps cleanly to the tool, and the trailing "Online offers: tb_sellers" routes the agent away when the intent is online-only. There are no explicit exclusions against the other shop/location siblings, so the guidance is clear but not exhaustive.

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