Skip to main content
Glama
sepehr071

digikala-mcp

by sepehr071

Filter options

dk_filters
Read-onlyIdempotent

List available filters for a Digikala category or search to narrow product results by attributes, colors, sellers, and price range.

Instructions

List the filters Digikala offers for a category or a search: features, colors, sellers, price range.

Returns attributes (operating system, storage, connection type, ...) with their values as {value title: value id}; an attribute with more than 15 values only has value_count: call again with attribute_id for its values. Also colors as {title: id}, seller types, the price range in Toman, and the brands as {code: id} (category only) or the categories the search spans as {code: title} (query only). Pass the ids to dk_category_products or dk_search (attributes={attribute id: [value ids]}, colors=[...], seller_type=..., brand_ids=[...]).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
queryNoSearch words instead of a category, e.g. 'هدفون بی سیم'.
brand_codeNoWith category_code: only this brand, e.g. 'samsung'.
attribute_idNoReturn only this attribute with all its values, e.g. 2251 (phone storage).
category_codeNoCategory code from dk_suggest or dk_categories, e.g. 'mobile-phone'.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.2.1

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, open-world, so the safety profile is covered. The description adds real behavioral detail beyond that: truncated attributes expose only value_count and require a second call with attribute_id, and the return shape differs by mode (brands for category, categories for query).

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 purpose before the return-shape detail, and every sentence carries operational information (value truncation, downstream id passing). It is dense and paragraph-heavy, but no sentence is redundant with the schema.

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 the description need not document return values, yet it does so usefully enough to explain the truncation/re-call loop and the mode-dependent outputs. Coverage of inputs, outputs, and follow-up actions is sufficient for correct invocation.

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 description coverage is 100%, so the baseline is 3, but the description adds conditional semantics the schema does not: brand_code is category-only, the query mode returns spanned categories rather than brands, and attribute_id is the documented remedy for the value_count truncation.

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 ('List the filters Digikala offers for a category or a search') and enumerates the filter families returned (features, colors, sellers, price range). It also names the downstream siblings (dk_category_products, dk_search), so an agent can place it precisely among the 22 siblings.

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?

Clearly routes the agent: 'Pass the ids to dk_category_products or dk_search' with the exact argument shapes, and gives the re-call procedure when an attribute exceeds 15 values. It lacks an explicit statement of when to prefer category_code vs query or what to do if neither is supplied, but the practical usage path is unambiguous.

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