Repository avatar
Monitoring
v0.1.1
active

mcp-brasil-macro

io.github.schavarski-thais/mcp-brasil-macro

Official Brazilian macro data: Selic, IPCA, Focus, GDP, FX, debt (BCB, IBGE, Tesouro, IPEA).

Documentation

MCP Brasil Macro - dados macroeconômicos do Brasil

mcp-brasil-macro

mcp-name: io.github.schavarski-thais/mcp-brasil-macro

English: MCP (Model Context Protocol) server with official Brazilian macroeconomic data: Selic and Copom, IPCA inflation, Focus survey, GDP, unemployment, exchange rate (PTAX), public debt, fiscal results, trade, fuel prices and investment funds. Sources: Banco Central (SGS), IBGE (SIDRA), Tesouro Nacional, IPEA, MDIC, ANP, CVM. 476 curated indicators. Works with Claude Code, Claude Desktop and any MCP client over stdio. Docs below are in Portuguese.

Servidor MCP (stdio) com dados macroeconômicos do Brasil, somente de fontes oficiais: Banco Central (SGS, Focus, PTAX, Copom), IBGE (SIDRA), Tesouro Nacional (RTN, dívida, SICONFI), IPEA (Ipeadata, que redistribui séries de órgãos oficiais), MDIC/Secex (ComexStat), ANP (levantamento de preços de combustíveis nos postos), TransfereGov (emendas Pix), CVM (cadastro de fundos), IBGE (localidades) e os portais de dados abertos do BNDES e da ANEEL.

Cobre política monetária, inflação (com as quebras do IPCA), atividade, mercado de trabalho, política fiscal (resultado primário, NFSP, dívida), crédito, setor externo, comércio exterior, preços de combustíveis, emendas parlamentares, fundos de investimento e divisão territorial. O catálogo curado tem 476 indicadores oficiais (mais 12 de produtores privados, desativados por padrão); o que estiver fora dele se alcança pelas ferramentas genéricas (sgs_serie, sidra_consulta, ipea_serie).

Instalação

Requer Python 3.11 ou superior (testado com 3.13):

pip install mcp-brasil-macro

Isso instala o comando mcp-brasil-macro. Para rodar sem instalar, use uvx mcp-brasil-macro. Para desenvolvimento, clone o repositório:

git clone https://github.com/schavarski-thais/mcp-brasil-macro.git
cd mcp-brasil-macro
python -m venv .venv
.venv/bin/python -m pip install -e .        # no Windows: .venv\Scripts\python.exe

Registro no Claude Code:

claude mcp add brasil-macro -- mcp-brasil-macro
# ou, se instalou em um venv: claude mcp add brasil-macro -- /caminho/.venv/bin/python -m brasil_macro.server

Para outros clientes MCP, o comando é o mesmo (python -m brasil_macro.server, ou o script mcp-brasil-macro), em transporte stdio.

Ferramentas

TemaFerramentaPara quê
Catálogobuscar_indicadoresLocaliza indicadores por texto, tema ou fonte
obter_serieSérie de um indicador, com transformações (variação, acumulado 12m, média móvel, base 100…)
comparar_seriesVários indicadores alinhados por período
painelÚltimo valor, anterior e de 12 meses antes de um tema
Banco Centralsgs_serie, sgs_buscarQualquer série do SGS pelo código; busca no catálogo de dados abertos
expectativas_focusFocus: anual, mensal, trimestral, 12 e 24 meses, Selic, Top 5, evolução
ptaxCotações PTAX de fechamento
copomDecisões, comunicados e atas; data da próxima reunião
IBGEipca_detalhado, ipca_item_historicoQuebras do IPCA, IPCA-15 e INPC por grupo, subgrupo, item e subitem, com peso e contribuição em p.p.
sidra_consulta, sidra_metadados, sidra_buscar_tabelasQualquer tabela do SIDRA
calendario_divulgacoesPróximas divulgações do IBGE e do Copom
Tesouroresultado_tesouroRTN do governo central: receitas, despesas e resultado primário
divida_publica_federalEstoque por instrumento e fatores de variação
tesouro_direto_taxasTaxas e preços do Tesouro Direto
siconfi_entes, siconfi_relatorioRREO, RGF e DCA de estados e municípios
IPEAipea_serie, ipea_buscarIpeadata: séries com a fonte original
MDICcomercio_exteriorExportação, importação e saldo por país, bloco, UF, via, seção ou capítulo
TransfereGovemendas_pixEmendas Pix por UF, parlamentar ou beneficiário, com situação e valores dos planos de ação
CVMfundos_cvmFundos de investimento (RCVM 175) por nome, gestor, administrador, classificação, tipo, público-alvo ou CNPJ; ficha com CNPJs e prestadores, e subclasses
fundos_informe_diarioCota, patrimônio, captação, resgate e cotistas por dia de um FIF (informe diário da CVM), com captação líquida e rentabilidade simples do período. FII, FIDC, FIP e FIAGRO não estão incluídos
IBGEibge_localidadesEstados e municípios com os códigos oficiais
indicadores_por_ufDesocupação, rendimento, massa, ocupados e PIB das 27 UFs, com comparação de período e ano anterior
BNDES, ANEELdados_abertos_buscarBusca de conjuntos de dados nos portais de dados abertos, com recursos para download
ANPcombustiveis_precosPreço nos postos (gasolina, etanol, diesel, GNV, GLP): média nacional e por UF; com UF, municípios; com município, postos mais baratos

