sepehr071/iran-mcp
iran-mcp is an open-source catalog of 39 MCP servers (488 tools) that let AI agents query Iranian websites such as Digikala, Torob, Divar, Snappfood, Jabama, Paziresh24, TSETMC and qavanin.ir, with prices normalised to Toman. Most servers are unofficial, read-only Python packages run with uvx; three are official hosted servers. It ships Claude Code plugins, Agent Skills, bundles, proxy lists and a machine-readable servers.json.
What it claims
iran-mcp is a catalog repository that pins 39 MCP servers (488 tools) as git submodules. Thirty-six are unofficial servers that wrap the undocumented internal APIs used by Iranian sites' own web apps. Three are official: exiryab-mcp, pasavard-mcp and swapwallet-mcp. Every server is MIT licensed in its own repository.
The changelog reports these reliability and cost figures:
- v1.7: The 18 shop servers now use browser-like requests, pacing and backoff. On Torob, the old client was blocked after 4-6 calls; the new one made 100 calls without a block.
- v1.5: Tokens per tool call fell by about 62% and the tool list shrank by 19% across 19 package servers, with the same rankings and cheapest prices as before.
- Latest release: It added 12 read-only servers, among them qavanin-mcp (168,000 laws, regulations and court votes), iran-tax-mcp, tgju-mcp and iran-crypto-mcp (7 exchanges).
How to use it
Claude Code plugins are installed from the repo's marketplace. Bundles cover food, shopping, beauty, travel, health, books, fashion and software.
claude plugin marketplace add sepehr071/iran-mcp
claude plugin install digikala@iran-mcp
claude plugin install iran-all@iran-mcpOther ways to install:
- Other agents (Codex, Cursor, Gemini CLI): run
npx skills add sepehr071/iran-mcp. - Single servers in Claude Code: run
claude mcp add digikala -- uvx digikala-mcp. Hosted servers are added by URL, for exampleclaude mcp add --transport http pasavard https://pasavard.ir/api/mcp. - Any MCP client: use a
{"command": "uvx", "args": ["digikala-mcp"]}entry.
Only uv is required, and it fetches Python itself. Site servers need no account or API key.
Several sites block foreign IPs. Each package server reads a <NAME>_MCP_PROXY variable, for example DIGIKALA_MCP_PROXY=http://127.0.0.1:8080. It takes a comma-separated list that fails over when one proxy is blocked. System proxy settings are ignored. Sites that show a bot-check page have an optional browser fallback, installed as <package>[browser].
For tool selection, servers.json lists each server's package or URL, version, env vars and tools. AGENTS.md maps tasks to servers. Each package server has the same layout (http.py, registry.py, server.py), offline tests on recorded fixtures, and -m live tests against the real site:
git clone --recurse-submodules https://github.com/sepehr071/iran-mcp
cd iran-mcp/servers/digikala-mcp
uv sync && uv run pytest -q
uv run pytest -m live -qLimits
The unofficial APIs are undocumented and can change without notice. Breakages are reported per server repository.
Three servers can write:
- payping-mcp: creates products, payment links, coupons and invoices with the user's token.
- bale-mcp: sends bot messages and files.
- swapwallet-mcp: requests swaps, transfers and withdrawals. These run only after approval in Telegram.
No bundle includes these three. Installing both SwapWallet's own plugin and this one registers the server twice.
pasavard-mcp returns affiliate and cashback links. TSETMC prices are in Rial, although everything else is normalised to Toman. iran-downloads-mcp returns item pages only, never download links.
The full 488-tool set is large for an agent's context, and the README advises enabling only the servers a task needs.
A plain uvx digikala-mcp config keeps running its cached copy. Running uvx digikala-mcp@latest --help and restarting the client upgrades it. Hosted servers change whenever their sites deploy.
The page's counts are inconsistent: the "What's new" text says 36 servers and 469 tools, while the headline says 39 servers and 488 tools.
Organisations named here
- Digikala
- Torob
- Divar
- Snappfood
- Jabama
- MrBilit
- Paziresh24
- Taaghche
- ExirYab
- Pasavard
- SwapWallet
- PayPing
- Bale
- Anthropic
- Cursor
- GitHub Copilot
- Claude Code
- Model Context Protocol
- Sepehr Radmard
- TSETMC
Technologies named here
- iran-mcp
- digikala-mcp
- torob-mcp
- divar-mcp
- pasavard-mcp
- swapwallet-mcp
- exiryab-mcp
- payping-mcp
- bale-mcp
- iran-crypto-mcp
- qavanin-mcp
- iran-tax-mcp
- tsetmc-mcp
- uvx
- Claude Code plugins
- Agent Skills
- AGENTS.md, servers.json, llms.txt
- Model Context Protocol
- PyPI
- uv
- Claude Code
- Codex
- Cursor
- GitHub Copilot
- VS Code
- Claude Desktop
- Google Antigravity
- Grok
- Gemini CLI
- OAuth
- Python
Techniques named here
- Mapping undocumented site APIs to MCP tools
- Browser-like request pacing and proxy rotation
- Token reduction in tool output
Related in mcp

OKX Agent Trade Kit (okx-trade-mcp / okx-trade-cli)
