@pipeworx/brazil-cvm-financials

Connect: https://pipeworx.io/mcp — every tool in the catalog, including @pipeworx/brazil-cvm-financials’s. Install: one-click buttons

Connect to just the @pipeworx/brazil-cvm-financials pack

https://gateway.pipeworx.io/brazil-cvm-financials/mcp — only @pipeworx/brazil-cvm-financials’s own tools, nothing else in the catalog.

No MCP client? Skip the connection: POST https://gateway.pipeworx.io/v1/tools/search_packs {"query":"..."} to find a tool below, GET /v1/tools/<name> for its schema, POST the same URL with arguments for the data — see For AI agents.

Tools: 3

Annual financial statements (balance sheet, income statement, cash flow, value added) of Brazilian listed companies, from CVM (Comissao de Valores Mobiliarios) open data — by CNPJ or company name, with CVM account codes and labels, in full BRL.

Tools

  • br_financials(cnpj | name, year?, scope?, statement?, max_depth?, limit?, offset?) — the statements of one company for one fiscal year as account lines (code, Portuguese label, value in BRL). Default depth 2 returns the headline lines; raise max_depth for sub-accounts. States the scope (consolidated/individual), the filing version and the filed scale on every response. A company or year not in the data returns found:false with data_as_of.
  • br_financials_search(name, limit?) — find companies by name (every word must match, accents ignored); returns CNPJ, CVM code and the fiscal years available.
  • br_financial_series(cnpj | name, account_code, from_year?, to_year?, scope?) — one account across years (e.g. 3.01 income-statement top line, 1 total assets, 2.03 equity), with the label, scope and filing version of each year, and missing_years listed rather than dropped.

Auth

Keyless.

Data sources

  • CVM (Comissao de Valores Mobiliarios, Brazil), open data — annual financial statements (DFP) of listed companies, fiscal years 2019 onward.

Licence. CVM publishes this dataset under the Open Data Commons Open Database License (ODbL). The data here is a database copy, so ODbL applies to it: attribution to CVM and share-alike on the database. Every response carries the source and licence fields.

What is in the copy, and what is not — read before quoting a number.

  • Latest filing version only. CVM’s archives carry every revision of a filing as extra rows (and are refreshed weekly with re-filings). Only the highest version per company + reference date is kept; the response reports filing_version and filing_versions_seen. Superseded revisions are not available.
  • Current-year column only. Each filing also reports the prior year as a comparative; that column is dropped (it is restated data that appears as the current column of the next year’s own filing). So a figure is “as filed for that fiscal year”, not “as restated later”.
  • Statements kept: balance sheet assets (BPA) and liabilities/equity (BPP), income statement (DRE), cash flow indirect (DFC_MI) and direct (DFC_MD), value added (DVA), consolidated and individual. Not kept: statement of changes in equity, comprehensive income, auditor opinions, share-capital composition.
  • Scope: consolidated is the group; individual is the parent company alone. The default is consolidated where the company filed one.
  • Scale and currency: filers state values in units or thousands; the response applies the multiplier and returns full BRL, naming the filed scale. All loaded statements are in BRL.
  • Charts differ by sector. CVM account codes follow one numbering (1 assets, 2 liabilities and equity, 3 income, 6 cash flow, 7 value added) but banks and insurers use a different income-statement chart: 3.01 is revenue for an industrial and financial-intermediation income for a bank. The label comes back with every value so a mismatch is visible.
  • Per-share lines: earnings-per-share accounts (3.99.*) are BRL per share and are NOT multiplied by the filed scale; they come back as value_brl_per_share.
  • Fiscal-year labels follow the reference date; a company with a non-December year-end is listed under the calendar year of its reference date.

Updating the data

CVM re-files weekly. Reload with (needs wrangler logged in to the Pipeworx Cloudflare account):

node scripts/brazil-cvm-financials/load-data.mjs --from 2019

The loader DROPs and reloads the tables, verifies the row counts against what it generated and exits non-zero if they differ. data_as_of in every response is the date of the last load; latest_filing_received is the newest filing receipt date in it.

Tools

  • br_financials — Annual statements (balance sheet, income, cash flow) of a Brazilian listed company, from CVM open data.
  • br_financials_search — Find CVM-registered Brazilian listed companies by name; returns CNPJ and years available.
  • br_financial_series — Time series of one CVM account code for a Brazilian listed company.

Tools

  • br_financial_series — Time series of one CVM account code for a Brazilian listed company.
  • br_financials — Annual statements (balance sheet, income, cash flow) of a Brazilian listed company, from CVM open data.
  • br_financials_search — Find CVM-registered Brazilian listed companies by name; returns CNPJ and years available.

Regenerated from source · build October 22, 2026