Snapp! Shop

io.github.sepehr071由 GitHub 账号 sepehr071 发布v0.2.0更新于 Nov 7, 2026

Read-only Snapp! Shop marketplace: search, categories, seller offers in Toman, reviews.

概览

AI 生成的概览

面向伊朗 Snapp! Shop 商城的非官方只读 MCP 服务器:搜索商品、以托曼比较各卖家价格、查看评价并发现限时促销。

可以做什么
  • 按名称搜索商品,支持价格区间、品牌、规格、颜色、库存、折扣和快速配送筛选,并获取热门搜索建议。
  • 浏览分类树、品牌页和卖家页,并列出某个分类或搜索实际可用的筛选项。
  • 查看商品规格、评分和每个卖家的报价(价格、折扣、库存、保修、配送),并将 2 至 4 个商品并排比较。
  • 阅读买家评价(评分、正文、优缺点),并查找相似商品或配件。
  • 查找限时促销、活动页和推广,并列出某个促销中的全部商品。
适用场景
适合比较在伊朗销售的商品的价格、卖家、保修、规格和评价,或查看当前有哪些限时促销。不适用于下单或付款;在伊朗境外且没有伊朗 IP 或代理时无法使用。
运行要求
通过 uvx(或 pip)以 stdio 在本地运行,需要 Python 3.10+ 和 uv。无需账号或 API 密钥,使用网站的访客会话。网站只接受伊朗 IP,因此需在伊朗境内不使用 VPN 运行,或将 SNAPPSHOP_MCP_PROXY 设为出口在伊朗的 HTTP 代理(系统代理设置会被忽略)。
安装前请注意
只读:不登录、不建购物车、不下单、不付款,所有工具均标记为只读。请求会以类似浏览器的 TLS 指纹和请求头发往 Snapp! Shop 的接口,不存储数据也不发往别处。代理变量可能在 URL 中带有凭据,请妥善保密。非官方且无关联;网站接口可能随时变更,价格和库存当天也会变动。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Snapp! Shop,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

[snappshop-mcp: unofficial Snapp! Shop MCP server for Claude, Cursor and Copilot]

snappshop-mcp: Snapp! Shop MCP server for AI agents

Let your AI agent shop around on Snapp! Shop (اسنپ‌شاپ).
An unofficial, read-only MCP server for Snapp! Shop, the Snapp marketplace in Iran:
search products, compare every seller's price in Toman, filter by specs, read buyer reviews and catch today's flash sales, all from Claude, Cursor or Copilot.

[PyPI] [Python] [CI] [MCP Registry] [License: MIT]

[Install in Cursor] [Install in VS Code]

For AI agents · Why · What it can do · Quick start · Tools · How it works · Good to know · FAQ · Configuration · فارسی · Development


For AI agents

  • What: unofficial MCP server (model context protocol) for Snapp! Shop (snappshop.ir), a marketplace of many shops and pharmacies in Iran: electronics, phones, health and beauty, home, fashion. Queries in Persian match best; prices in Toman.
  • Install: uvx snappshop-mcp or claude mcp add snappshop -- uvx snappshop-mcp. Transport: stdio. Needs uv (Python 3.10+).
  • Auth: none, no API key or account (it uses the guest session the site gives every visitor). Snapp! Shop only accepts Iranian IPs: run it from Iran without a VPN, or set SNAPPSHOP_MCP_PROXY to an HTTP proxy that exits in Iran. System proxy settings are ignored.
  • Access: read-only. No login, basket, orders or payment, so no confirmation is needed before calling any tool. All 13 tools carry readOnlyHint: true.
  • Tools: 13: ss_search, ss_suggest, ss_filters, ss_categories, ss_category, ss_brand, ss_product, ss_compare, ss_reviews, ss_similar, ss_seller, ss_promotions, ss_collection. Typical sequence: ss_search -> ss_product (all sellers, cheapest first) -> ss_reviews. Browsing: ss_categories -> ss_filters -> ss_category.
  • Ids: product_id (digits) goes to ss_product and ss_compare; id (6 characters) to ss_reviews and ss_similar; seller_id to ss_seller; collection_id to ss_collection.
  • Units: prices in Toman, for delivery to Tehran, as the site shows them.
  • Use when: comparing prices, sellers, specs and reviews of products sold in Iran, or watching flash sales.
  • Do not use when: the user wants to order or pay, or is outside Iran with no Iranian IP or proxy (the site answers HTTP 403).
  • Output: compact JSON. Null and empty fields are omitted (a missing rating = not rated). Lists are 12 items per page; the site caps a list at 10,000 items. Reviewer names are left out.
  • Machine-readable: server.json and the iran-mcp catalog once the server is listed there.

Why

Snapp! Shop sells one product through many sellers at different prices, warranties and delivery terms. Finding the best offer means opening product pages one by one. An agent with snappshop-mcp reads them all in seconds:

You: Who sells the Samsung Galaxy A07 (64 GB) cheapest on Snapp! Shop, and with what warranty?

Agent: calls ss_search(query="Galaxy A07 64") → ss_product(product="25751584")

