mcpField
B
BCB BR MCP

BCB BR MCP

远程服务
bcb.sidneybissoli.com金融数据10今天更新

关于 BCB BR MCP

BCB BR MCP 是查询巴西中央银行经济与金融数据的 MCP 服务,覆盖 SGS 时间序列、Focus 市场预期和 PTAX 汇率。它提供历史数据、指标比较、搜索及现值查询。

主要功能

  1. 01查询 SGS 时间序列
  2. 02获取 Focus 市场预期
  3. 03查询 PTAX 汇率
  4. 04搜索并查看指标目录
  5. 05比较序列并计算变化

适用场景

  1. 01查看 Selic 和 IPCA 指标
  2. 02分析指定日期范围的经济序列
  3. 03比较通胀指标或汇率
  4. 04查询市场对经济指标的预期

MCP 相关

向 MCP 客户端提供查询工具、只读资源目录和预设提示词,数据来自巴西央行公开 API。

配置

远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。

服务地址https://bcb.sidneybissoli.com/mcp
一键复制安装命令
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。

安装包
npmbcb-br-mcp1.19.0

工具

15
参数类型必填说明
codigonumber是SGS/BCB 中的序列代码(例如:433 表示月度 IPCA,11 表示 Selic)
dataInicialstring否Data inicial no formato yyyy-MM-dd ou dd/MM/yyyy (opcional)
dataFinalstring否Data final no formato yyyy-MM-dd ou dd/MM/yyyy (opcional)
frequenciaenum否Opcional: reamostra a série para esta frequência antes de responder (só agrega para períodos MAIORES; pedir frequência mais fina que a da série é recusado). Útil para comparar séries de periodicidades diferentes.mensal | trimestral | anual
agregacaoenum否Como agregar os valores de cada período quando `frequencia` é informada. `ultimo` (padrão) serve a nível de preço, taxa e índice; `soma` a fluxo; `acumulada` a séries que JÁ SÃO variação percentual (IPCA mensal, por exemplo), compondo geometricamente — somar 12 variações mensais NÃO dá a inflação do ano.ultimo | primeiro | media | soma | acumulada

详细介绍

巴西中央银行(BCB)——SGS 时间序列 MCP 服务

npm version npm downloads node MCP Registry LobeHub smithery badge GitHub stars GitHub Sponsors License: MIT AllMCPs Verified mcpindex

葡萄牙语版

面向巴西中央银行(Banco Central do Brasil,BCB)的 MCP(Model Context Protocol)服务:提供 SGS 时间序列(SGS/BCB)、通过 Olinda OData API 提供的 Focus 市场预期调查,以及 PTAX 汇率。

直接通过 Claude 等 AI 助手查询经济和金融指标,例如 Selic(利率)、IPCA(通胀)、汇率、GDP 等。

如果您觉得这个项目有用,请考虑在 GitHub 上为它点个星。这有助于更多人发现这个项目!

**功能:**17 个工具(技能)· 3 个资源 · 3 个提示词——MCP 客户端查询巴西中央银行所需的一切:SGS/BCB 时间序列、Focus 市场预期调查和 PTAX 汇率。

查看实际效果

用简单的葡萄牙语向助手提问:

  • “当前 Selic 利率是多少?” → bcb_indicadores_atuais
  • “显示 2024 年逐月的 IPCA。” → bcb_serie_valores
  • “过去 12 个月美元汇率的变化是多少?” → bcb_variacao
  • “市场对 2027 年 IPCA 有何预期?” → bcb_focus_expectativas
  • “下一次 Copom 会议预期的 Selic 利率是多少?” → bcb_focus_selic
  • “周五欧元的 PTAX 收盘价是多少?” → bcb_cambio_cotacao

答案实时来自巴西中央银行的 SGS API——提供带有来源信息的准确数据,而不是根据训练数据猜测数字。

