iran-crypto-mcp: Iranian crypto exchanges MCP server for AI agents
An unofficial, read-only MCP server for the public market data of Iranian crypto exchanges: Nobitex, Wallex, Bitpin, Ramzinex, Tabdeal, OMPFinex and Exir. Compare a coin's price across all of them in Toman, read order books and trades, get candles and top movers.
Public market data only. No API keys, no login, no account data, no orders or trading.
For AI agents
- What: unofficial MCP server for the public endpoints of 7 Iranian crypto exchanges.
- Install:
uvx iran-crypto-mcporclaude mcp add iran-crypto -- uvx iran-crypto-mcp. Transport: stdio. Needs uv (Python 3.10+). - Auth: none. Optional
IRAN_CRYPTO_MCP_PROXY(HTTP proxy URL, or a comma-separated list); system proxy settings are ignored. - Access: read-only, so no confirmation is needed before calling any tool.
- Tools: 8, all prefixed
ic_. Typical sequence:ic_compare_price->ic_get_orderbook->ic_candles. - Output: compact JSON. Every IRT price is in Toman (field names say
*_toman); USDT markets say*_usdt. - Machine-readable:
server.json.
Tools
| Tool | Purpose |
|---|---|
ic_list_exchanges |
The supported exchanges, their native price unit and what each can answer |
ic_list_markets |
Coins an exchange trades against Toman (IRT) or USDT |
ic_compare_price |
One coin's price on every exchange in one call, cheapest first, with the spread (an exchange that fails is reported, not fatal) |
ic_get_ticker |
Live price, best bid and ask, 24h range, change and volume of a coin on one exchange |
ic_get_orderbook |
Top bids and asks (up to 20 levels) with the spread |
ic_recent_trades |
Latest public trades, newest first (not on OMPFinex) |
ic_candles |
OHLC candles, 15m / 1h / 4h / 1d (Nobitex and Wallex) |
ic_top_movers |
Biggest 24h gainers or losers on one exchange, illiquid coins filtered out |
Units
| Exchange | Published unit | Returned |
|---|---|---|
| Nobitex, Ramzinex, OMPFinex | Rial | Toman (divided by 10) |
| Wallex, Bitpin, Tabdeal, Exir | Toman | Toman |
| USDT markets (all) | USDT | USDT |
The same BTC price differs 10x between Rial and Toman exchanges; this server normalizes it so exchanges compare directly.
Notes
-
Every exchange row carries
name_fa, the exchange's own Persian name (نوبیتکس, والکس, بیتپین, رمزینکس, تبدیل, او ام پی فینکس, اکسیر), so Persian answers do not depend on the model spelling them. -
Replies stay under about 15 KB: order books cap at 20 levels, trades at 50, candles at 100, movers at 25.
-
Bid and ask are missing from the Bitpin, Tabdeal, OMPFinex and Exir tickers (use
ic_get_orderbook); Tabdeal has no volume. -
Nobitex refuses USDT/IRT candles (its CDN answers HTTP 403, browsers included): use Wallex for those.
-
Quotes differ between exchanges for real reasons (fees, liquidity, a stale last trade): check the order book before acting on a spread.
-
Data is cached for 15 seconds and concurrency is limited to 2 requests.
Development
uv sync
uv run ruff check . && uv run ruff format --check .
uv run python -m pytest -q # offline unit tests
uv run python -m pytest -m live -q # calls the real exchange APIs
uv build
Not affiliated with any exchange. Prices are informational, not financial advice. MIT license.
Metadata
Release files for iran-crypto-mcp 0.1.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| iran_crypto_mcp-0.1.1.tar.gz | 407.8 kB | With provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| iran_crypto_mcp-0.1.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 427.4 kB
Release files / iran_crypto_mcp-0.1.1.tar.gz
| Download URL | iran_crypto_mcp-0.1.1.tar.gz |
|---|---|
| Size | 407.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
a163efbd780f1305741363be212205754beed4297fa130222b61b785682530f0
|
|
BLAKE2b-256 checksum How to use checksums |
ee60bef4e2584c4afc2221b4f27f43982fb97b2ff0656c1ba78c46506e043096
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 22, 2026.
Transparency logRelease files / iran_crypto_mcp-0.1.1-py3-none-any.whl
| Download URL | iran_crypto_mcp-0.1.1-py3-none-any.whl |
|---|---|
| Size | 19.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
b65ef4fcf61feb3e5d5b57ac7c1bef3e0a73389ab17c915c15d9dc5742572fb7
|
|
BLAKE2b-256 checksum How to use checksums |
f2e36aef5ab91d87f2c6c60a842472128617718375ae18d07655749e408f4fac
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 22, 2026.
Transparency logSecurity for iran-crypto-mcp 0.1.1
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
Full provenance
All 2 files in this release have been uploaded with provenance metadata.
Attestation for iran_crypto_mcp-0.1.1.tar.gz
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 22, 2026.
Transparency logA note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.