关于 Digikala
Digikala 是面向 Agent 的非官方只读 MCP 服务,用于比较 Digikala 及其 Fresh 超市的商品和优惠。它整合卖家报价、价格历史、评价和促销信息,支持波斯语与英语查询。
主要功能
- 01搜索和筛选商品
- 02比较卖家报价与价格
- 03查看每日价格历史
- 04阅读评价和买家问答
- 05浏览促销与 Fresh 商品
适用场景
- 01查找符合条件的最低价商品
- 02比较商品款式和卖家
- 03判断价格是否接近 30 天低点
- 04浏览当前优惠和超市折扣
MCP 相关
通过 stdio 向 MCP 客户端提供 23 个只读工具。服务在本机运行,调用 Digikala 的公开 API,无需账户或 API 密钥。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
uvx digikala-mcpDIGIKALA_MCP_PROXYOptional HTTP proxy URL for every request (e.g. one with an Iranian exit if Digikala blocks yours), or a comma-separated list: one is used until it gets blocked or fails to connect, then the next. System proxy settings are ignored.本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。
工具
23收录的工具列表 · 更新于 5 天前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| page | integer | 否 | 页码,从 1 开始(每页 20 件商品)。 |
| sort | enum | 否 | 结果排序方式。relevance | cheapest | most_expensive | best_selling | most_viewed | newest | fastest_delivery | buyers_pick |
| query | string | 是 | 商品名称或波斯语、英语词语,例如 'گوشی سامسونگ' 或 'airpods pro'。 |
| colors | any | 否 | 来自 dk_filters 的颜色 ID,例如 [1]。 |
| brand_ids | any | 否 | 来自 dk_product 的 brand_id 或 dk_brand_products 的 brand.id 的品牌 ID,例如 [18] Samsung、[1662] Xiaomi。 |
| max_price | any | 否 | 以托曼计的最高价格,例如 50000000。 |
| min_price | any | 否 | 以托曼计的最低价格,例如 10000000(1000 万托曼)。 |
| attributes | any | 否 | 来自 dk_filters 的功能筛选条件:{属性 ID: [值 ID]},例如 Android 手机为 {2226: [19239]}。同一属性的值按 OR 处理,不同属性按 AND 处理。 |
| seller_type | any | 否 | 仅显示来自 Digikala 自营、品牌官方卖家、可信卖家或乡村(roosta)卖家的商品。 |
| fast_delivery | boolean | 否 | 仅显示支持快速(Jet)配送的商品。 |
| in_stock_only | boolean | 否 | 仅显示目前可购买的商品。 |
| ready_to_ship | boolean | 否 | 仅显示已在 Digikala 仓库中的商品(可更快发货)。 |
详细介绍
digikala-mcp:面向 AI Agent 的 Digikala MCP 服务
让你的 AI Agent 在 Digikala(دیجیکالا)上逛逛。
这是面向伊朗最大网店的非官方只读 MCP 服务:搜索商品、比较每位卖家的报价、
查看商品价格历史、阅读评价和问答,还能查看今日的 Incredible Offers;以上操作均可通过 Claude、Cursor 或 Copilot 完成。
面向 AI Agent · 原因 · 功能 · 快速开始 · 工具 · 工作原理 · 须知 · 常见问题 · 配置 · فارسی · 开发 · 相关服务
面向 AI Agent
- 简介: 面向 Digikala(digikala.com,伊朗)及其 Fresh 超市的非官方 MCP 服务(模型上下文协议)。支持波斯语或英语查询,价格以 Toman 计。
- 安装:
uvx digikala-mcp或claude mcp add digikala -- uvx digikala-mcp。传输方式:stdio。需要安装 uv(Python 3.10+)。 - 身份验证: 无需身份验证、API 密钥或账户。可选配置
DIGIKALA_MCP_PROXY(HTTP 代理,也可以是以逗号分隔的代理列表;例如使用伊朗出口节点,以防 Digikala 屏蔽你的连接)。 - 访问权限: 只读。无需登录,无法使用购物车、结账或付款,因此调用任何工具前均无需确认。
- 工具: 共 23 个,名称均以
dk_开头。可从dk_find_cheapest、dk_search、dk_best_for_budget、dk_deals开始。 典型调用顺序:dk_find_cheapest->dk_product->dk_price_history。 - 适用场景: 在 Digikala(包括 Fresh 超市)上查找、比较或评估商品及卖家的价格。
- 不适用场景: 用户想要购买商品,或需要了解运费(仅在结账时计算),或需要访问任何登录后才能查看的内容。
- 输出: 精简的 JSON。价格以 Toman 计,评分范围为 0-5(
null= 暂无评分)。工具之间传递数字商品 ID(dkp-<id>中的<id>)。 - 网络: 从你的设备直接连接
api.digikala.com。如果每次调用都出现“拒绝请求(HTTP 403)”,请设置DIGIKALA_MCP_PROXY。 - 机器可读信息:
server.json和 iran-mcp 目录(TOOLS.md、servers.json、llms.txt)。
为什么
Digikala 上同一款手机会重复出现很多次:不同颜色、内存容量、套装,以及每个商品列表下的一大堆卖家,价格还每天都在变。按“最便宜”排序时,手机壳会排在最前面。想找到真正最便宜的商品,以及今天的价格是否值得入手,需要点很多次。使用 digikala-mcp 的 Agent 只需调用三次:
你: Digikala 上最便宜的 Samsung Galaxy A07 是哪款,现在适合买入吗?
Agent: 调用
dk_find_cheapest(query="samsung a07")→dk_product(product_id=20109389)→dk_price_history(product_id=20109389)
价格 型号 卖家 42,503,600 Galaxy A07 64 GB / 4 GB Digikala(德黑兰当天送达) 44,518,000 Galaxy A07 64 GB / 4 GB + 25 W 充电器 Sepahan Hamrah Yaghout 46,811,800 Galaxy A07 128 GB / 4 GB Digikala 64 GB 型号最便宜,售价 42,503,600,由 Digikala 自营;下一位卖家的报价为 42,918,000。 但现在并不是入手的好时机:黑色款昨天的售价是 34,499,000,本月最低价则是 33,200,000。今天的最佳报价比昨天高出约 23%,因此等一等可能更划算。
来自 2026-10-03 的真实工具输出;价格随时可能变化。价格单位为 Toman。
能做什么
- 搜索整个商品目录,支持波斯语或英语,并可按价格、品牌、功能(操作系统、存储空间等)、颜色、卖家和快速配送筛选;每条结果都会说明标题是否确实匹配
- 找到真正最便宜的匹配商品,过滤掉配件,并列出该商品各卖家的报价
- 按预算挑选最佳商品,根据结合评分人数加权的评分排序,并展示判断依据
- 一次调用重新检查最多 10 件候选商品:价格、最低报价、库存,以及与 30 天最低价的差距
- 判断价格,参考约 30 天的每日价格历史和 30 天最低价
- 浏览类别、品牌、卖家和畅销商品,并按价格、销量、浏览量、上新时间或买家推荐排序
- 检查质量,查看评价、优缺点、买家问答和卖家信誉
- 发现优惠:惊喜优惠和超市(Digikala Fresh)折扣
- 其他功能:规格对比、分期付款方案、Digikala Plus 配送方案、实时黄金和金币价格
- 设计上仅支持只读操作:无需登录,不使用购物车、不下单、不付款
快速开始
你需要 uv。无需 API 密钥或账户。
Claude Code
claude mcp add digikala -- uvx digikala-mcp
Claude Desktop
设置 → 开发者 → 编辑配置,然后添加:
{
"mcpServers": {
"digikala": { "command": "uvx", "args": ["digikala-mcp"] }
}
}
Cursor
点击上方的 Install in Cursor,或将 Claude Desktop 配置块添加到 ~/.cursor/mcp.json。
VS Code (Copilot agent mode)
点击上方的 Install in VS Code,或将以下内容添加到 .vscode/mcp.json:
{
"servers": {
"digikala": { "type": "stdio", "command": "uvx", "args": ["digikala-mcp"] }
}
}
Codex CLI
codex mcp add digikala -- uvx digikala-mcp
或者添加到 ~/.codex/config.toml:
[mcp_servers.digikala]
command = "uvx"
args = ["digikala-mcp"]
Gemini CLI
添加到 ~/.gemini/settings.json:
{
"mcpServers": {
"digikala": { "command": "uvx", "args": ["digikala-mcp"] }
}
}
Windsurf
将 Claude Desktop 配置块添加到 ~/.codeium/windsurf/mcp_config.json。
其他任何客户端
这是一个标准的 stdio MCP 服务:运行 uvx digikala-mcp,或运行 pip install digikala-mcp 后再运行 digikala-mcp。
然后只需提问:
- “低于 300 万托曼、评分至少 4 星的最便宜 AirPods 风格耳机是哪款?”
- “比较一下 Galaxy A07 64 GB 和 128 GB。更大容量的版本值得多花钱吗?”
- “这个卖家靠谱吗?CGDG9”
- “今天耳机的超值优惠有哪些?按折扣力度从高到低排列。”
- “哪些由 Digikala 自营、容量为 256 GB 的 Android 手机价格低于 2000 万托曼?”
- 超市里最便宜的低脂牛奶多少钱?
- 最便宜的三星 A07 手机是哪款?现在适合买入吗?
- 今天耳机有什么超值优惠?
工具
产品 ID 是 digikala.com/product/dkp-<id>/ 链接中的数字。每个列表都会返回紧凑的产品卡片:
ID、标题、品牌、价格、折扣、库存、卖家、评分、照片 URL(image)和产品链接。
查找产品(12)
| 工具 | 功能 |
|---|---|
dk_search | 按关键词搜索,并可使用排序、价格、品牌、特征、颜色和卖家筛选;标记标题宽泛匹配的结果 |
dk_find_cheapest | 查找符合查询条件且有库存的最低价商品,排除配件,返回一个列表 |
dk_best_for_budget | 查找预算范围内评分最高的匹配商品,评分按评价数量加权 |
dk_suggest | 自动补全:提供更合适的关键词、类别代码和品牌 ID |
dk_filters | 获取类别或搜索的筛选选项:特征(操作系统、存储空间等)、颜色、品牌、卖家、价格范围 |
dk_categories | 查找类别代码和主类别 ID |
dk_category_products | 浏览某个类别,可排序并使用相同的筛选条件,还可选择一个品牌 |
dk_brand_products | 浏览某个品牌的产品 |
dk_seller | 查看卖家的评分、准时发货率、取消、退货和产品 |
dk_deals | 查看惊人优惠或超市优惠,按折扣从高到低排列 |
dk_best_sellers | 查看当前畅销商品,可查看全部或按主类别筛选 |
dk_fresh_search | 搜索或浏览 Digikala Fresh 超市 |
产品(8)
| 工具 | 功能 |
|---|---|
dk_product | 查看价格、库存、规格和每位卖家的报价(颜色、保修、配送),按价格从低到高排列 |
dk_shortlist | 一次为最多 10 件产品重新查询价格:价格、最低报价、库存、评分、与 30 天最低价的差距 |
dk_price_history | 查看每种颜色约 30 天的每日价格,以及最低价和最高价 |
dk_reviews | 查看客户评价,包括星级、优缺点和已验证买家标记 |
dk_questions | 查看客户问题及其最受认可的回答 |
dk_similar | 查看类似产品,例如更便宜的替代品 |
dk_compare | 并排比较 2-4 件产品:列出不同的规格以及相同的规格 |
dk_installments | 查看产品的 Digipay 信用额度分期方案(额度、每月还款额、期数) |
其他(3)
| 工具 | 功能 |
|---|---|
dk_plus_plans | 查看 Digikala Plus 会员方案(免费配送)和权益 |
dk_gold_prices | 查看实时 18k 黄金每克价格(每日变化和约 3 个月的变化)以及金币价格 |
dk_location | 地址 → 坐标,或坐标 → 地址,并提供 Digikala 城市/省份 ID |
所有 23 个工具都标注了 readOnlyHint: true,并返回紧凑的结构化 JSON,不会让 Agent 的上下文被大量信息淹没。
工作原理
AI agent (Claude, Cursor, Copilot, ...)
│
│ MCP over stdio
▼
digikala-mcp (runs on your machine)
│
│ HTTPS
└──────▶ api.digikala.com products, sellers, deals, Fresh supermarket
digikala-mcp 在本地运行,并调用 digikala.com Web 应用使用的相同公共端点。过程中没有
托管服务,不需要 API 密钥,也不会将你的任何信息发送到其他地方。
需要了解的信息
- 价格单位为托曼。 Digikala API 返回的单位是里亚尔;每个工具都会除以 10,使数值与网站一致。黄金和金币的价格已经是托曼。
- 评分范围为 0–5,与网站一致(API 中的 0–100 除以 20);
null表示尚未评分。评论星级范围为 1–5。 - 支持波斯语和英语查询(
گوشی سامسونگ、airpods pro)。类别和品牌代码使用英文 slug(mobile-phone、samsung)。 - 文本搜索中使用
sort=cheapest会优先显示配件;这是 Digikala 的排序方式。要查找“最便宜的 X”,请使用dk_find_cheapest。 - 搜索总会返回结果,即便查询词毫无意义(Digikala 的搜索采用语义搜索)。
dk_search会为每个结果标注match: all / some / none(并列出未匹配的词),而dk_find_cheapest和dk_best_for_budget只保留标题包含所有查询词的结果。 - 按特性筛选:
dk_filters(category_code="mobile-phone")会列出 ID,例如操作系统 → Android,然后通过dk_category_products(attributes={2226: [19239]})进行筛选。 - 30 天最低价会忽略仅持续一天的降价。
dk_shortlist会将今日价格与连续两天保持的最低价格(low_30d)进行比较,因为 Digikala 自己的 30 天最低价(lowest_one_day_30d,即dk_product的lowest_price_30d)可能只是某种颜色单日的价格。dk_price_history会提供每种颜色的价格历史。 - 照片:商品卡片包含
image,dk_product包含images列表(最多 4 张);两者都是直接取自 API 的绝对 https URL。URL 以?x-oss-process=image/resize,m_lfit,h_300,w_300/quality,q_80结尾,因此图片是 300 px 的 JPEG;删除此后缀即可获取原始尺寸图片。 - 热门商品的价格每小时可能变动多次,尤其是卖家众多的商品;购买前请重新确认价格。
- 答案会缓存 2 分钟,因此 Agent 重复调用时不会再次访问 Digikala;价格可能因此比网站上的价格滞后 2 分钟。超时、5xx 或 429 错误最多会在退避后重试两次。
- 杂货来自超市商店:
dk_product显示的是该商店的价格,可能与搜索结果中的主店价格不同。 - 运费仅在结账时计算(需要登录)。
dk_product会显示各商品优惠的配送方式,dk_plus_plans会显示免运费方案。
常见问题
Digikala 是否有面向 AI Agent 的 API 或 MCP 服务?
有:digikala-mcp 是一个非官方 MCP 服务,提供 23 个只读工具,用于搜索、卖家报价、价格历史记录、评价和优惠。它调用的正是 digikala.com 网页应用所使用的公开端点;无需 API 密钥。
如何将 Digikala 与 Claude、Cursor 或 Copilot 搭配使用?
使用 claude mcp add digikala -- uvx digikala-mcp 添加服务(或者按照 快速开始 中为 Claude Desktop、Cursor 和 VS Code 提供的相应配置),然后用波斯语或英语自然语言提问。
它是官方、安全且免费的吗?
它是非官方的,与 Digikala 无关联。它是只读的(无需登录,不涉及购物车或付款),在你的设备上运行,并采用 MIT 许可证,免费使用。
我需要伊朗 IP 吗?
通常不需要:测试中,API 可以从境外(位于土耳其的出口节点)正常响应。如果所有工具都因“拒绝请求(HTTP 403)”而失败,请将 DIGIKALA_MCP_PROXY 设置为使用伊朗出口节点的 HTTP 代理。(如果只有一次调用返回 403,通常表示类别或品牌代码未知。)系统常规代理变量会被有意忽略。如果 Digikala 提供了机器人检测页面,请安装可选的浏览器备用方案(uvx --with patchright==1.63.0 digikala-mcp 或 pip install digikala-mcp[browser]),然后运行 patchright install chromium。
它能帮我购买商品吗?
不能,这是有意为之。它无需登录,也绝不会调用购物车、结账、付款或发布评价/问题的端点;它只读取公开数据。Agent 会找到最佳选项;你可以在网站上点击购买。
商品显示 in_stock: false,且没有价格
Digikala 会列出缺货、即将发售或已停售的商品。这些商品没有当前报价,因此也没有价格。搜索默认使用 in_stock_only: true。
它支持 Digikala Fresh 超市吗?
支持。dk_fresh_search 可搜索和浏览 Digikala Fresh,dk_deals 接受 store='supermarket',dk_product 则会针对超市商品 ID 回退到 Fresh 商品 API。
价格以 Rial 还是 Toman 为单位?
以 Toman 为单位,与网站一致。API 返回的单位是 Rial,每个工具都会除以 10;黄金和金币价格已经是 Toman。
为什么 dk_installments 返回的是说明,而不是分期报价?
自 2026-10-05 起,Digikala 的 Digipay 信贷端点对所有商品都返回空列表(商品页面也不显示信贷选项),因此该工具返回说明,而不是报价。
Claude Desktop 提示找不到 uvx
请将 uvx 的完整路径用作 command(Windows 上使用 where uvx,macOS/Linux 上使用 which uvx)。
如何调试 Agent 看到的内容?
npx @modelcontextprotocol/inspector uvx digikala-mcp
配置
| 变量 | 默认值 | 含义 |
|---|---|---|
DIGIKALA_MCP_PROXY | 未设置 | 用于每个请求的 HTTP 代理,例如 http://user:pass@host:port。逗号分隔的列表会依次使用:某个代理被拦截(403/429)或无法连接时,将切换到下一个代理 |
波斯语
digikala-mcp 是一个非官方、只读的 Digikala MCP 服务,服务于伊朗最大的在线商店。它允许您的 AI 助手(Claude、Cursor、Copilot 等)在 Digikala 上搜索、 比较同一商品的所有卖家报价、查看价格历史、评论和问答,并查找惊喜优惠。
可以做什么
- 搜索:支持波斯语或英语,并可按价格、品牌、属性(操作系统、存储空间等)、颜色、卖家类型和快速配送筛选;每条结果都会说明标题是否确实与搜索内容匹配。
- 查找真正最便宜的商品(排除手机壳和线缆等配件),并按价格从低到高显示同一商品所有卖家的报价。
- 按您的预算选出最佳商品:根据同时考虑评分人数的分数为商品排名,避免 3 人评分的 5 星商品排在 900 人评分的 4.6 星商品之前。
- 查看过去约 30 天的价格历史和本月最低价,判断现在是否适合购买。
- 重新检查精选列表:一次请求即可检查最多 10 件商品的价格、库存和与本月最低价的差距。
- 品质:买家评论及优缺点、问答,以及卖家记录(按时配送、取消、退货)。
- 优惠:惊喜优惠、畅销商品和超市折扣(Digikala Fresh)。
- 更多:比较技术规格、查看 Digikala Plus 方案,以及黄金和硬币的实时价格。
注意事项
- 仅供只读:不会登录账户、创建购物车或下单。
- 所有价格均以托曼计价,评分与网站一致,满分为 5 分。
- 在您自己的系统上运行,无需 API 密钥,也不会向任何中间服务发送数据。
- 响应会缓存 2 分钟;价格可能因此比网站上的价格滞后同样长的时间。
关键词: Digikala、digikala、Digikala MCP 服务、价格比较、最低价、价格历史、Digikala 惊喜优惠、Digikala Fresh、在线商店、在线购物。
安装(请先安装 uv)。在 Claude Code 中:
claude mcp add digikala -- uvx digikala-mcp
在 Claude Desktop、Cursor 和其他应用中,使用 Quick start 部分的相同配置。
示例问题
- “三星 A07 手机最便宜的是哪款?现在的价格划算吗?”
- “300 万托曼以内最好的无线耳机是什么?”
- “请列出自营 Digikala 销售的 256 GB 安卓手机,并按价格从低到高排序。”
- “比较这三台笔记本电脑,告诉我哪台最值得买。”
- “今天有什么耳机惊喜优惠?”
开发
git clone https://github.com/sepehr071/digikala-mcp && cd digikala-mcp
uv sync
uv run python -m pytest # offline, against recorded responses
uv run python -m pytest -m live # real API
uv run ruff check .
实时测试也可以在 GitHub 上运行(Actions → Live → Run workflow)。这些测试不会定时运行:从 GitHub 的美国 Runner 运行时,Digikala 每次运行都会有几次调用超时,而通过伊朗网络连接运行相同的测试则能通过。
工具位于 src/digikala_mcp/catalog.py、product.py 和 services.py 中;每个工具都是带类型注解的异步函数,并附有说明 Agent 何时应使用它的文档字符串。欢迎提交 Issue 和 PR,尤其是新工具以及针对 API 变更的修复。
发布版本:更新 pyproject.toml 和 server.json 中的版本号,然后推送 v* 标签。GitHub Actions 会运行测试、发布到 PyPI 和 MCP Registry,并创建 GitHub Release。
相关服务
- Technolife MCP server 提供电子产品价格和分期价格
- MasterKala MCP server 提供小工具和手机配件
- Torob MCP server 比较伊朗各商店的价格
- Okala MCP server 提供在线杂货购物服务
- Banimode MCP server 提供时尚服饰
- iran-mcp:伊朗服务 MCP 服务目录
免责声明
本项目为非官方项目,与 Digikala 无关,也未获得其认可。它使用 digikala.com Web 应用的公共端点,这些端点可能随时变更,恕不另行通知。请合理控制请求频率。
作者
由 Sepehr Radmard(سپهر رادمرد)构建并维护。欢迎在 LinkedIn 上联系,或在 GitHub 上关注 @sepehr071,获取更多面向伊朗网站的 MCP 服务,所有服务都列在 iran-mcp 中。如果这为你节省了时间,请给仓库点个星,帮助其他人发现它。
许可证
如果这为你省去了几次点击,请给个星,帮助其他人发现它。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。
