Skip to main content
Glama
sepehr071

digikala-mcp

by sepehr071

Product details and offers

dk_product
Read-onlyIdempotent

Retrieve a single Digikala product's price, stock, rating, specifications, and all seller offers sorted by price to compare options before buying.

Instructions

Get one product's price, stock, rating, specs and every seller's offer (cheapest first).

Each offer is one color/size from one seller, with price in Toman, stock_left (only shown when low), warranty, seller rating 0-5 and shipping (ships_by: 'digikala', 'jet' = same-day in Tehran/Karaj, 'seller'; free_shipping when the seller ships free). lowest_price_30d is Digikala's own figure and can be a one-day dip of one color; dk_price_history (lowest_2_days) is steadier. Exact shipping cost is only known at checkout. Grocery items come from the supermarket store (store='supermarket'): its price can differ from the main-store price that dk_search, dk_compare and dk_price_history show.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
max_offersNoMax seller offers to return, cheapest first.
product_idYesDigikala product id, the number in 'dkp-<id>' (from dk_search etc.), e.g. 20109389.
include_specsNoInclude the specification table.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.4/5.0
Behavior5/5

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

Annotations already cover the safety profile (readOnly, idempotent, non-destructive), so the bar is lower, yet the description adds substantial behavior: exact offer field meanings (price in Toman, stock_left only shown when low, seller rating 0-5, ships_by values decoded, free_shipping), the caveat that lowest_price_30d can be a one-day dip, and that exact shipping cost is only known at checkout.

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 purpose and returned-field inventory are front-loaded, and virtually every sentence carries non-obvious information (enum meanings, price-source caveats). Some sentences are densely run-on (the ships_by clause), which slightly hurts readability but wastes little space.

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?

With an output schema present, the description need not explain return values, yet it goes further by decoding offer fields and flagging cross-tool price discrepancies. Combined with the annotations, an agent has everything needed to call this correctly and interpret the result.

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 product_id, max_offers and include_specs are already documented in the schema; baseline 3 applies. The description adds no further parameter guidance (e.g. it never mentions the 50-offer cap or the specs toggle), so it does not exceed the schema.

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 price, stock, rating, specs and every seller's offer') with scope qualifiers ('cheapest first'). It even differentiates itself from siblings by naming dk_search, dk_compare and dk_price_history, so an agent can tell the detailed single-product view apart from the search/compare tools.

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?

Clear context is implied throughout: this is the per-product detail tool, and the caveat that grocery items' prices differ from what dk_search/dk_compare/dk_price_history show tells the agent which source wins for supermarket items. There is no explicit 'use this instead of X when Y' routing statement, so it falls short of a 5.

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