Convenções de sinal

Os números vêm como as fontes os publicam, e as convenções diferem:

  • NFSP (BCB): valor positivo é déficit; negativo, superávit.
  • RTN (Tesouro): valor positivo é superávit.
  • Focus, resultado primário: negativo é déficit.
  • Balanço de pagamentos: transações correntes negativas são déficit; na conta financeira, negativo é entrada líquida.
  • Câmbio real efetivo: alta do índice é depreciação real.

Cada resultado traz fonte, código, unidade, periodicidade e data da consulta.

Variáveis de ambiente

VariávelEfeito
BRASIL_MACRO_CACHE_DIRPasta do cache SQLite (padrão: pasta de cache do usuário)
BRASIL_MACRO_SEM_CACHE=1Desliga o cache
BRASIL_MACRO_INCLUIR_PRIVADOS=1Habilita séries de produtores privados distribuídas por órgão oficial (IGP-M e IGP-DI da FGV, Confiança do Consumidor da Fecomercio, consumo de energia da Eletrobras). Desligado por padrão

Cache e limites das fontes

  • Respostas ficam em cache (15 min para séries diárias e expectativas, 6 h para mensais e trimestrais, 7 dias para metadados). Se a fonte cair, o servidor entrega o cache vencido e avisa.
  • Cada servidor remoto tem limite de concorrência e espaçamento entre chamadas.
  • ComexStat recusa requisições (HTTP 429) de forma irregular. A ferramenta comercio_exterior repete a consulta e devolve erro claro se não passar; vale tentar de novo em instantes. Os indicadores exportacoes, importacoes, saldo_comercial e corrente_comercio usam o Ipeadata (mesma fonte, MDIC/Secex, com defasagem) quando o ComexStat não responde.
  • A API de séries temporais do Tesouro Transparente está fora do ar (404). RTN e dívida usam as planilhas publicadas no portal de dados abertos, resolvidas a cada consulta.
  • ANP: cada mês é um CSV de vários MB (um por tipo de combustível). A lista de arquivos é lida da página da série histórica, porque os nomes mudam de um ano para outro. Meses passados ficam em cache por 7 dias e o mês corrente e o anterior por 6 h. Os preços são médias simples das coletas, sem ponderar pelo volume vendido. A série mensal de cada combustível sem período informado cobre os últimos 24 meses publicados.
  • CVM, informe diário: cada mês é um zip de cerca de 10 MB, então a primeira consulta de um período é lenta. Meses com mais de dois meses de idade ficam em cache por 7 dias; os recentes, por 6 h.
  • Não há no SGS decomposição da DBGG, TLP nem série mensal de reservas no conceito liquidez.

Desenvolvimento

.venv\Scripts\python.exe -m pytest                  # testes offline
.venv\Scripts\python.exe -m pytest -m rede          # testes contra as APIs oficiais
.venv\Scripts\python.exe scripts\validar_catalogo.py   # confere todos os códigos SGS na fonte
.venv\Scripts\python.exe scripts\conferir_sidra.py     # confere os indicadores do IBGE
.venv\Scripts\python.exe scripts\chamar.py obter_serie '{"indicador":"selic_meta","ultimos":3}'

Estrutura: catalogo/*.yaml descreve os indicadores por tema; fontes/ busca os dados de cada origem e se registra com @fonte_de_dados; ferramentas/ expõe as ferramentas MCP. Novos módulos em fontes/ e ferramentas/ são descobertos automaticamente. Para acrescentar um indicador de uma origem existente, basta uma entrada no YAML do tema.

PYPI
mcp-brasil-macro
Install Command
pip install mcp-brasil-macro