MOEX_ISS MCP
A client and MCP server for MOEX ISS on the Python standard library: quotes, candles, coupons, offers, OFZ yields and a skill for Claude
- 0 ★ on the repository
- Last commit
- MIT
Extended access
Why this level
- The server and CLI go to the exchange API over the network and exports are saved to CSV files
- Delayed prices and bond prices in percent are easily misread and this is not investment advice
Install
- Works in
- Services
Manual install
{"mcpServers":{"moex-iss":{"command":"<python.exe>","args":["<путь>/mcp_server.py"]}}}Entry for `claude_desktop_config.json`, replace the path with your own.
Access and checks
How we reviewExtended accessThe tool runs code or makes network calls and only reads external data.
- The server and CLI go to the exchange API over the network and exports are saved to CSV files
- Delayed prices and bond prices in percent are easily misread and this is not investment advice
This is third-party code. Review the repository files before installing.
What it does
The project offers three ways to work with Moscow Exchange data on shares and bonds. The command line `python -m moex_iss` runs `quote`, `search`, `history`, `candles` and `bondization` with table or CSV output, for example `python -m moex_iss quote SBER` or `python -m moex_iss history SU26238RMFS4 --from 2025-01-01 --format csv --out ofz.csv`. The Python class `MoexISS` gives the same calls in code and `mcp_server.py` connects them to Claude Desktop or Cowork. The code is written on the Python 3.10+ standard library only and works with no API key. The repository carries a skill `.claude/skills/moex-iss/SKILL.md` that sends the agent to read `AGENTS.md` with a task to method table and data interpretation rules instead of writing requests to iss.moex.com by hand. The documents `docs/ROUTES.md` and `docs/ROUTES_STATUS.md` keep a catalog of verified routes and an automatic report on all 255 routes of the ISS reference. The `scripts/verify_data.py` script self-checks by recomputing accrued interest and yield.
Who it is for. Analysts and private investors who study bonds (OFZ, corporate), the yield curve and the IMOEX composition through Claude Desktop or from the command line.
Good fit when
- Bond coupons, offers and amortizations are exported to a table or a CSV file
- Hourly candles of a share for a period are saved with the `candles` command to a file for a chart
- Yield is computed to the offer or to maturity and the agent reports to which date
- The OFZ curve or the IMOEX composition is requested in Claude Desktop
Not a fit when
- You need the order book, dividends or subscription data: they are unavailable without a subscription
- Real-time quotes are needed: current prices are delayed by about 15 minutes
- The goal is trading signals or investment advice: the project is unofficial and gives no advice
Example request
Show the coupons and the nearest offer for bond SU26238RMFS4 and the yield to maturity.MCP
- Transport
- stdio
- Authentication
- not required
Limitations
The project is unofficial and not affiliated with PJSC Moscow Exchange, the data belongs to the exchange and its use is governed by exchange terms. Without a subscription quotes are delayed by about 15 minutes and the order book, dividends and CCI indicators are unavailable. Bond prices are expressed in percent of face value.
Python 3.10 or newer is required. Connecting to Claude Desktop is done by editing `claude_desktop_config.json` by hand: the command points to `python` and the path to `mcp_server.py`. Live tests `python -m unittest discover -s tests -v` call the exchange API. The project is not investment advice.
How to disable. Remove the `moex-iss` entry from `claude_desktop_config.json` and the project directory, and take the skill out of `.claude/skills`.
FAQ
How do I connect MOEX_ISS to Claude Desktop?
Add the entry `"moex-iss": {"command": "<python.exe>", "args": ["<path>/mcp_server.py"]}` to `claude_desktop_config.json`.
Is an API key needed?
No. The code uses only the Python 3.10 standard library and calls the public ISS with no registration.
How do I get history into a file?
With `python -m moex_iss history SU26238RMFS4 --from 2025-01-01 --format csv --out ofz.csv`.
What does verify_data.py check?
Data freshness and consistency plus a recomputation of accrued interest and yield. All reference routes are checked by `scripts/check_routes.py`.
What does the moex-iss skill do?
It sends the agent to `AGENTS.md` with a task to method table and requires fetching data through `moex_iss` instead of writing requests by hand.
Discussion
No questions or reviews yet.
Related
All Moscow Exchange toolsA read-only Python MCP server for the official Moscow Exchange ISS API: stocks, bonds, FORTS futures and dividends
mcp-moex (AlekseyOsikov)
mcp-moex
MCP server over the Moscow Exchange API: security search, prices, history, metrics, comparison with an index and a schedule mode, no keys needed
MOEX MCP Server 2026
moex_mcp_server_2026
Python MCP server for Moscow Exchange quotes: share price, history, security info, top gainers and losers, dividends and portfolio value
MOEX MCP Server with 20 tools
MOEX MCP Server
A TypeScript Moscow Exchange ISS MCP server on a vertical-slice architecture: 20 tools from quotes to a bond yield curve
MOEX ISS MCP server (Go)
go_mcp_server_moex
A Go MCP server over the Moscow Exchange's public ISS information server: instruments, markets, boards and trading history with no key
MOEX MCP server with caching and retries
MOEX MCP сервер
An npm-published Moscow Exchange ISS MCP server with 10 tools, SQLite caching and resilient request retries
Comparison with similar tools
Cards that share the main search query, and how they differ.
| Tool | Official | Authentication | Repository stars | Main difference |
|---|---|---|---|---|
| MOEX_ISS (this card) | no | not required | 0 | |
| Moscow Exchange data MCP server | no | key is optional | 4 | a server without a CLI, a Python class and a catalog of verified routes |
| MOEX ISS MCP server (Go) | no | not required | 2 | a Go server without a skill and a route report |
README in short
The README shows CLI commands, an example of using the `MoexISS` class, connecting the MCP server, links to `AGENTS.md` and the route catalog, an unofficial status disclaimer and the MIT license.