mcpField
C
CBR Rates MCP Server

CBR Rates MCP Server

本地服务
github.com/atomno-labs金融数据18 周前更新

关于 CBR Rates MCP Server

CBR Rates MCP Server 为 AI Agent 和 MCP 客户端提供俄罗斯央行的公开汇率与宏观数据。五个工具涵盖当前及历史汇率、关键利率、通胀和综合数据快照,并内置缓存且无需 API 密钥。

主要功能

  1. 01查询当前货币汇率
  2. 02获取历史汇率序列
  3. 03查询关键利率历史
  4. 04获取通胀数据
  5. 05查看综合宏观快照
  6. 06TTL 缓存

适用场景

  1. 01查询指定日期的官方汇率
  2. 02查看一段时间内的汇率变化
  3. 03获取关键利率和通胀数据
  4. 04一次汇总汇率与通胀数据

MCP 相关

它通过 stdio 向 MCP 客户端提供五个类型化工具,用于获取 CBR 公开的汇率、关键利率、通胀和宏观快照数据。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"cbr-rates": {
"command": "uvx",
"args": [
"atomno-mcp-cbr-rates"
]
}
}
}
启动命令uvx atomno-mcp-cbr-rates

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
pypiatomno-mcp-cbr-rates

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

mcp-cbr-rates

一个模型上下文协议(MCP)服务,向 AI Agent 提供俄罗斯银行 (Центральный банк РФ,CBR)的公开数据——货币报价、关键利率、通胀 和精简宏观概览。

License: MIT PyPI GitHub release Tests Coverage Python MCP Glama

mcp-cbr-rates MCP 服务

mcp-cbr-rates 是 atomno 系列 MCP 服务的一员,专注于俄罗斯金融科技生态。它完全开源,无需 API 密钥,并基于 CBR 官方公开端点构建。


功能

  • 五个高质量 MCP 工具,每个工具都有严格的 Pydantic 模式: get_rate、history_rates、key_rate、inflation、statistics。
  • 内置 TTL(生存时间)缓存:每日报价缓存 1 小时,历史序列缓存 24 小时,以减少对数据源的请求。
  • 异步 httpx 传输,并在发生 5xx 错误时自动重试。
  • 使用 defusedxml 安全解析 XML。
  • 50 多项单元测试,使用 respx 模拟 HTTP,覆盖率 ≥80 %。
  • 不含机密信息、无遥测、无第三方跟踪器。

快速开始

从 PyPI 安装(推荐)
pipx install atomno-mcp-cbr-rates
atomno-mcp-cbr-rates  # starts the MCP server over stdio

或使用 uv:

uv tool install atomno-mcp-cbr-rates
从源代码安装
git clone https://github.com/atomno-mcp/mcp-cbr-rates.git
cd mcp-cbr-rates
pip install -e .
atomno-mcp-cbr-rates  # starts the MCP server over stdio
与 Cursor 配合使用

将以下内容添加到 .cursor/mcp.json(或全局配置文件 ~/.cursor/mcp.json):

{
  "mcpServers": {
    "cbr-rates": {
      "command": "atomno-mcp-cbr-rates"
    }
  }
}
与 Claude Desktop 配合使用

添加到 claude_desktop_config.json:

{
  "mcpServers": {
    "cbr-rates": {
      "command": "atomno-mcp-cbr-rates"
    }
  }
}

在 Windows 上,配置文件位于 %APPDATA%\Claude\claude_desktop_config.json;在 macOS 上,位于 ~/Library/Application Support/Claude/claude_desktop_config.json。

与 Claude Code 配合使用
claude mcp add cbr-rates -- atomno-mcp-cbr-rates

工具

名称输入返回值
get_ratechar_code: str、on_date?: dateCurrencyRate — 指定日期(或最新日期)的单个报价
history_rateschar_code: str、date_from: date、date_to: dateHistoryRates — 每日报价序列
key_ratedate_from?: date、date_to?: dateKeyRateHistory — CBR 关键利率序列
inflationyear_from?: int、year_to?: intInflationData — 月度同比 CPI 百分比
statistics(无)MacroSnapshot — 综合仪表盘:关键利率 + USD/EUR/CNY + 通胀

英文自然语言示例:

“2024 年 4 月 25 日的官方 EUR 汇率是多少?” 工具:get_rate(char_code="EUR", on_date="2024-04-25")

“绘制过去 90 天的 USD-RUB 每日汇率。” 工具:history_rates(char_code="USD", date_from=..., date_to=...)

“一次性提供最新的关键利率、USD/EUR/CNY 汇率和通胀数据。” 工具:statistics()

history_rates 的时间范围上限为 366 天;要查询更长时间,请多次调用该工具。


配置

所有设置均为可选项,通过环境变量读取:

变量默认值描述
MCP_CBR_HTTP_TIMEOUT15CBR 调用的 HTTP 超时时间,单位为秒。
MCP_CBR_CACHE_DAILY_TTL3600每日报价的缓存 TTL(秒)。
MCP_CBR_CACHE_HISTORY_TTL86400历史序列和 SOAP 响应的缓存 TTL。
MCP_CBR_LOG_LEVELINFOPython 标准日志级别。

为兼容性,仍接受旧版 CBR_* 名称,但新配置应使用 MCP_CBR_*。

无需配置 API 密钥——此处使用的所有 CBR 端点均为公开端点。


开发

git clone https://github.com/atomno-mcp/mcp-cbr-rates.git
cd mcp-cbr-rates
python -m venv .venv && source .venv/bin/activate  # or .\.venv\Scripts\activate on Windows
pip install -e ".[dev]"
pytest --cov=src/mcp_cbr_rates

目录结构:

apps/mcp-cbr-rates/
├── src/mcp_cbr_rates/
│   ├── server.py        # FastMCP entry point, tool registration
│   ├── tools.py         # high-level async tools with caching
│   ├── client.py        # httpx wrapper around CBR XML / SOAP / HTML endpoints
│   ├── schemas.py       # Pydantic v2 models for inputs & outputs
│   ├── cache.py         # async TTL cache
│   ├── currency_codes.py # static ISO → CBR id map (with dynamic fallback)
│   └── errors.py        # typed exception hierarchy
└── tests/               # respx-mocked unit tests + fixtures

数据源

  • https://www.cbr.ru/scripts/XML_daily.asp — 每日货币报价。
  • https://www.cbr.ru/scripts/XML_dynamic.asp — 历史货币序列。
  • https://www.cbr.ru/scripts/XML_valFull.asp — 货币代码查询。
  • https://www.cbr.ru/DailyInfoWebServ/DailyInfo.asmx — 提供 CBR 基准利率的 SOAP 服务。
  • https://www.cbr.ru/hd_base/infl/ — 月度同比通胀率表。

所有端点均为只读且免费。


免责声明

本项目与俄罗斯银行没有任何关联。这是一个非官方项目,尽力封装公开可用的数据。使用风险由您自行承担;作者不对通过此服务提供的数据的时效性、准确性或适用性承担任何责任。

如果 CBR 的 HTML 或 XML 架构发生变化,个别工具可能会停止工作,直到此软件包更新。如果您发现回归问题,请提交 issue。


许可证

MIT——请参阅 LICENSE。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。