Iran Brokers Market Data

io.github.sepehr071Published by GitHub account sepehr071v0.2.0Updated Nov 7, 2026

Read-only Iran broker data from Mofid and Agah: stocks, funds, options, bonds, gold, education.

VerifiedSTDIODesktop onlyFinanceData & Analytics

Overview

AI-generated overview

Read-only MCP server that lets an assistant look up Tehran Stock Exchange data from the Mofid and Agah brokers: stocks, funds, options, bonds, gold and more.

What you can do
  • Search symbols and read stock or ETF cards, candles and daily history
  • Get market snapshots, indices, industry rankings and 36 Mofid market rankings
  • List ETFs and funds with price versus NAV, fund detail, NAV history and comparisons
  • Read options chains and contracts, bonds, sukuk, T-bills, plus currency, coin, gold and commodity prices
  • Screen stocks, ETFs and funds on any column, and read valuation and technical scores
  • Fetch Codal filings, notices, news, research PDFs and education articles or courses
When to use it
Useful when someone asks for an Iranian stock, fund, option, index, gold or dollar price, a ranking or screen, a chart, a company's Codal filings, or how something in the bourse works. Not for trading, portfolio or cash views, or real-time tick data.
Requirements
Runs locally over stdio via uvx (or pip) and needs uv with Python 3.10 or newer. No API key or broker account. Optional IRAN_BROKERS_MCP_PROXY sets one HTTP proxy URL or a comma-separated list; system proxy settings are ignored. Agah Pedia and Academy only answer from an Iranian network.
Before you install
Unofficial and unaffiliated with either broker; it calls the public endpoints their websites use, which can change without notice. Data is polled and cached for 30 to 60 seconds, delayed and unaudited, and is not investment advice. Read-only: no login, portfolio, orders or payments. Do not route Agah Pedia and Academy through a foreign proxy.

Installation

In SourceWeft

  1. Open Iran Brokers Market Data in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

[iran-brokers-mcp: unofficial MCP server for Iranian brokers Mofid and Agah (کارگزاری بورس), Tehran Stock Exchange data for Claude, Cursor and Copilot]

iran-brokers-mcp: Iranian broker (کارگزاری بورس) market data MCP server for AI agents

iran-brokers-mcp is an unofficial, read-only MCP server that lets an AI agent read Tehran Stock Exchange market data through two Iranian brokers, Mofid Securities (کارگزاری مفید, emofid.com) and Agah (کارگزاری آگاه, agah.com).
Its 22 tools cover stocks, ETFs and funds (صندوق سرمایه‌گذاری), options (آپشن), bonds and sukuk (اوراق), gold coins (سکه) and currency, screeners, Codal announcements and education articles, on Tehran Stock Exchange (بورس تهران) and Fara Bourse (فرابورس).
No API key or broker account is needed, and it works in Claude, Cursor, Copilot and any other MCP client.

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

[Install in VS Code] [Install in Cursor]

For AI agents · What it can do · Quick start · Tools · Limits · FAQ · فارسی


Last verified 2026-11-01 against the live Mofid and Agah APIs.

For AI agents

  • What: unofficial MCP server (model context protocol) for Mofid and Agah: symbol search, stock cards, OHLC candles and daily history, market snapshot, 36 Mofid rankings, Agah market watch and screener, ETFs with price vs NAV, fund detail/history/comparison, options chain and contract, bonds and T-bills, currency/coin/gold/commodity prices and history, Codal filings, valuation scores, technical tally, education articles and courses.
  • Install: uvx iran-brokers-mcp or claude mcp add iran-brokers -- uvx iran-brokers-mcp. Transport: stdio. Needs uv (Python 3.10+).
  • Auth: none. Optional IRAN_BROKERS_MCP_PROXY (one HTTP proxy URL for every request, or a comma-separated list); system proxy settings are ignored.
  • Access: read-only market data. It cannot log in, read a portfolio, cash or orders, place, edit or cancel orders, or pay. No confirmation is needed before calling any tool.
  • Tools: 22, all prefixed br_. Typical sequences: br_search -> br_stock / br_history; br_market -> br_market_top or br_stocks; br_etfs -> br_stock or br_fund; br_screener; br_rates; br_announcements; br_learn -> br_learn(ref=...).
  • source argument: each source answers in its own block ({"mofid": ..., "agah": ...}). With all, a source that fails shows {"error": ...} and the other still answers. Blocks are never blended into one row, because the fields differ.
  • Use when: the user asks for a stock, fund, option, index, gold or dollar price on the Iranian market, a ranking or screen, a chart, a company's Codal filings, or how something in the bourse works.
  • Do not use when: the user wants to trade, see their own portfolio, or needs real-time tick data (everything here is a polled snapshot). For raw exchange data use tsetmc-mcp; for full financial statements use codal-mcp.
  • Output: compact JSON. Prices are Rial (divide by 10 for Toman). Text Persian.
  • Machine-readable: server.json and the iran-mcp catalog.