功能

  • 历史数据 - 根据代码查询时间序列值,并筛选日期
  • 最新值 - 获取任意序列最近的 N 个值
  • 元数据 - 序列的详细信息(频率、来源等)
  • 热门序列目录 - 135 个经过源数据核验的经济指标,按类别整理
  • 智能搜索 - 按关键词查找序列(不区分重音符号)
  • 当前指标 - 关键经济指标的最新值
  • 轻松处理长时间段 - BCB API 将日频序列限制在 10 年窗口内 (HTTP 406),并拒绝开放时间窗口;系统会自动切分请求、获取数据并合并, 因此可以直接查询 15 年的日频数据
  • 频率统一 - 按明确的约定将序列重采样为月度、季度或年度频率,包括对 本身已是百分比变化的序列进行几何复合(将月度 IPCA 转为年度 IPCA)
  • 变化率计算 - 计算期间之间的百分比变化,并提供统计数据
  • 序列比较 - 比较同一期间内的多个序列;当它们的周期频率不同时会发出警告
  • Focus 调查 - 按月度/季度/年度期限或滚动 12/24 个月通胀率,提供 IPCA、GDP、汇率等指标的市场预期(均值、中位数、标准差、最小值、最大值、受访者人数);还提供按 Copom 会议划分的 Selic 预期
  • PTAX 汇率 - BCB 发布的任意货币的官方收盘报价,支持单日或日期范围

📖 文章(葡萄牙语): Séries do Banco Central: como consultar o SGS, a Focus e a PTAX sem cair nas armadilhas — 实测三项 API 限制、水平值与变化率序列、Focus 范围,以及 ODbL 的要求。网站也发布了葡萄牙语和英语版本:sidneybissoli.com。

可用工具

工具描述
bcb_serie_valores按代码和日期范围查询序列值;自动切分较长的时间窗口,并可将序列统一到较低频率
bcb_serie_ultimos获取序列最近的 N 个值(N 不限——已绕过上游 20 个值的限制)
bcb_serie_metadados获取序列元数据(名称、频率、类别、最新值)
bcb_series_populares按类别列出热门序列
bcb_buscar_serie按名称或描述搜索序列(不区分重音符号,词语之间按 AND 匹配;日常用语会转换为 BCB 使用的表述,并在响应中说明)
bcb_indicadores_atuais最新值:Selic、IPCA、USD/BRL、IBC-Br
bcb_variacao计算一个序列在某期间的百分比变化:水平值序列计算水平变化;本身已是期间变化率的序列(IPCA、IGP-M、INPC……)则计算复合累计变化;analise.metodo 会说明采用的方法
bcb_comparar比较同一期间内的 2 到 5 个序列并排序(每个序列均遵循相同的水平值/复合计算规则,且会在 metodo 中说明)
bcb_focus_expectativas获取某项指标的 Focus 调查预期,期限通过参数指定(月度、季度、年度、滚动 12 个月/24 个月通胀率);支持 top5 标志
bcb_focus_selic获取按 Copom 会议划分的 Selic 利率预期(R1/2026 格式)
bcb_focus_referencias列出 Focus 调查实际发布的指标和参考日期,按范围细分(五种期限及以 Copom 会议为轴的 selic)——各范围的指标集不同(月度 9 项,年度 26 项)
bcb_cambio_cotacao获取某种货币的 PTAX 报价(默认 USD),支持单日或日期范围
bcb_cambio_moedas列出 BCB 发布报价的货币
searchOpenAI Deep Research 契约:搜索序列目录(精选目录 + 开放数据门户索引),并返回 { id, title, url } — 参见 ChatGPT (Deep Research)
fetchOpenAI Deep Research 契约:将单个序列作为可读文档返回,并附上其规范公开 URL

资源

参考目录列出了服务器作为 MCP 资源(客户端可附加的只读上下文数据)公开的内容:

URI描述
bcb://series/populares按类别组织的 135 个经验证的 BCB 经济数据序列目录(JSON)
bcb://series/categorias数据序列目录中可用类别的列表(JSON)
bcb://series/principais最常用指标的代码——Selic、IPCA、USD/BRL、GDP 等(JSON)

提示词

服务器提供的现成模板,作为 MCP 提示词:

提示词描述
indicadores_atuais查询巴西的关键经济指标(Selic、IPCA、USD/BRL、IBC-Br)
panorama_economico生成巴西经济的完整概览
comparar_inflacao比较过去 12 个月巴西的主要通胀指数(IPCA、IGP-M、INPC)

安装

通过 Smithery(推荐)

访问 Smithery 上的 bcb-br-mcp,并按照 MCP 客户端的安装说明操作。

通过 URL(Claude.ai、Claude Desktop、任何 MCP 客户端)

