Skip to main content
Glama
sepehr071

digikala-mcp

by sepehr071

Product reviews

dk_reviews
Read-onlyIdempotent

Fetch Digikala product customer reviews, including star ratings, review text, pros and cons, and verified buyer flags; support sorting, pagination, and full uncut text.

Instructions

Read customer reviews: stars 1-5 (null = none), text, pros/cons, verified buyer flag.

The overall rating (0-5) is in dk_product. Texts are cut to 300 characters, pros/cons to 5 of 80; full_text=true returns them whole. An unknown id gives no reviews; check it with dk_product.

Input Schema

NameRequiredDescriptionDefault
pageNoPage number, from 1 (20 products per page).
sortNoOrder of the reviews.most_helpful
limitNoMax reviews from the page (20 per page).
full_textNoSkip text cuts and pros/cons caps; return everything whole.
product_idYesDigikala product id, the number in 'dkp-<id>' (from dk_search etc.), e.g. 20109389.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed7 schema fields changedv0.4.0
    • addedInput schema / properties / full_text
      Added value: +{
      +  "default": false,
      +  "description": "Skip text cuts and pros/cons caps; return everything whole.",
      +  "type": "boolean"
      +}
    • addedInput schema / properties / limit
      Added value: +{
      +  "default": 10,
      +  "description": "Max reviews from the page (20 per page).",
      +  "maximum": 20,
      +  "minimum": 1,
      +  "type": "integer"
      +}
    • removedInput schema / properties / page / title
      Removed value: -"Page"
    • removedInput schema / properties / product_id / title
      Removed value: -"Product Id"
    • removedInput schema / properties / sort / title
      Removed value: -"Sort"
    • removedInput schema / title
      Removed value: -"dk_reviewsArguments"
    • changedOutput schema / (root)
      Previous value: -{
      -  "additionalProperties": true,
      -  "title": "dk_reviewsDictOutput",
      -  "type": "object"
      -}New value: +null
  2. First observedv0.1.0

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare readOnly/idempotent/non-destructive, but the description adds real behavioral detail: truncation limits (300 chars, pros/cons 5 of 80), the full_text override, and that an unknown id returns no reviews rather than an error. That is meaningful context beyond the annotations.

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 return payload, then constraints, then the id caveat. Three tight sentences with no filler, though the numeric limits make it slightly dense.

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 no output schema, the description carries the return-value burden and does so well (fields, truncation, full_text behavior). Only minor gaps remain, such as pagination semantics, which the schema already covers.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% so the baseline is 3, but the description adds value the schema lacks: the concrete cut numbers and the semantic note that stars can be null (no rating). It does not add syntax for page/sort/limit beyond 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 ('Read customer reviews') and enumerates the returned fields (stars, text, pros/cons, verified buyer flag). It also distinguishes itself from the sibling dk_product by explicitly routing the overall rating there.

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: it directs the agent to dk_product for the overall rating and to verify ids, and explains when to set full_text=true. It stops short of explicitly naming when not to use it, but the routing guidance is solid.

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