Price (Toman)SellerColourWarranty
44,600,000دیجی لند ساناسبزگارانتی ۱۸ ماهه شرکتی
44,770,000سام پلاسبنفشگارانتی ۱۸ ماهه هماهنگ (داریا همراه)
45,500,000ویراوینسبزگارانتی ۱۸ ماهه شرکتی

12 sellers in total, rating 4.3 from 370 ratings. Want the reviews with ss_reviews?

Real tool output from 2026-11-04; prices and stock change all the time. Prices are in Toman.

What it can do

  • Search products by name, with price range, brand, spec, colour, stock, discount and fast-delivery filters
  • Compare sellers: every offer of a product with price, discount, stock, warranty, delivery method and seller rating
  • Compare products side by side: price, rating and only the specs that differ
  • Browse the category tree, brand pages and seller pages; ss_filters shows the real filters of a list
  • Read reviews with scores, pros and cons, and find similar products
  • Catch deals: flash sales with end times, campaign pages and every product in a promotion
  • Read-only by design: no login, no basket, no orders, no payment

Example prompts:

  • "Cheapest Samsung phone in stock, with 256 GB storage and a black colour."
  • "Compare the Xiaomi Poco X7 Pro and the Galaxy A56: what differs in the specs?"
  • "Which seller of this magnesium supplement has the lowest price, and what do buyers say?"
  • "What flash sales end tonight on Snapp! Shop?"
  • ارزان‌ترین گوشی سامسونگ موجود با حافظه ۲۵۶ گیگابایت را پیدا کن.
  • فروشنده‌های این محصول را با قیمت و گارانتی مقایسه کن.
  • امروز چه فروش ویژه‌هایی در اسنپ‌شاپ هست؟

Quick start

You need uv and an Iranian IP address (Snapp! Shop blocks foreign IPs; see FAQ). No API key or account.

Claude Code
bash
claude mcp add snappshop -- uvx snappshop-mcp
Claude Desktop

Settings → Developer → Edit Config, then add:

json
{  "mcpServers": {    "snappshop": { "command": "uvx", "args": ["snappshop-mcp"] }  }}
Cursor

Click Install in Cursor above, or add the Claude Desktop block to ~/.cursor/mcp.json (or .cursor/mcp.json in a project).

VS Code (Copilot agent mode)

Click Install in VS Code above, or add to .vscode/mcp.json:

json
{  "servers": {    "snappshop": { "type": "stdio", "command": "uvx", "args": ["snappshop-mcp"] }  }}
Codex CLI
bash
codex mcp add snappshop -- uvx snappshop-mcp

Or in ~/.codex/config.toml:

toml
[mcp_servers.snappshop]command = "uvx"args = ["snappshop-mcp"]
Gemini CLI

Add to ~/.gemini/settings.json:

json
{  "mcpServers": {    "snappshop": { "command": "uvx", "args": ["snappshop-mcp"] }  }}
Windsurf

Add the Claude Desktop block to ~/.codeium/windsurf/mcp_config.json.

Anything else

It's a standard stdio MCP server: run uvx snappshop-mcp, or pip install snappshop-mcp and run snappshop-mcp.

Tools

All tools are read-only. Lists return 12 items per page (page starts at 1).

ToolWhat it does
ss_searchFind products by name; filters: price range, brands, specs, colours, in stock, discounted, fast delivery; sort
ss_suggestPopular search phrases for a prefix, with popularity scores
ss_filtersPrice range, colours, brands and spec filters (with options) of a category or a search
ss_categoriesCategory paths: the top level, or the children of one
ss_categoryProducts of a category or category-brand page, with the same filters as ss_search
ss_brandProducts of a brand page
ss_productSpecs, rating and every seller's offer (price, discount, stock, warranty, delivery, seller rating), cheapest first
ss_compare2-4 products side by side: price, rating, seller count and the specs that differ
ss_reviewsBuyer reviews: score, text, pros and cons, votes, date; with total and pages
ss_similarSimilar products, or accessories sold with the product
ss_sellerProducts of one seller, with the seller's name and score
ss_promotionsFlash sales (with end times), carousels and campaign pages; links to the tool that opens each
ss_collectionEvery product of one promotion from ss_promotions

Filters use names, not ids: specs=["حافظه داخلی=256 گیگابایت"], colors=["مشکی"]. Call ss_filters first to see what a category offers.

How it works

The server calls the same JSON API (apix.snappshop.ir) that the Snapp! Shop web app uses, with the guest token the site hands to every visitor. Requests go out with a Chrome TLS fingerprint and the headers the site's own frontend sends, so they look like normal browsing. One shared HTTP client caches reads for 60 seconds, limits concurrency, retries timeouts and server errors, and refuses any host except apix.snappshop.ir.

Nothing is stored and nothing is sent anywhere else. There is no login: the server cannot see or change an account.

Good to know

  • Iranian IPs only. From abroad the site answers HTTP 403 ("turn off your VPN"). Use an Iranian connection or SNAPPSHOP_MCP_PROXY.
  • Prices are Toman, as the site shows them, for delivery to Tehran. Stock and prices move during the day.
  • Totals are capped at 10,000 by the site and can differ by one or two between calls.
  • A phrase nothing matches falls back to unrelated products, so check the titles.
  • Top-level categories (such as mobile) have no product list: pick a subcategory from ss_categories.
  • Reviewer names are not returned.