直接使用 HTTP 端点,无需安装:

https://bcb.sidneybissoli.com/mcp

旧主机名 https://bcb.sidneybissoli.workers.dev 仍可使用,较早的 POST / 路由也一样——在端点迁移到 /mcp 之前配置的客户端会自动透明地重写请求,因此以前能用的功能仍然可用。新配置应使用上面的 URL。

通过 npx(Claude Desktop)

将以下内容添加到 Claude Desktop 配置文件:

Windows: %APPDATA%\Claude\claude_desktop_config.json

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "bcb-br": {
      "command": "npx",
      "args": ["-y", "bcb-br-mcp"]
    }
  }
}
通过全局安装
npm install -g bcb-br-mcp
{
  "mcpServers": {
    "bcb-br": {
      "command": "bcb-br-mcp"
    }
  }
}
ChatGPT(Deep Research)

ChatGPT 深度研究(以及公司知识和通过 Responses API 实现的研究工作流)仅使用恰好公开 search 和 fetch 的 MCP 服务——本服务除了提供 bcb_* 工具外,也提供这两个工具。将连接器指向托管端点即可,无需密钥:

https://bcb.sidneybissoli.com/mcp

search 会根据数据序列目录对查询进行排序——目录包含 135 个精选数据序列,以及从 Open Data Portal 索引的数千个数据序列——并返回 { id, title, url }(id 格式为 sgs:<code>);fetch 会以易读的 Markdown 格式返回数据序列(名称、类别、频率、单位、最新值),并附上规范的公共 URL;ChatGPT 引用的正是这个 URL:如果该数据序列有对应页面,则为 dadosabertos.bcb.gov.br 上的数据集页面,否则为该数据序列最新观测值的公共 SGS 查询页面(SGS 没有单个数据序列的页面)。两者都携带与所有其他工具相同的来源信息区块。在 ChatGPT 的开发者模式(Settings → Security and login → Developer mode)中,任何工具都可以调用——数据查询仍应使用 bcb_* 工具。

使用示例

获取当前 Selic 利率
What is the current Selic interest rate?
→ Uses bcb_indicadores_atuais
2024 年 IPCA 历史数据
Show me the monthly IPCA for 2024
→ Uses bcb_serie_valores with code 433, dataInicial 2024-01-01, dataFinal 2024-12-31
列出通胀指标
What inflation series are available?
→ Uses bcb_series_populares with category "Inflação"
搜索 USD 汇率数据序列
Search for series related to the dollar
→ Uses bcb_buscar_serie with term "dolar" (works without accents)
计算 USD/BRL 变动幅度
What was the USD/BRL variation over the last 12 months?
→ Uses bcb_variacao with code 1 and periodos 12
比较 IPCA、IGP-M 和 INPC
Compare IPCA, IGP-M, and INPC in 2024
→ Uses bcb_comparar with codes [433, 189, 188], dataInicial 2024-01-01, dataFinal 2024-12-31

数据序列目录(135 个)

精选目录包含 135 个数据序列,每个都已于 2026-08-13 根据来源核实(4 个已停用的 FGV 数据序列已于 2026-08-23 移除)。

每个条目中的 fonteNome 字段都会说明名称的来源:

  • portal(82 个数据序列)——名称转录自该数据序列在 BCB Open Data Portal 上的数据集,unidade 字段记录已发布的计量单位。
  • medido(53 个数据序列)——该数据序列在门户上没有数据集,因此沿用既有名称;根据来源核实的是其周期性和数量级。

周期性始终采用实测值(根据观测值之间的间隔确定),而非沿用的标签。此处不包含市场预期——请使用 bcb_focus_expectativas。

