Skip to main content
Glama
sepehr071

shopino-mcp

by sepehr071

Product details

sh_product
Read-onlyIdempotent

Fetch a product's full record—price and discount in Toman, color/size variants, stock, size guide, shop rating, and original link—to verify cost, availability, and seller trust after a search.

Instructions

Get one product's full record: price and discount (Toman), every color / size variant with its own price and units in stock, size guide, description, tags, the selling shop with its rating and buyer survey, and the original link on the shop's own website.

Use after sh_search / sh_browse when the user picks a product, to check that their size and color is in stock and what it costs, and whether the shop is trustworthy. Same item elsewhere: sh_similar. More from the shop: sh_browse(shop_id=...). Related products: sh_browse(tag=...).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
product_idYesProduct id from sh_search / sh_browse, e.g. 2578018.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false and openWorldHint, so the safety profile is covered. The description adds value by enumerating the fields a record carries (variants, stock, shop rating, buyer survey), but says nothing about auth needs, rate limits, or behavior when the product id is stale/removed. Adequate but not rich beyond structured data.

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?

Front-loaded with the core action, then a dense field list, then routing guidance. Every clause is informative, though the long comma-separated field inventory is close to the limit of what belongs in a description when an output schema already exists.

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?

For a single-id lookup with full schema coverage, complete annotations, and an output schema, an agent needs purpose, trigger, and sibling routing — all present. Nothing required to invoke or interpret the call correctly is missing.

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?

Only one parameter, and schema coverage is 100% — the schema already documents product_id with bounds (1..100000000) and an example id (2578018) plus its provenance. The description adds no additional parameter semantics, so the baseline of 3 applies.

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?

States a specific verb and resource ('Get one product's full record') and then enumerates the actual contents (price/discount in Toman, variants with stock, size guide, shop rating, original link). This clearly distinguishes it from sh_search/sh_browse (which find products) and sh_similar (which finds substitutes).

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?

Gives an explicit trigger ('Use after sh_search / sh_browse when the user picks a product') plus the intent behind the call (check size/color stock, price, shop trustworthiness), and names concrete alternatives with argument hints: sh_similar, sh_browse(shop_id=...), sh_browse(tag=...).

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