All notable changes to the BCB MCP Server will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
Fixes the MCP Registry publish that failed in 1.3.4.
server.jsondescription shortened to ≤100 characters. The MCP Registry enforces a 100-char limit ondescriptionand rejected 1.3.4 with HTTP 422. The registry description now reads "Brazilian Central Bank / Banco Central do Brasil (BCB) - SGS time series MCP: Selic, IPCA, FX, GDP" — both names, the acronym and the key indicators within the limit. The longerpackage.jsondescription (used by npm) is unchanged, as npm has no such limit.
Note: npm 1.3.4 published successfully; only the registry step failed, so this release re-aligns both channels on the same version.
Discoverability release (metadata only; no functional changes).
- Renamed the display title to "Brazilian Central Bank (BCB) - MCP". The bare "BCB" acronym is opaque to most users browsing MCP directories (Glama, Smithery, LobeHub), which derive the listing title from the README H1. The title now uses the full institution name plus the acronym so it is recognizable and matches both "Brazilian Central Bank" and "BCB" searches. The Portuguese README uses "Banco Central do Brasil (BCB) - MCP".
- Front-loaded both names (EN + PT) and the BCB acronym in the README intro
and in the
package.json/server.jsondescriptions, which directory search also indexes. - Added exact-phrase keywords:
banco-central-do-brasil,brazilian-central-bank,sgs.
The repository name, npm package and registry id (bcb-br-mcp, bcb_* tools)
are intentionally unchanged to preserve installs and the MCP Registry identity.
Tool-definition quality release (no behavioral changes to the data returned).
- Enriched all 8 tool descriptions for agent-readability. Each description
now states its runtime behavior (public BCB SGS API — no auth, no published
rate limit, automatic retry with backoff,
isErroron failure, JSON /structuredContentoutput,dd/MM/yyyydates), the exact shape of what it returns, and explicit when-to-use / when-not-to-use guidance referencing sibling tools. This targets the Behavior, Completeness and Usage Guidelines axes surfaced by Glama's tool-quality scoring. - Descriptions consolidated into a single
TOOL_DESCRIPTIONSmap consumed by both transports — stdio (index.ts) and HTTP/worker (TOOL_DEFINITIONS) — so they can no longer drift. - De-hardcoded the
User-Agentversion. It is now derived frompackage.jsonviasetServerVersion(), injected by each entry point (index.tsviacreateRequire,worker.tsvia JSON import), with a fallback kept in sync with the package version.
Supply-chain hardening release (no functional changes).
- Pinned
@modelcontextprotocol/sdkto^1.29.0(was^1.0.0). The previous wildcard range let any 1.x resolve into the tree; narrowing it gives reproducible installs and a tighter supply-chain surface.
- Published with npm provenance attestation via a new GitHub Actions release workflow (OIDC / SLSA). Earlier releases were published manually and carried no attestation; cutting releases through CI adds provenance, which Socket.dev and npm surface as a supply-chain trust signal.