利率(14)
CodeNamePeriodicityName source
11利率 - Selic每日portal
432利率 - Copom 设定的 Selic 目标利率每日portal
1178利率 - 按 252 天基准年化的 Selic每日portal
4189利率 - 当月累计并按 252 天基准年化的 Selic每月portal
4390利率 - 当月累计 Selic每月portal
12利率 - 每日 CDI每日medido
4389利率 - 按 252 天基准年化的 CDI每日medido
4391利率 - 当月累计 CDI每月medido
4392利率 - 当月累计年化 CDI每月medido
226参考利率(TR)- 每日每日medido
7811参考利率(TR)- 每月每月medido
7812参考利率(TR)- 年化每月medido
256长期利率(TJLP)每月medido
253利率 - 30 天期预固定利率 CDB每日medido
通胀(28)
CodeNamePeriodicityName source
433IPCA - 月度变动每月medido
13522IPCA - 12 个月累计变动每月medido
7478IPCA-15 - 月度变动每月medido
10764IPCA-E - 月度变动每月medido
16121全国广义消费者价格指数(IPCA)- 排除法核心指数 - ex2每月portal
16122全国广义消费者价格指数(IPCA)- 双重加权核心指数每月portal
11426全国广义消费者价格指数(IPCA)- 未平滑截尾均值核心指数每月portal
11427全国广义消费者价格指数(IPCA)- 排除法核心指数 - 不含受监控项目及家庭食品每月portal
10841广义消费者价格指数(IPCA)- 非耐用品每月portal
10842广义消费者价格指数(IPCA)- 半耐用品每月portal
10843广义消费者价格指数(IPCA)- 耐用品每月portal
10844广义消费者价格指数(IPCA)- 服务每月portal
4449全国广义消费者价格指数(IPCA)- 受监控价格 - 总计每月portal
11428全国广义消费者价格指数(IPCA)- 自由定价项目每月portal
188INPC - 月度变动每月medido
189IGP-M - 月度变动每月medido
7447IGP-10 - 月度变动每月medido
7448IGP-M - 第 1 次预估每月medido
7449IGP-M - 第 2 次预估每月medido
190IGP-DI - 月度变动每月medido
7450IPA-M - 月度变动每月medido
225IPA-DI - 总体 - 月度变动每月medido
7459IPA-DI - 工业产品每月medido
7460IPA-DI - 农产品每月medido
191IPC-DI - 月度变动每月medido
193IPC-Fipe - 月度变动每月medido
17679IPC-3i - 月度变动每月medido
17680IPC-C1 - 月度变动每月medido
汇率(13)
代码名称周期名称来源
1汇率 - 自由市场 - 美元(卖出)- 日度日度portal
10813汇率 - 自由市场 - 美元(买入)日度portal
3698汇率 - PTAX - 美元(卖出)月度medido
3697汇率 - PTAX - 美元(买入)月度medido
3695汇率 - PTAX - 美元(平均)月度medido
21619汇率 - 欧元(卖出)日度medido
21620汇率 - 欧元(买入)日度medido
21623汇率 - 英镑(卖出)日度medido
21624汇率 - 英镑(买入)日度medido
21621汇率 - 日元(卖出)日度medido
21622汇率 - 日元(买入)日度medido
21625汇率 - 瑞士法郎(卖出)日度medido
21626汇率 - 瑞士法郎(买入)日度medido
经济活动(21)
代码名称周期名称来源
4380月度 GDP - 当期价值(百万雷亚尔)月度medido
4381年内累计 GDP - 当期价值(百万雷亚尔)月度medido
4382过去 12 个月累计 GDP - 当期价值(百万雷亚尔)月度medido
4385月度 GDP(百万美元)月度medido
4386年内累计 GDP(百万美元)月度medido
7324年度 GDP(百万美元)年度medido
24363巴西中央银行经济活动指数 - IBC-Br月度portal
24364巴西中央银行经济活动指数(IBC-Br)- 季节性调整月度portal
29601巴西中央银行经济活动指数(IBC-Br)农业和畜牧业月度portal
29602巴西中央银行经济活动指数(IBC-Br)农业和畜牧业 - 季节性调整月度portal
29603巴西中央银行经济活动指数(IBC-Br)工业月度portal
29604巴西中央银行经济活动指数(IBC-Br)工业 - 季节性调整月度portal
29605巴西中央银行经济活动指数(IBC-Br)服务业月度portal
29606巴西中央银行经济活动指数(IBC-Br)服务业 - 季节性调整月度portal
22103商品和服务出口 - 季度季度medido
22104商品和服务进口 - 季度季度medido
22109家庭消费 - 季度季度medido
22110政府消费 - 季度季度medido
22111固定资本形成总额 - 季度季度medido
21859工业生产 - 总体 - 月度变化月度medido
21862产能利用率 - 工业月度medido
就业(4)
代码名称周期名称来源
24369失业率 - PNAD Contínua月度medido
24380实际平均常规收入 - 所有工作月度medido
24381实际常规收入总额月度medido
28561CAGED - 正式就业净增数月度medido
财政(7)
代码名称周期名称来源
4503公共部门净债务(占 GDP 的百分比)- 总计 - 联邦政府和中央银行每月portal
4513公共部门净债务(占 GDP 的百分比)- 总计 - 合并公共部门每月portal
4505公共部门净债务(占 GDP 的百分比)- 总计 - 中央银行每月portal
4536一般政府净债务(占 GDP 的百分比)每月portal
4537一般政府总债务(占 GDP 的百分比)- 采用截至 2007 年的方法每月portal
5364中央政府总收入每月medido
5793未计汇率贬值的公共部门融资需求(占 GDP 的百分比)- 12 个月累计流量 - 初级收支 - 总计 - 合并公共部门每月portal
外部部门(12)
代码名称周期名称来源
3546国际储备 - 流动性口径 - 总计每月medido
13621国际储备 - 现金口径 - 总计 - 每日每日portal
22707国际收支平衡表 - 贸易差额 - 月度 - 余额每月portal
22708国际收支平衡表 - 货物出口 - 月度每月portal
22709国际收支平衡表 - 货物进口 - 月度每月portal
22714商业中介项下出口的货物 - 正向出口 - 月度每月portal
22701经常账户交易 - 月度 - 余额每月portal
22704贸易和服务差额 - 月度 - 余额每月portal
22715商业中介项下进口的货物 - 负向出口 - 月度每月portal
22716国际收支平衡表 - 非货币黄金贸易差额 - 月度 - 余额每月portal
22846二次收入 - 其他部门 - 个人转移 - 月度 - 收入每月portal
22885对本国的直接投资 - IDP - 月度 - 净额每月portal
信贷(30)
CodeNamePeriodicityName source
20539信贷组合余额 - 总计Mensalportal
20540信贷组合余额 - 法人 - 总计Mensalportal
20541信贷组合余额 - 自然人 - 总计Mensalportal
20542使用自由资金的信贷组合余额 - 总计Mensalportal
20570使用自由资金的信贷组合余额 - 自然人 - 总计Mensalportal
20592使用自由资金的信贷组合余额 - 自然人 - 其他自由信贷Mensalportal
20615使用定向资金的信贷组合余额 - 自然人 - 使用 BNDES 资金的农工业融资Mensalportal
20631信贷发放额 - 总计Mensalportal
20665使用自由资金的信贷发放额 - 自然人 - 透支Mensalportal
20714信贷业务平均利率 - 总计Mensalportal
20716信贷业务平均利率 - 自然人 - 总计Mensalportal
20740使用自由资金的信贷业务平均利率 - 自然人 - 总计Mensalportal
20749使用自由资金的信贷业务平均利率 - 自然人 - 车辆购置Mensalportal
20772使用定向资金的信贷业务平均利率 - 自然人 - 按市场利率发放的住房融资Mensalportal
25497使用定向资金的信贷业务月平均利率 - 自然人 - 按市场利率发放的住房融资Mensalportal
20783信贷业务平均利差 - 总计Mensalportal
20785信贷业务平均利差 - 自然人 - 总计Mensalportal
20786使用自由资金的信贷业务平均利差 - 总计Mensalportal
21082信贷组合逾期率 - 总计Mensalportal
21084信贷组合逾期率 - 自然人 - 总计Mensalportal
21085使用自由资金的信贷组合逾期率 - 总计Mensalportal
21128使用自由资金的信贷组合逾期率 - 自然人 - 分期信用卡Mensalportal
21129使用自由资金的信贷组合逾期率 - 自然人 - 信用卡总额Mensalportal
13685私营机构控股的金融机构信贷组合逾期率 - 总计Mensalportal
29033家庭偿付国家金融体系债务利息的收入占比 - 季节性调整(RNDBF)Mensalportal
29034家庭偿付国家金融体系债务的收入占比 - 季节性调整(RNDBF)Mensalportal
29035家庭偿付国家金融体系债务(不含住房信贷)的收入占比 - 季节性调整(RNDBF)Mensalportal
29036家庭偿还国家金融体系债务本金的收入占比 - 季节性调整(RNDBF)Mensalportal
29037家庭对国家金融体系的负债与过去 12 个月累计收入之比(RNDBF)Mensalportal
29038家庭对国家金融体系的负债(不含住房信贷)与过去 12 个月累计收入之比(RNDBF)Mensalportal
货币总量(8)
代码名称周期名称来源
1788BM - 狭义货币基础(期末余额)月度portal
1833广义货币基础(期末余额)月度portal
27788支付手段 - M1(月内工作日均值)- 新版月度portal
27789支付手段 - 公众持有的纸币(期末余额)- 新版月度portal
27790支付手段 - 活期存款(期末余额)- 新版月度portal
27791支付手段 - M1(期末余额)- 新版月度portal
27815广义支付手段 - M4(期末余额)- 新版月度portal
7530货币行为 - 公众行为 - C月度portal
储蓄(2)
代码名称周期名称来源
25截至 2012 年 5 月 3 日的储蓄存款 - 期间收益率日度portal
195自 2012 年 5 月 4 日起的储蓄存款 - 期间收益率日度portal

