pypi mcp-dados-brstdioMITupdated 14d ago
Servidor MCP (Model Context Protocol) que expõe dados públicos brasileiros como ferramentas para assistentes de IA: Claude Desktop, Claude Code, Cursor e qualquer cliente MCP.
What can you do with MCP Dados Brasil?
mcp-dados-br
Servidor MCP (Model Context Protocol) que expõe dados públicos brasileiros como ferramentas para assistentes de IA: Claude Desktop, Claude Code, Cursor e qualquer cliente MCP.
Instalação
A forma mais simples, sem instalar nada permanentemente:
uvx mcp-dados-br
Configuração no Claude Desktop:
{
"mcpServers": {
"dados-brasil": {
"command": "uvx",
"args": ["mcp-dados-br"]
}
}
}
Ou no Claude Code:
claude mcp add dados-brasil -- uvx mcp-dados-br
A partir do código-fonte
git clone https://github.com/lucianoon/mcp-dados-br
cd mcp-dados-br
uv sync
Ferramentas disponíveis
| Fonte | Tools | Descrição |
|---|---|---|
| IBGE/SIDRA | ibge_populacao, ibge_pib, ibge_municipios, ibge_sidra |
População, PIB, busca de municípios e consulta genérica a qualquer agregado SIDRA |
| Banco Central | bcb_serie, bcb_cambio, bcb_moedas, bcb_focus |
Séries SGS com atalhos nomeados (selic, ipca, cdi...), cotações PTAX, lista de moedas e expectativas do Boletim Focus |
| INMET | inmet_estacoes, inmet_dados |
Lista de estações meteorológicas e dados horários observados (dados observacionais exigem token) |
| Câmara dos Deputados | camara_deputados, camara_detalhes_deputado, camara_proposicoes, camara_votacoes_proposicao, camara_agenda, camara_tramitacao |
Deputados, proposições, votações, agenda e tramitações |
| Senado Federal | senado_senadores, senado_materias, senado_votacoes |
Senadores em exercício, matérias legislativas e votações nominais com placar |
Todas as fontes são APIs oficiais abertas — nenhuma chave de API necessária, exceto os dados horários do INMET (veja abaixo).
Configuração
Claude Desktop / Cursor
Adicione ao arquivo de configuração (claude_desktop_config.json ou mcp.json):
{
"mcpServers": {
"mcp-dados-br": {
"command": "uv",
"args": ["run", "--directory", "/caminho/para/mcp-dados-br", "mcp-dados-br"]
}
}
}
Claude Code
claude mcp add mcp-dados-br -- uv run --directory /caminho/para/mcp-dados-br mcp-dados-br
Token opcional do INMET
A listagem de estações (inmet_estacoes) é aberta. Já os dados horários
observados (inmet_dados) exigem um token fornecido pelo INMET — solicite em
portal.inmet.gov.br e configure a variável de
ambiente no cliente MCP:
{
"mcpServers": {
"mcp-dados-br": {
"command": "uv",
"args": ["run", "--directory", "/caminho/para/mcp-dados-br", "mcp-dados-br"],
"env": { "INMET_TOKEN": "seu-token" }
}
}
}
Sem o token, as demais 14 ferramentas funcionam normalmente.
Transporte streamable-http
Além do stdio padrão, o servidor pode rodar em modo HTTP remoto:
MCP_TRANSPORTE=streamable-http MCP_PORTA=8000 mcp-dados-br
Aponte clientes para http://localhost:8000/mcp. Útil para Docker ou
compartilhar o servidor na rede local.
Docker
docker build -t mcp-dados-br .
docker run -p 8000:8000 -e INMET_TOKEN=seu-token mcp-dados-br
Exemplos de uso
Depois de configurar, pergunte diretamente ao assistente:
- "Qual foi o IPCA dos últimos 6 meses?"
- "O que o mercado espera para a Selic nas próximas reuniões?" (Boletim Focus)
- "Quem são os deputados federais de Minas Gerais do partido X?"
- "Qual a população de São Paulo em 2022? E o PIB?"
- "Como está o dólar PTAX nos últimos dias?"
- "Busque projetos de lei de 2025 sobre saúde mental"
- "O que está na agenda da Câmara esta semana?"
- "Como o Senado votou a PEC X? Qual o placar?"
- "Quem são os senadores de Minas Gerais?"
- "Quais estações automáticas do INMET existem no Amazonas?"
Desenvolvimento
uv sync --dev
uv run pytest # suíte unitária (mocks)
uv run pytest -m integration # consulta as APIs reais
uv run ruff check .
uv run mypy src
Logs de depuração: configure MCP_LOG_LEVEL=DEBUG no cliente MCP.
Para contribuir, leia o CONTRIBUTING.md.
Arquitetura
src/mcp_dados_br/
├── server.py # Servidor MCP e registro das tools
├── http.py # Cliente HTTP compartilhado, retry e tratamento de erros
├── cache.py # Cache TTL em memória para as respostas das APIs
└── tools/
├── ibge.py # SIDRA v3 + localidades v1
├── bcb.py # SGS + Olinda (PTAX e Boletim Focus)
├── inmet.py # Estações e dados observacionais
├── camara.py # Dados Abertos da Câmara v2
└── senado.py # Dados Abertos do Senado (LegisSaber)
- Transporte stdio (padrão MCP desktop)
- Cache TTL de 10 minutos por requisição idêntica
- Retry automático em falhas de rede
- Saídas formatadas como texto legível pelo modelo
Roadmap
- v0.2 — INMET (estações + observacional com token) e Boletim Focus
- v0.3 — Agenda da Câmara, transporte streamable-http e testes de integração agendados no CI
- v0.4 — Tramitações, atalhos nomeados no SGS, imagem Docker
- Publicação no PyPI (
uvx mcp-dados-br) - DOU: busca no Diário Oficial da União (aguardando API pública estável)
- TSE: resultados eleitorais
Licença
MIT
Install
Add MCP Dados Brasil to your client. Pick the one you use.
claude mcp add mcp-dados-br -- uvx mcp-dados-brcodex mcp add mcp-dados-br -- uvx mcp-dados-bramp mcp add mcp-dados-br -- uvx mcp-dados-br{
"mcpServers": {
"mcp-dados-br": {
"command": "uvx",
"args": [
"mcp-dados-br"
]
}
}
}Add to `claude_desktop_config.json`, then restart Claude Desktop.
{
"mcpServers": {
"mcp-dados-br": {
"command": "uvx",
"args": [
"mcp-dados-br"
]
}
}
}Add to `~/.cursor/mcp.json`, or `.cursor/mcp.json` for a single project.
code --add-mcp '{"name":"mcp-dados-br","command":"uvx","args":["mcp-dados-br"]}'Or add the block manually to `.vscode/mcp.json` under `servers`.
{
"mcpServers": {
"mcp-dados-br": {
"command": "uvx",
"args": [
"mcp-dados-br"
]
}
}
}Add to `~/.codeium/windsurf/mcp_config.json`.
{
"mcpServers": {
"mcp-dados-br": {
"command": "uvx",
"args": [
"mcp-dados-br"
]
}
}
}Add to `cline_mcp_settings.json` via the MCP Servers panel.
{
"mcpServers": {
"mcp-dados-br": {
"command": "uvx",
"args": [
"mcp-dados-br"
]
}
}
}Add to `~/.gemini/settings.json`.
{
"mcpServers": {
"mcp-dados-br": {
"type": "local",
"command": "uvx",
"args": [
"mcp-dados-br"
],
"tools": [
"*"
]
}
}
}Add to `~/.copilot/mcp-config.json`, or run `/mcp add` inside the CLI.
{
"context_servers": {
"mcp-dados-br": {
"command": {
"path": "uvx",
"args": [
"mcp-dados-br"
]
}
}
}
}Add to your Zed `settings.json`.
uvx mcp-dados-brRun `goose configure`, choose **Add Extension → Command-line Extension**, and paste this command.
Score
39 / 100
Incomplete
- Documentation25/25
- Maintenance19/25
- Trust13/20
- Capability0/15
- Install experience12/15
- Documents what it does and how to connect
- Has a resolvable package or endpoint
- Exposes at least one tool, prompt or resource
- README has substantive content
- Includes a code example
- Documents its configuration
- Mentions credentials or security posture
- Last commit 7 days ago
- Has a release history
- Repository is not archived
- Licensed MIT
- Namespace verified in the official MCP registry
- Claimed by its owner
- Published under an organisation
- 0 tool(s) documented
- Provides prompt templates
- Provides resources
- 12 documented install method(s)
- Published to a package registry
- Offers a hosted endpoint — no local install
Version history
| Versions | Published |
|---|---|
| 0.5.2Latest | Aug 25, 2026 |