FAQ

Does it need an API key or an account? No. It uses the guest session every visitor gets.

Can it buy something or add to the basket? No. It is read-only by design.

Why do I get HTTP 403? The site only answers Iranian IPs. Run the server from Iran without a VPN, or set SNAPPSHOP_MCP_PROXY to an HTTP proxy that exits in Iran.

Is this the same as snapp-mcp? No. snapp-mcp covers Snappfood (restaurants) and SnappMarket (groceries); this server covers the Snapp! Shop marketplace.

Which language should I ask in? Persian matches best because titles and specs are Persian; English brand and model names work too.

How do I filter a phone by storage? Call ss_filters(path="mobile/samsung"), then ss_category(path="mobile/samsung", specs=["حافظه داخلی=256 گیگابایت"]).

Configuration

VariableRequiredDefaultMeaning
SNAPPSHOP_MCP_PROXYnounsetHTTP proxy for every request, e.g. http://user:pass@host:port. A comma-separated list is used one at a time: the next proxy takes over when one is blocked (403/429) or cannot connect

فارسی: سرور MCP اسنپ‌شاپ

snappshop-mcp یک سرور MCP غیررسمی و فقط‌خواندنی برای اسنپ‌شاپ (بازار آنلاین اسنپ با هزاران فروشنده و داروخانه) در ایران است. این سرور به دستیار هوش مصنوعی شما (Claude، Cursor، Copilot و ...) اجازه می‌دهد در اسنپ‌شاپ جستجو کند، قیمت و گارانتی همهٔ فروشنده‌های یک کالا را مقایسه کند، مشخصات و نظرات خریداران را بخواند و فروش ویژه‌های فعال را پیدا کند.

  • فقط خواندنی است: وارد حساب نمی‌شود، سبد خرید نمی‌سازد و سفارش ثبت نمی‌کند.
  • قیمت‌ها به تومان هستند، همان‌طور که سایت نشان می‌دهد.
  • روی سیستم خود شما اجرا می‌شود و به هیچ سرور واسطی داده نمی‌فرستد.
  • نیازی به کلید API یا حساب کاربری ندارد.

نصب در Claude Code:

bash
claude mcp add snappshop -- uvx snappshop-mcp

بعد بپرسید: «ارزان‌ترین گوشی سامسونگ موجود با حافظهٔ ۲۵۶ گیگابایت کدام است و کدام فروشنده ارسال سریع دارد؟»

نکته: سرور باید روی سیستمی با IP ایران و بدون VPN اجرا شود، چون اسنپ‌شاپ درخواست‌های خارج از ایران را مسدود می‌کند. اگر ناچار به VPN هستید، متغیر SNAPPSHOP_MCP_PROXY را روی یک پروکسی HTTP با خروجی ایران بگذارید.

عبارت‌های پرجستجو: اسنپ‌شاپ، خرید آنلاین، مقایسه قیمت، قیمت گوشی، مقایسه فروشنده، گارانتی، فروش ویژه، تخفیف، دستیار هوش مصنوعی، سرور MCP فارسی.

Development

bash
git clone https://github.com/sepehr071/snappshop-mcp && cd snappshop-mcpuv syncuv run python -m pytest            # offline, against recorded responsesuv run python -m pytest -m live    # real API (needs an Iranian IP)uv run ruff check .

Tools live in src/snappshop_mcp/shop.py; each is a typed async function with a docstring that tells the agent when to use it. Issues and PRs are welcome, especially new tools and fixes for API changes.

Releases: bump the version in pyproject.toml and server.json, then push a v* tag. GitHub Actions tests, publishes to PyPI and the MCP Registry, and creates the GitHub Release.

Related servers

  • iran-mcp: catalog of all Iranian-service MCP servers
  • snapp-mcp: Snappfood and SnappMarket (restaurants and groceries)
  • digikala-mcp: Digikala product search and prices
  • torob-mcp: price comparison across Iranian shops
  • basalam-mcp: handmade and local products on Basalam

Disclaimer

Unofficial and not affiliated with or endorsed by Snapp. It is read-only: it only reads the public endpoints of the snappshop.ir web app, which can change without notice. Please keep request rates reasonable.

Author

[Sepehr Radmard: open-source MCP servers for the Iranian web. LinkedIn: linkedin.com/in/sepehr-radmard]

Built and maintained by Sepehr Radmard (سپهر رادمرد). Connect on LinkedIn or follow @sepehr071 on GitHub for more MCP servers for Iranian websites, all listed in iran-mcp. If this saves you time, a star on the repo helps other people find it.

License

MIT

If this saves you clicks, a star helps others find it.

来源:README.md,提交 b94ca43

工具

0
SourceWeft 尚未在沙箱中启动过该软件包,因此其工具未知。

版本历史

2
  1. v0.2.0最新Nov 7, 2026
  2. v0.1.0Nov 4, 2026

评分

已满足适用检查项的 50%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分