完整的机器可读目录由 bcb://series/populares 资源和 bcb_series_populares 提供。还可以通过 bcb_buscar_serie 查找数千个其他序列, 该工具也会查询 BCB 开放数据门户索引。

查找其他序列

SGS 数据库包含超过 18,000 个时间序列。要查找其他序列的代码:

  1. 访问 BCB SGS 门户
  2. 搜索所需序列
  3. 记下序列代码
  4. 使用此服务的工具查询该代码

用你自己的话提问,而不是照搬 BCB 的说法

bcb_buscar_serie 会将你输入的所有词(AND)与精选目录(135 个序列:名称和类别)以及 BCB 开放数据门户的数据集别名进行匹配(3,579 个序列,以代码标识)。搜索已忽略重音符号,但不会忽略词语差异。我们于 2026-09-16 对这两层数据进行测量,并自 1.12.0 起固定此功能:日常用词会扩展为 BCB 使用的术语,响应会在 notasVocabulario 中说明;若无结果,也会提供解决办法。

你的查询之前的命中数(精选目录 / 门户)BCB 的说法命中数
déficit、superávit0 / 0перв结果、名义结果1 / 26、0 / 22
calote0 / 0违约6 / 484
juros básicos0 / 0Selic5 / 7
desemprego0 / 0失业1 / 0
arrecadação、gasto0 / 0收入、支出2 / 8、0 / 8
investimento estrangeiro0 / 0直接投资1 / 12
conta corrente0 / 0经常项目交易1 / 5

