CBR MCP with caching and a SOAP key rate
mcp-cbr-rates
A Bank of Russia data MCP server with five strictly typed tools, a TTL cache and 52 unit tests on offline fixtures, installed via pipx
Low risk
We rate an entry low when it mostly gives the agent instructions and reference material.
Why this level
- It only reads open public Bank of Russia data, with no writes and no secrets
Install
Manual install
pipx install atomno-mcp-cbr-ratesInstall the package from PyPI.
This is third-party code. Review the repository files before installing.
What it does
The server exposes five tools: a currency rate on a date (get_rate), rate history over a period (history_rates), the key rate over a period (key_rate), monthly year-over-year inflation (inflation), and a combined get_statistics snapshot with the key rate, USD/EUR/CNY rates and inflation in one response. All data is read from public XML and SOAP endpoints on cbr.ru through an async httpx client with automatic retries on 5xx errors and safe XML parsing via defusedxml. A built-in TTL cache holds daily quotes for an hour and historical series for a day, to avoid hammering the source.
Who it is for. For people who want a ready, well-tested source of Bank of Russia rates and the key rate without writing their own parser.
Good fit when
- You need an official rate on a date or rate history over up to 366 days
- You want a single combined macro snapshot in one call (key rate plus main currencies plus inflation)
- It matters that the data source is covered by tests on offline fixtures, not just manual checks
Not a fit when
- You need history over more than 366 days in one call: you will need to split the request
- You need precious metal prices: this server does not provide them, unlike some alternatives
Example request
Plot the USD/RUB rate over the last 90 days and give me the combined macro snapshotLimitations
The server is unofficial and not affiliated with the Bank of Russia, which the author states explicitly, disclaiming responsibility for data accuracy. The history_rates window is capped at 366 days per call. There are no precious metal prices. If cbr.ru's HTML or XML schemas change, individual tools may break temporarily until the package is updated.
How to disable. Remove the cbr-rates entry from your MCP client config and optionally uninstall the package: pipx uninstall atomno-mcp-cbr-rates.
MCP
- Transport
- stdio
- Authentication
- not required
| Environment variables | |
|---|---|
| MCP_CBR_HTTP_TIMEOUT | HTTP timeout for CBR calls in seconds, defaults to 15 |
| MCP_CBR_CACHE_DAILY_TTL | Cache TTL for daily quotes in seconds, defaults to 3600 |
| MCP_CBR_CACHE_HISTORY_TTL | Cache TTL for historical series in seconds, defaults to 86400 |
Security check
- It only reads open public Bank of Russia data, with no writes and no secrets
README in short
The README lists the five tools with input and output types, gives pipx or uv install steps, config for Cursor, Claude Desktop and Claude Code, an environment variable table for timeouts and cache TTLs, a list of Bank of Russia data source endpoints, and an explicit unofficial-status disclaimer.
FAQ
Is it officially affiliated with the Bank of Russia?
No, it is an independent, unofficial wrapper around cbr.ru's open endpoints.
Can I get multi-year history in one call?
No, history_rates is capped at 366 days per call, longer periods need repeated calls.
Related
A set of investment research skills for Claude Code and Codex built on four investors' methodologies. It is a research tool, not investment advice
Stripe's official MCP server, plugins and skills: the agent searches the API and docs, reads and changes account data
Alpaca's official MCP server: orders for stocks, ETFs, crypto and options, position management and market data in plain language
inn-check-ru: counterparty risk traffic light
inn-check-ru
An open-source skill that checks a Russian company by tax ID across EGRUL, bailiffs, courts, bankruptcy and sanctions, and returns a dated risk verdict