Skip to main content
Glama
sepehr071

digikala-mcp

by sepehr071

Best sellers

dk_best_sellers
Read-onlyIdempotent

List Digikala's current best-selling products overall or by main category. Returns category IDs for follow-up queries.

Instructions

List Digikala's current best-selling products, overall or in one main category.

Returns the main categories with their ids too, for a second call with category_id.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
limitNoMax products to return.
category_idNoMain category id from dk_categories (no arguments) or this tool's `categories`, e.g. 1 for mobile. Leaf ids are rejected.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A3.8/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, which covers the safety profile. The description adds that main categories with ids come back in the response, a useful behavioral detail, but says nothing about result ordering, pagination, or truncation behavior at the limit cap.

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 short sentences with the primary action and scope stated first and the follow-up workflow second; nothing is redundant and no filler is present.

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 an output schema present, return values need not be explained, and the description does the extra job of flagging the category-id handoff. It is nearly complete, though it never clarifies that results are ranked by sales volume or what happens to limit behavior, which are minor gaps for a 2-param read 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 both limit and category_id are already fully documented in the schema, including the leaf-id rejection rule and the example id. The description only restates the overall-vs-one-category notion, adding no syntax or format detail beyond structured data.

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 specific verb and resource (list Digikala's current best-selling products) plus the scope axis (overall or one main category), which sets it apart from leaf-level tools like dk_category_products. No sibling is named explicitly, so an agent still has to infer the boundary versus dk_deals or dk_search.

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?

The second sentence describes a concrete two-step workflow: read the returned main categories and their ids, then call again with category_id. It does not state when to prefer this over dk_category_products, dk_deals, or dk_search, so exclusions are missing but usable context is present.

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