表格中只列出经过测量的词语对(src/vocabulario.ts):你输入的词在两层数据中都不存在,而 BCB 使用的词存在。对于 BCB 未以这些名称发布的内容,仍不会纳入映射,搜索结果仍为零——salário mínimo、ibovespa、bitcoin、meta de inflação——因为为不存在的序列创建别名,会让人误以为数据源提供了相关内容;而 empréstimo 则是有意不映射到 crédito(门户已能为其返回 45 个数据集;映射会让结果淹没在 2,000 个数据集中)。同一张表也用于 Deep Research 的 search 索引。

技术细节

稳健性
  • 超时:每个请求 30 秒(防止请求挂起)
  • 自动重试:对于暂时性故障,最多尝试 3 次,并采用指数退避(1 秒、2 秒、4 秒);客户端错误(4xx)不会重试,因为这类错误是确定性的
  • 错误处理:提供清晰的错误消息
规避 SGS 限制

根据实时 API 测得,而非根据文档推断:

  • 日频序列的日期窗口超过 10 年会被拒绝,返回 HTTP 406;开放窗口(没有 dataInicial,或完全没有日期)也会被拒绝。此限制适用于隐式窗口:如果没有 dataFinal,API 会假定日期为今天。请求会被切分为最长 3 年的窗口,以受控并发方式获取,并按日期顺序合并,避免接缝处重复;响应会在 chunking 中报告这一情况。切片长度设为 3 年,而非允许的 10 年,因为 10 年的日频窗口会使上游请求耗时 10–20 秒,并且可能在约 30 秒时被截断。
  • API 将 dados/ultimos/N 的上限设为 20,适用于所有频率。超过 20 时,服务端会推断序列的频率,并改用日期窗口获取。
  • 没有针对单个序列的元数据端点(/metadados 返回 404)。频率根据观测值的间隔推断,并通过 periodicidadeInferida 标记;任何来源都不提供计量单位。