What it can do

  • Get Tehran Stock Exchange data in Claude: find a symbol, read its price card (P/E, EPS, NAV, buyer and seller flows, order book), candles from 1 minute to weekly, and the market snapshot with indices and movers
  • Compare Iranian ETFs from an AI agent: list ETFs with price, NAV and the bubble gap (Mofid 375 ETFs, Agah 331 listed ETFs), then read one fund's detail, NAV history or compare several
  • Read the options chain (call and put contracts) and one contract's detail
  • Screen stocks, ETFs or funds on any column with the Agah screener, or use Mofid's 36 rankings (top gainers, value, queues and more)
  • Bonds, sukuk and T-bills with yield, plus currency, crypto, coin (سکه), gold and commodity prices with history
  • Codal announcements by company, type and date, plus notices, news and research PDFs
  • Valuation and technical scores: theoretical price, fundamental and technical scores, indicator tally per stock or industry
  • Education: Mofid blog, Agah Pedia articles and Agah Academy courses
  • Read-only by design: no login, no orders, no captcha solving

Example prompts:

  • "Get today's Tehran Stock Exchange summary: indices, top movers and the dollar and coin prices."
  • "Compare Iranian ETFs by price versus NAV and show which trade at the biggest premium."
  • "Show the options chain for Foolad and the details of one call contract."
  • "Which stocks have the lowest P/E and a positive money flow this week?"
  • قیمت و نسبت قیمت به NAV صندوق‌های طلا را مقایسه کن.
  • بیشترین صف خرید امروز بورس کدام نمادهاست؟
  • آخرین اطلاعیه‌های کدال نماد فولاد را بیاور.

Quick start

You need uv. No API key or account.

Claude Code
bash
claude mcp add iran-brokers -- uvx iran-brokers-mcp
Claude Desktop

Settings → Developer → Edit Config, then add:

json
{  "mcpServers": {    "iran-brokers": { "command": "uvx", "args": ["iran-brokers-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": {    "iran-brokers": { "type": "stdio", "command": "uvx", "args": ["iran-brokers-mcp"] }  }}
Anything else

It is a standard stdio MCP server: run uvx iran-brokers-mcp, or pip install iran-brokers-mcp and run iran-brokers-mcp.

Tools

Merged tools take source: mofid, agah or all (the default is in brackets). Single-source tools say which broker they use.

ToolSourceWhat it does
br_searchboth [all]Find the id of a stock, fund, option or index by symbol or name
br_stockboth [all]One stock or ETF in detail: Mofid price card (P/E, EPS, NAV, flows, scores, optional 5-level order book) and Agah card (ratios, returns, flows, order book)
br_historyboth [mofid]Mofid OHLC candles (1 minute to weekly, any ISIN) or Agah daily rows with buyer/seller flows
br_marketboth [all]Today's indices, value, queues (Mofid) and total index, money flow, movers, dollar/coin/gold/oil prices (Agah)
br_industriesboth [all]Industry ranking with valuation ratios, returns and money flow; one industry with its stocks
br_indexboth [all]Index card (Mofid) and daily index history (both)
br_etfsboth [mofid]ETFs with price, NAV and gap/bubble: Mofid 375 ETFs, Agah 331 listed ETFs with NAV returns
br_learnboth [all]Search and read Mofid blog and Agah Pedia articles, list categories, search Agah Academy courses
br_quotesMofidUp to 30 live quotes in one call
br_market_topMofid36 market rankings
br_bondsMofidBonds, sukuk and T-bills with yield
br_ratesMofidCurrency, crypto, coin, gold and commodity prices and their history
br_newsMofidNotices, Codal letters, Telegram posts and research PDFs
br_announcementsMofidCodal filings by company, type and date
br_scoresMofidTheoretical price, technical and fundamental scores
br_mofid_fundsMofidMofid-branded fund catalogue
br_stocksAgahMarket watch of about 750 stocks
br_screenerAgahFilter stocks, ETFs or all funds on any column
br_fundAgahFund detail, NAV and bubble history, comparison of funds
br_optionsAgahOptions chain, or one contract
br_technicalAgahTechnical indicator tally for a stock or industry
br_stock_eventsAgahDividends, capital changes, notices and holders

Every tool is read-only. If you used the separate mofid-mcp or agah-mcp servers: mf_search and ag_search -> br_search; mf_symbol, mf_depth, ag_stock -> br_stock; mf_history, ag_stock_history -> br_history; mf_market_summary, ag_market_pulse, ag_market_overview -> br_market; mf_industries, ag_industries -> br_industries; mf_index, ag_index_history -> br_index; mf_etfs -> br_etfs; mf_learn, mf_learn_categories, ag_articles, ag_article, ag_academy -> br_learn; mf_fx_gold, mf_rate_history -> br_rates; ag_fund, ag_fund_trend, ag_fund_compare -> br_fund; ag_options, ag_option -> br_options; the others keep their name with the br_ prefix (mf_quote -> br_quotes).

Limits

  • No portfolio, orders or cash. Those need a broker login (EasyTrader, AsaTrader); nothing here logs in or can place an order, and this is not built.
  • Agah Pedia and Academy answer only from an Iranian network (pediaapi.agah.com, academyapi.agah.com time out from abroad). The error says so; the Mofid side of br_learn still answers. Do not put a foreign proxy in front of them.
  • Mofid depends on the accept-info header of the Bourse View gateway (derived from the server clock; the client resyncs on a 401). If the site changes that check, Mofid tools fail with an HTTP 401 error and the Agah side keeps working.
  • Data is polled snapshots, cached 30 to 60 seconds, delayed or unaudited; the market trades Saturday to Wednesday about 09:00-12:30 Tehran time.
  • The two sources use different ids for funds (Mofid ISIN, Agah national code like 14010557380_A01) and different fields, so merged tools show them side by side.
  • Prices are Rial; divide by 10 for Toman. Dates follow each site.

FAQ

How do I get Tehran Stock Exchange data in Claude?

Add iran-brokers-mcp with claude mcp add iran-brokers -- uvx iran-brokers-mcp, then ask in plain language. The agent finds the symbol with br_search, reads it with br_stock or br_history, and gets the market overview from br_market.

How can I compare Iranian ETFs and funds with an AI agent?

Use br_etfs for the list with price, NAV and gap (bubble), br_fund for one fund's detail, NAV history or a side-by-side comparison, and br_screener to filter funds on any column.

Is there an API for Mofid or Agah market data?

Neither broker documents a public API. This server calls the same public JSON the websites use, without login, and returns compact JSON.

Can it place orders or show my portfolio?

No. It is read-only and has no login. Portfolio, cash and orders need your broker account and are not built.

Does it work outside Iran?

Yes for Mofid and Agah Research. Agah Pedia and Academy answer only from an Iranian network. Set IRAN_BROKERS_MCP_PROXY to route through a proxy; do not use a foreign one for Pedia and Academy.

Is it allowed?

It calls the public endpoints the websites use, two requests at a time per broker and with caching, and each client sends the headers its site's web app sends (Chrome TLS fingerprint, Referer, Accept, Mofid's accept-info).

How is it different from tsetmc-mcp and codal-mcp?

tsetmc-mcp and codal-mcp read the exchange and Codal directly; this server reads the brokers' own views of the same market (rankings, screeners, NAV gaps, options, education).

Is the data real time? Is it investment advice?

No to both. Data is polled snapshots cached for 30 to 60 seconds. Nothing it returns is financial advice.

Configuration

VariableDefaultMeaning
IRAN_BROKERS_MCP_PROXYunsetOptional HTTP proxy URL for all Mofid and Agah requests; system proxy settings are ignored. A comma-separated list is used one at a time: the next proxy takes over when one is blocked or cannot connect

فارسی: سرور MCP کارگزاری‌های مفید و آگاه برای دستیار هوش مصنوعی

پروژه iran-brokers-mcp یک سرور MCP غیررسمی و فقط‌خواندنی است که داده‌های عمومی بازار سرمایه را از دو کارگزاری، کارگزاری مفید (emofid.com) و کارگزاری آگاه (agah.com)، در اختیار دستیار هوش مصنوعی (Claude، Cursor، Copilot و ...) می‌گذارد.

چه کارهایی می‌کند

  • سهام بورس تهران و فرابورس: جستجوی نماد، کارت قیمت، کندل، تاریخچه روزانه، خلاصه بازار و شاخص‌ها.
  • صندوق‌های سرمایه‌گذاری و ETF: قیمت، NAV، حباب، تاریخچه و مقایسه صندوق‌ها.
  • اوراق و آپشن: اوراق بدهی، صکوک، اوراق خزانه با بازده؛ زنجیره آپشن و جزئیات هر قرارداد.
  • سکه، طلا و ارز: قیمت و تاریخچه.
  • غربالگر و رتبه‌بندی: ۳۶ رتبه‌بندی مفید و غربالگر آگاه روی هر ستون.
  • اطلاعیه‌های کدال، خبر و آموزش: مقاله‌ها و دوره‌های مفید و آگاه.

نکته‌ها

  • فقط‌خواندنی است: ورود به حساب، سبد دارایی، موجودی و ثبت سفارش ندارد.
  • پدیا و آکادمی آگاه فقط از اینترنت ایران جواب می‌دهد.
  • داده‌ها لحظه‌ای نیست و هر ۳۰ تا ۶۰ ثانیه تازه می‌شود. مبلغ‌ها ریال است. توصیه سرمایه‌گذاری نیست.
  • کلید API لازم نیست و سرور روی سیستم خود شما اجرا می‌شود.

نصب (اول uv را نصب کنید). در Claude Code:

bash
claude mcp add iran-brokers -- uvx iran-brokers-mcp

Development

bash
git clone https://github.com/sepehr071/iran-brokers-mcp && cd iran-brokers-mcpuv syncuv run ruff check . && uv run ruff format --check .uv run python -m pytest -q          # offline unit tests on recorded responsesuv run python -m pytest -m live -q  # live pass against Mofid and Agahuv build

Releases: bump the version in pyproject.toml and server.json, then push a v* tag. GitHub Actions publishes to PyPI. Issues and PRs are welcome.

Related servers

  • tsetmc-mcp for Tehran Stock Exchange prices, order book, real vs legal trading and indices
  • codal-mcp for Codal disclosures and financial statements
  • iran-gold-mcp for live 18k gold prices on Iranian platforms
  • iran-mcp: catalog of all Iranian-service MCP servers

Disclaimer

Unofficial and not affiliated with or endorsed by Mofid Securities or Agah. It is read-only and uses the public endpoints of their websites, which can change without notice. Data is informational, delayed and unaudited. Nothing here is investment advice.

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

Source: README.md at commit 046473b

Tools

0
SourceWeft has not started this package in its sandbox yet, so its tools are not known.

Version history

3
  1. v0.2.0LatestNov 7, 2026
  2. v0.1.2Nov 3, 2026
  3. v0.1.1Nov 1, 2026

Score

50% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts