🏥 Saúde em Dado
Inteligência epidemiológica aberta sobre os microdados do SUS
Mortalidade · Dengue · Internações · Natalidade · Vulnerabilidade social — do Brasil inteiro, a custo zero.
Site · API · Análises · Metodologia
🎯 O que é
Os dados do SUS são públicos por lei, mas inacessíveis na prática: microdados em formato proprietário (DBC), fragmentados por estado e competência, somando dezenas de gigabytes. Pesquisadores, jornalistas e gestores gastam semanas em engenharia de dados antes de qualquer análise.
O Saúde em Dado elimina essa barreira. Ele transforma os microdados oficiais do DataSUS e do IBGE em indicadores agregados, validados e consultáveis por API pública gratuita, painéis navegáveis e downloads abertos — com pipeline 100% reproduzível e custo de manutenção zero.
Mais de 14,4 milhões de óbitos (2015–2024), 6,56 milhões de casos de dengue (recorde de 2024), 40,0 milhões de AIHs aprovadas (R$ 63,4 bi) e 5,2 milhões de nascimentos — em uma consulta.
📊 Fontes de dados
| Sistema | Conteúdo | Cobertura | Indicadores derivados |
|---|---|---|---|
| SIM | Mortalidade (óbitos) | 2015–2024 | Taxa bruta + IC95%, taxa padronizada por idade, excesso de mortalidade |
| SINAN | Dengue (notificações) | 2015–2024 | Incidência, gravidade, letalidade, canal endêmico |
| SIH | Internações hospitalares (AIH) | 2022–2024 | Permanência média e custo por episódio (AIH normal), mortalidade intra-hospitalar |
| SINASC | Nascidos vivos | 2021–2022 | Baixo peso, prematuridade, pré-natal, mortalidade infantil |
| IBGE | População (Censo 2022, Estimativas) e malhas | — | Denominadores, padronização, mapas |
| IPEA / IBGE | Vulnerabilidade social (proxy Censo 2022) | 2022 | Cruzamento desigualdade × saúde |
Todas as fontes são de domínio público. Apenas agregados são publicados — nenhum microdado individual sai da máquina de processamento (privacidade por desenho).
🧮 Indicadores e métodos
- Taxa padronizada por idade (método direto, padrão Brasil/Censo 2022) — comparação legítima entre municípios, corrigindo o efeito da estrutura etária.
- Intervalo de confiança de 95% (método gama / Poisson exato) em toda taxa bruta; alerta para municípios < 10 mil hab.
- Excesso de mortalidade — observado vs. esperado (baseline 2015–2019 ajustado por população), por UF e Brasil.
- Canal endêmico de dengue (diagrama de controle) — faixa esperada P25–P75 de 2015–2023 vs. ano observado.
- Taxa de Mortalidade Infantil — óbitos < 1 ano (SIM) ÷ nascidos vivos (SINASC).
- Índice de vulnerabilidade social (proxy) — z-score de analfabetismo + falta de água (Censo 2022).
- Tipo de AIH (SIH) — o arquivo do SIH mistura AIH normal com AIH de continuação, emitida quando
a internação se prolonga: uma internação longa vira várias linhas.
internacoesconta AIHs aprovadas (produção); permanência e custo médios são por episódio, sobre a AIH normal. Nos capítulos V (transtornos mentais) e VI (sistema nervoso) os dois números divergem muito — 25% e 10% das AIHs são de continuação. AIH não é internação nem paciente.
Documentação completa, fórmulas e limitações declaradas: saudeemdado.com/metodologia.
🏗️ Arquitetura (a custo zero)
Microdados DataSUS (.dbc/.csv) IBGE (SIDRA / localidades / malhas)
│ │
▼ ▼
┌───────────────────────────────────────────────────────┐
│ Pipelines Python (local) — streaming + DuckDB │
│ scripts/pipeline_*.py · agregação · validação │
└───────────────────────────────────────────────────────┘
│ (sobem apenas marts agregados, ~400 MB)
▼
┌───────────────────────────────────────────────────────┐
│ Supabase (Postgres free tier) — somente leitura (RLS) │
│ ├── API REST automática (PostgREST) │
│ └── Storage (Parquet com SHA-256) │
└───────────────────────────────────────────────────────┘
│
▼
┌───────────────────────────────────────────────────────┐
│ Next.js estático (GitHub Pages) → saudeemdado.com │
│ JSON estático no build = egress ~zero no banco │
└───────────────────────────────────────────────────────┘
Automação (GitHub Actions): deploy · keep-alive (≤6 dias) · validação de dados
Princípios: (1) agregar localmente, publicar só o essencial; (2) nenhum servidor de aplicação para manter; (3) reprodutibilidade radical — todo número regenerável das fontes oficiais por um script aberto.
🚀 Como acessar
Site: saudeemdado.com — painéis de mortalidade, dengue, internações, nascimentos, mapa municipal, tendências e boletim por município.
API REST pública (sem cadastro; chave de leitura em .env.example):
URL="https://zekjhmxjamatlxpkykde.supabase.co/rest/v1"; KEY="<anon key>"
# Municípios de MG por taxa padronizada de mortalidade (2023)
curl "$URL/mart_mortalidade_municipio?uf_sigla=eq.MG&ano=eq.2023&capitulo_cid=eq.TOTAL&sexo=eq.TOTAL&order=taxa_padronizada_100k.desc&limit=10" -H "apikey: $KEY"
# Dengue por município/ano (incidência e letalidade)
curl "$URL/mart_dengue_municipio_ano?uf_sigla=eq.SP&ano_epi=eq.2024&order=incidencia_100k.desc&limit=10" -H "apikey: $KEY"
Pacote Python (clients/python):
import saudeemdado as sd
sd.municipios(uf="MG", ano=2023, as_df=True).nlargest(10, "taxa_padronizada_100k")
sd.dengue(uf="SP", ano=2024, as_df=True)
Servidor MCP — a saúde do Brasil consultável por IA (mcp_server/).
Conecte o Claude Desktop/Code e pergunte em linguagem natural. Expõe 19 ferramentas: consulta
(mortalidade, internações, dengue, ICSAP, fluxo de pacientes, visão hospitalar, excesso) e análise
(comparar_com_pares — município vs. arquétipo k-means com percentis; canal_endemico_dengue —
diagrama de controle por UF; boletim_semanal — a edição vigente do boletim automático) — mais a
camada de confiabilidade (avisa quando o registro do município é pouco confiável) e o
detector de anomalias para briefing de gestor. Custo zero: roda no seu cliente e consome a API
pública — cada usuário traz o próprio Claude. Regras anti-alucinação embutidas: todo número vem
de uma ferramenta, com a fonte citada.
{ "mcpServers": { "saudeemdado": { "command": "uvx", "args": ["saudeemdado-mcp"] } } }
Publicado no PyPI e no
registry oficial MCP como
io.github.pedropaulofernandes88-stack/saudeemdado. Instalação e receitas: mcp_server/README.md.
Downloads — marts completos em Parquet com SHA-256 na página Dados & API.
🔁 Reprodutibilidade
# Python 3.10–3.12 (datasus-dbc não compila no 3.13+)
pip install duckdb pandas pyarrow requests scipy datasus-dbc dbfread
python scripts/pipeline_v2.py # SIM 2015–2024 (padronização, IC95%, excesso)
python scripts/pipeline_sinan.py # Dengue 2015–2024
python scripts/pipeline_sih.py # Internações 2022–2024
python scripts/pipeline_sinasc.py # Nascimentos + mortalidade infantil
python scripts/pipeline_ivs.py # Vulnerabilidade social (proxy Censo 2022)
python scripts/validate_data.py # validação contra âncoras oficiais
Os pipelines fazem download, agregam em streaming com checkpoint resumível e publicam via API.
A rotina de validação (.github/workflows/validate-data.yml)
confere mensalmente totais oficiais e conciliação entre marts.
📁 Estrutura
saude-publica-br/
├── scripts/ # pipelines (SIM, SINAN, SIH, SINASC, IVS) + validação
├── site/ # Next.js 14 (estático) → saudeemdado.com
│ ├── app/ # páginas: painel, dengue, internacoes, nascimentos,
│ │ # mapa, tendencias, artigos, dados, metodologia
│ ├── components/ # gráficos (Recharts), KPIs, byline
│ ├── content/ # artigos assinados (seção Análises)
│ └── scripts/ # geração de JSON estático no build
├── clients/python/ # pacote `saudeemdado` (PyPI-ready)
├── mcp_server/ # servidor Model Context Protocol
├── data/marts/ # marts agregados (Parquet)
├── .github/workflows/ # deploy, keep-alive, validação
├── CITATION.cff · LICENSE · .zenodo.json
📰 Análises
A seção Análises reúne artigos que cruzam os dados da plataforma com leitura epidemiológica e estatística — da anatomia da epidemia de dengue de 2024 ao paradoxo do sub-registro na relação vulnerabilidade × mortalidade.
🗺️ Roadmap
- Mortalidade (SIM) 2015–2024 · taxa padronizada · IC95% · excesso
- Dengue (SINAN) · Internações (SIH) · Nascimentos/Mortalidade infantil (SINASC)
- Vulnerabilidade social (proxy Censo 2022) e cruzamento com mortalidade
- Pacote Python · servidor MCP · boletim municipal · seção de Análises
- IVS oficial do IPEA (Atlas da Vulnerabilidade Social)
- SIH anos anteriores (2015–2021) e SINASC 2023+
- SINAN outros agravos (chikungunya, zika) · CNES (leitos/estabelecimentos)
- Imagens de capa próprias para a seção de Análises · DOI via Zenodo
🤝 Créditos e projetos relacionados
- LabSUS (Lucas Amaral Dourado, Universidade Federal do Tocantins) — projeto acadêmico de inteligência em saúde pública que inspirou aqui o cruzamento saúde × vulnerabilidade, a detecção de surtos por canal endêmico e a nota de uso ético. Métodos de domínio público; nenhum código foi copiado.
- Fontes primárias: DATASUS/Ministério da Saúde (SIM, SINAN, SIH, SINASC), IBGE (Censo 2022, Estimativas, malhas) e IPEA.
⚖️ Uso ético
Os indicadores são agregados e descritivos — não substituem julgamento técnico. Pede-se, de boa-fé, que a plataforma não seja usada para discriminação no acesso à saúde, vigilância em massa de indivíduos ou automação de decisões clínicas/de política pública sem supervisão profissional. Detalhes na LICENSE.
📄 Licença
Código sob licença MIT. Dados originais em domínio público (DATASUS/MS, IBGE, IPEA) — cite as fontes primárias.
Como citar (DOI 10.5281/zenodo.20706845):
Fernandes, Pedro. Saúde em Dado: inteligência epidemiológica aberta sobre os microdados do SUS. Zenodo, 2026. https://doi.org/10.5281/zenodo.20706845
Metadados legíveis por gerenciadores de referência em CITATION.cff.
👤 Autor
Pedro Fernandes Mestrando em Saúde Coletiva (IAMSPE) · Pós-graduando em Inteligência Artificial e Ciência de Dados em Saúde (Hospital Sírio-Libanês) · Diretor de Tecnologia da Informação — Prefeitura Municipal de Penápolis (SP)
—
saudeemdado.com · dados públicos, abertos e a custo zero para a pesquisa em saúde no Brasil