派生值

此服务计算的所有内容——变动、描述性统计、协调后的序列——都会标记为 derived: true,并附带说明所采用的惯例。统计数据来自 @sbissoli/mcp-stats。BCB 发布的数值始终原样返回;只有计算出的数值会四舍五入(保留 4 位小数)。

智能搜索

bcb_buscar_serie 会搜索两个层:经整理的 135 个已验证序列目录(优先排序,并注明名称来源),以及 BCB 开放数据门户的索引,其中包含数千个以代码标识的序列。搜索词不区分重音和大小写,多个搜索词会按 AND 组合:

  • "inflacao" → 找到“Inflação”
  • "cambio" → 找到“Câmbio”
  • "ipca servicos" → 两个词都必须匹配

门户索引由 24 小时缓存提供;缓存过期后,首次搜索会将其续期(向门户发送一个请求,仅获取元数据——序列代码和名称,不获取观测值)。每个回答都包含 catalogo.cobertura:该索引并不涵盖整个 SGS,因此在此处找不到某个序列,并不能证明它不存在。

数据来源和许可

数据取自 Banco Central do Brasil(SGS / Olinda-Expectativas / PTAX),依据 Open Data Commons Open Database License (ODbL) v1.0 发布——https://opendatacommons.org/licenses/odbl/1-0/。于 2026-08-13 对照来源重新核验:门户的 4,260 个数据集中,有 4,259 个声明了 license_id: "odc-odbl"。这不是 CC0、CC BY 或公有领域许可——ODbL 包含署名、相同方式共享(适用于派生数据库)和反 DRM 条款。汇率回答会逐字传递 BCB 自身的责任免责声明;交叉货币汇率并非由 BCB 编制,而是来自信息机构(Refinitiv),再由 BCB 重新发布,工具会明确说明这一点。

服务自身的代码采用 MIT 许可;数据则不采用。请参阅 NOTICE.md。隐私:两个渠道都不会记录用户数据——请参阅 PRIVACY.md。

来源信息块

每个成功的工具响应都包含来源信息块(portfolio contract v1.0),分属两个通道: structuredContent.provenance + attribution(模型可见),以及位于 br.com.sidneybissoli.bcb/* 下的 _meta 镜像(带外,不占用令牌)。每个信息块都会列明数据来源、可复现该查询的规范 URL、数据版本、实际上游提取时间,以及许可证。

这里处理了三个容易出错的细节:

  • retrieved_at 是实际提取时间,而不是“现在”。 门户索引通过 24 小时缓存提供,因此从缓存中回答的搜索会报告实际获取索引的时间——可能已是一天前,这也是法律上相关的日期。
  • 每个来源各自使用一个信息块,绝不合并。 bcb_buscar_serie 将 BCB 门户索引与服务自身整理的目录分开;bcb_serie_metadados 将实时 SGS 读数与目录分开;bcb_cambio_cotacao 将 BCB 编制的美元汇率与来自机构的交叉货币平价分开。
  • 说明每个数字的含义,以及它采用的版本。 SGS 观测值只有 {data, valor}:月度、季度或年度序列的日期是参考期的第一天,有些序列提供的数值已经是累计值(年初至今 GDP 4381/4386;12 个月 IPCA 13522、GDP 4382、初级余额 5793),只有序列名称能说明这一点。工具说明中对此有说明,data_vintage 则表示实际涵盖的时间范围——包括跨多个序列计算的四个工具。每个数值都是 SGS 在 retrieved_at 发布的版本:BCB 会修订 GDP 和 IBC-Br 等序列,而 SGS 不会保留首次发布时的副本,因此本服务无法返回该版本。

开发

可通过注册表核验的表面指纹

每次发布都会在其 MCP Registry 条目中公布此版本所提供表面(initialize、工具、资源、提示词)的 sha256,以及哪些方法无需凭证即可响应。表面发生变化但版本未升级时,构建会失败;注册表中的指纹可让客户端在自身一侧进行同样的检查。规范格式和流程: @sbissoli/mcp-surface 的 SPEC.md。 如需自行检查(Node 18+,无依赖项):

curl -sO https://raw.githubusercontent.com/SidneyBissoli/mcp-br-commons/main/packages/mcp-surface/exemplos/verify.mjs
node verify.mjs io.github.SidneyBissoli/bcb-br-mcp
要求
  • Node.js >= 18.0.0
设置
git clone https://github.com/SidneyBissoli/bcb-br-mcp.git
cd bcb-br-mcp
npm install
构建
npm run build
本地测试(stdio)
npm run dev
本地测试(HTTP worker)
npm run dev:worker

或者使用 MCP Inspector:

npx @modelcontextprotocol/inspector npm run dev

BCB API

此服务使用巴西中央银行的公共 API:

  • 基础端点: https://api.bcb.gov.br/dados/serie/bcdata.sgs.{code}/dados
  • 格式: JSON
  • 身份验证: 无(公共 API)
  • 文档: BCB 开放数据

更新日志

v1.4.1
  • bcb_focus_referencias:参数现为 escopo,而非 horizonte,响应数组现为 escopos。这些范围包括 bcb_focus_expectativas 的五个期限,以及 selic——而 selic 并非期限:其轴是 Copom 会议。每个信息块都会列明使用它的 tool。之前的名称暗示 selic 是 bcb_focus_expectativas 中可查询的期限,但事实并非如此。旧名称从未发布到 npm。
v1.4.0
  • 三种 API 采用同一套契约,工具数量从 8 个增至 13 个。 聚焦市场预期 调查(bcb_focus_expectativas、bcb_focus_selic、bcb_focus_referencias) 和 PTAX 汇率(bcb_cambio_cotacao、bcb_cambio_moedas),按参数整合, 而非照搬源数据中的约 18 个 OData 资源。
  • 真正的搜索。 bcb_buscar_serie 现在会在精选目录之外,查询开放数据门户索引 (3,500 多个序列,缓存 24 小时,仅包含元数据),并说明索引的覆盖范围,而不是声称某个序列不存在。
  • 已根据实时 API 验证所有 Focus 和 PTAX 字段名,包括 Top 5 Selic 资源;该资源的字段大小写与其他十二个资源不同。
  • 汇率工具已附带 ODbL 义务:原样传递 BCB 免责声明,并注明非 USD 货币对属于第三方(Refinitiv)数据,由 BCB 重新分发。
v1.2.0
  • 通过 Cloudflare Workers 提供 HTTP 端点(https://bcb.sidneybissoli.workers.dev)
  • 在 Smithery.ai 上发布
  • 重构:将工具逻辑提取到 src/tools.ts(供 stdio 和 HTTP 共用)
v1.1.0
  • 新增用于计算百分比变化的工具 bcb_variacao
  • 新增用于比较多个序列的工具 bcb_comparar
  • 请求超时设为 30 秒
  • 自动重试并采用指数退避(3 次尝试)
  • 搜索规范化(不区分重音符号)
  • 增加其他统计数据(最大值、最小值、平均值、范围)
v1.0.0
  • 首次发布
  • 6 个基础工具
  • 包含 135 个已验证序列的目录

贡献

欢迎贡献!请:

  1. Fork 此代码库
  2. 创建功能分支(git checkout -b feature/new-feature)
  3. 提交更改(git commit -m 'Add new feature')
  4. 推送到分支(git push origin feature/new-feature)
  5. 创建 Pull Request

许可证

有两种许可证,它们并不相同。

  • 代码: MIT——参见 LICENSE。
  • 数据: 来自 Banco Central do Brasil,遵循 Open Data Commons Open Database License(ODbL)v1.0——https://opendatacommons.org/licenses/odbl/1-0/。 不是 CC0,不是 CC BY,也不是公有领域:ODbL 要求注明来源,对衍生数据库设有 相同方式共享条款,并包含反 DRM条款。

每个成功响应都会包含来源、查询 URL、数据版本、实际提取时间和许可证信息。汇率响应会原样传递 BCB 免责声明,并注明非 USD 货币对属于信息机构(Refinitiv)数据,由 BCB 重新分发,而非由中央银行编制。

详情和义务见 NOTICE.md。隐私:无论通过哪种渠道,都不会记录用户数据——参见 PRIVACY.md。

作者

Sidney da Silva Pereira Bissoli

有用链接

评论

支持 Markdown

第一次接触 MCP?

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

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