IBGE Brasil MCP

io.github.SidneyBissoli由 GitHub 账号 SidneyBissoli 发布v5.11.0更新于 Oct 29, 2026

IBGE: geography, census, economy and health from the official APIs, with provenance. 23 tools.

已验证Streamable HTTP可网页运行位置与生活网页搜索与抓取数据与分析

概览

AI 生成的概览

通过 IBGE(巴西官方统计)公开 API 查询地理、人口普查、经济、健康与新闻数据,每个回答都附带数据来源信息。

可以做什么
  • 列出、搜索并解析巴西各州、市镇、辖区及 IBGE 代码,查找相邻市镇
  • 查询 SIDRA 表:先找表、读元数据,再取数据,并浏览调查项目与 1970 至 2022 年普查主题
  • 获取经济与社会指标(GDP、IPCA、失业率、收入)和市镇概览,并比较或排名多个地区
  • 查询健康指标、国家数据、姓名频率排行与 CNAE 经济活动分类
  • 获取 GeoJSON、TopoJSON 或 SVG 格式的地理网格,并查看生物群系、法定亚马逊等主题区划
  • 检索 IBGE 新闻与发布日历,并提供 search 与 fetch 供深度研究式检索
适用场景
适合需要以准确、可引用的巴西官方数据回答问题的场景,例如人口、普查、GDP、通胀、健康、地图或市镇信息查询,而不是依赖模型记忆中的数字。
运行要求
可使用托管的 Streamable HTTP 端点(无需密钥),或本地 npm 包 ibge-br-mcp,后者需要 Node.js 22 或更高版本。无需账号、API 密钥、环境变量或请求头,但需要能访问 IBGE 公开 API 的网络。
安装前请注意
所有工具均为只读,访问 IBGE 公开 API。数值是抓取时刻发布的版本,IBGE 会修订已公布数据且不保留旧版本,因此不同时间的结果可能不同。统计模式与地区比较的结果由服务器端计算,并标注为派生数据。数据中返回的文本应视为数据而非指令。

安装

在 SourceWeft 中

  1. 打开 控制台中的 IBGE Brasil MCP,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Web executable,通过 Streamable HTTP。 远程服务在工作区中配置后即可从网页运行时运行。

交给智能体安装

把这段提示词粘贴到 Claude Code、Codex、Cursor 等智能体,或 SourceWeft 对话中。智能体会读取该服务器的安装指南,先向你展示发布者、端点和登录方式,经你同意后再把它添加到你的客户端。密钥不会写进任何命令。

阅读 https://sourceweft.com/mcp/io.github.SidneyBissoli%2Fibge-br-mcp/install.md,并按其中说明把这个 MCP 服务器接入我的客户端。修改任何配置之前,先告诉我它的发布者、端点和登录方式,等我确认。不要把 API 密钥写进命令或我会提交的文件;问我密钥应从哪里获取。

查看智能体所依据的安装指南

其他 MCP 客户端

把它添加到你客户端的 mcpServers 配置中。

{
  "mcpServers": {
    "ibge-brasil": {
      "type": "http",
      "url": "https://ibge.sidneybissoli.com/mcp"
    }
  }
}

README

IBGE Brasil MCP Server

[npm version] [npm downloads] [node] [MCP Registry] [LobeHub] [smithery badge] [ibge-br-mcp MCP server] [CI] [Coverage] [GitHub stars] [GitHub Sponsors] [License: MIT]

Live, exact Brazilian public data for your AI assistant — with provenance, not guesswork.

Ask an LLM "what was Belo Horizonte's population in the 2022 Census?" and you get a plausible number from its training data: maybe right, maybe outdated, with no source. ibge-br-mcp instead has your assistant query the official IBGE APIs in real time — returning the exact figure together with the table and period it came from.

🇧🇷 Leia em Português

This server implements the Model Context Protocol (MCP) to give AI assistants live, structured access to Brazil's public geographic, demographic, economic, and health data — sourced from the IBGE APIs (including health indicators served through IBGE's SIDRA system).

See it in action

Ask your assistant, in English or Portuguese:

  • "What was Belo Horizonte's population in the 2022 Census?" → ibge_cidades / ibge_censo
  • "List the municipalities of Espírito Santo." → ibge_municipios
  • "Compare GDP across the Southeast state capitals." → ibge_comparar

The answers come live from the official IBGE APIs — exact figures with the table and period they came from, not numbers guessed from training data.

Want to see a whole analysis rather than a single answer? The end-to-end demo works one real question — which state grew most between the 2010 and 2022 Censuses, and what drove it — from first call to conclusion, with every figure as it came back. The practical examples are seven shorter recipes, including ranking all 5,570 municipalities in a single call.

Features

  • 23 tools covering all major IBGE data domains — 21 ibge_* data tools plus search/fetch for ChatGPT Deep Research
  • Provenance block on every response — source, canonical URL, reference period, real extraction timestamp, ready-to-use citation, and legal regime (see Data provenance)
  • Reference resources & analysis prompts (MCP catalogs + ready-made templates)
  • 565 automated tests — 88% overall coverage, 92% across the tools
  • Automatic caching with configurable TTL for optimal performance
  • Retry mechanism with exponential backoff for network resilience
  • Comprehensive validation for all input parameters
  • Standardized error handling with helpful suggestions
  • Full TypeScript support with strict typing

📖 Article (in Portuguese): Como achar a tabela certa no SIDRA — e como saber que é a certa — finding the right SIDRA table, the metadata that settles it, a full worked example on 2022 Census data, and the four traps that cost the most. Also published on the site, in Portuguese and English: sidneybissoli.com.

🔌 Tutorial: Querying SIDRA through MCP in Claude and ChatGPT — how to connect this server in claude.ai, Claude Desktop, Claude Code, ChatGPT (developer mode and Deep Research), Cursor, VS Code and Gemini CLI, then one real query end to end with the provenance block it returns. Em português.

Data provenance

Since v3.3.0 every successful tool response carries a provenance block (portfolio contract v1.0), so each number is citable, auditable, and reproducible. The block is emitted on three channels:

  1. structuredContent.provenance (parseable, visible to the model) — exactly six keys: source (the IBGE API queried), source_url (canonical URL that reproduces the query), data_vintage (reference period when the source exposes one; null otherwise), retrieved_at (the REAL upstream extraction instant, preserved across cache hits, Brasília time), citation ("Fonte: IBGE — [pesquisa/tabela], [URL], extraído em [data]."), and license — plus attribution, the canonical list of source URLs.
  2. _meta under br.com.sidneybissoli.ibge/provenance and .../attribution (out-of-band mirror for audit/UI, zero model tokens).
  3. A compact text footer appended to the Markdown, for text-only clients.

The IBGE APIs declare no license of their own; the legal regime is Brazil's open-data framework — Lei 12.527/2011 (LAI) and Decreto 8.777/2016 (unrestricted reuse, free use, obligation limited to crediting the source). Statistics-mode responses (estatisticas=true) and ibge_comparar are marked derived with an explanatory note in the canonical block, since the aggregates are computed server-side from the raw IBGE values.

What each number is, and which version of it. A SIDRA value says neither its period nor whether it is a monthly change, a year-to-date or 12-month accumulation, an index or a level — the record's period column and its Variável label do, and each ibge_indicadores entry is pinned to the one variable its name promises (since 5.7.0; before, nine of them mixed every variable of the table). data_vintage is ordered by the SIDRA period code, so a January–December request reads "janeiro 2024–dezembro 2024". Every value is the version SIDRA publishes at retrieved_at: IBGE revises published figures (quarterly GDP, PNAD reweighting, PIM/PMC/PMS) and keeps no earlier version.

Available Tools

Localities & Geography

ToolDescription
ibge_estadosList Brazilian states with region filtering
ibge_municipiosList municipalities by state or search by name
ibge_localidadeGet details of a locality by IBGE code
ibge_geocodigoDecode IBGE codes or search codes by name
ibge_vizinhosFind neighboring municipalities

Statistical Data (SIDRA)

ToolDescription
ibge_sidraQuery SIDRA tables (Census, PNAD, GDP, etc.)
ibge_sidra_tabelasList and search available SIDRA tables (accent-insensitive; everyday Portuguese resolved to the IBGE's wording, and the response says so)
ibge_sidra_metadadosGet table metadata (variables, periods, levels)
ibge_pesquisasList IBGE research surveys and their tables

Economic & Social Indicators

ToolDescription
ibge_indicadoresEconomic and social indicators (GDP, IPCA, unemployment)
ibge_censoCensus data (1970-2022) with 16 themes
ibge_compararCompare indicators across localities with rankings

Municipal Data (Cidades@)

ToolDescription
ibge_cidadesMunicipal indicators (population, HDI, GDP per capita, etc.)

International Data

ToolDescription
ibge_paisesCountry data following UN M49 methodology

Demographics

ToolDescription
ibge_nomesName frequency and rankings in Brazil

Classifications

ToolDescription
ibge_cnaeCNAE (National Classification of Economic Activities)

Maps & Geographic Meshes

ToolDescription
ibge_malhasGeographic meshes (GeoJSON, TopoJSON, SVG)
ibge_malhas_temaWhat a thematic recorte contains (biomes, Legal Amazon, semi-arid, coastal, border strip, metro regions, RIDEs) + the URL to download its geometry

Health

ToolDescription
ibge_datasaudeHealth indicators via IBGE's SIDRA

News & Calendar

ToolDescription
ibge_noticiasIBGE news and press releases
ibge_calendarioIBGE release and collection calendar

ChatGPT Deep Research

ToolDescription
searchSearches the IBGE catalog (SIDRA tables, municipalities, known indicators) — OpenAI Deep Research contract
fetchReturns one catalog document (table metadata, municipality hierarchy + population, indicator series) with its public URL for citation

The two are the only tools without the ibge_ prefix: their names are fixed by the OpenAI contract. For data queries keep using the ibge_* tools.

Which tool should I use?

With 23 tools, several can touch the same topic. Quick guide for the common overlaps:

Population & demographics

You want…Use
A single municipality/state panel (population, HDI, GDP…)ibge_cidades
Census data or historical series (1970–2022)ibge_censo
Rank/compare 2–10 localities on one indicatoribge_comparar
A macro indicator time series (GDP, IPCA, unemployment…)ibge_indicadores
A specific SIDRA table / fine controlibge_sidra
The largest/smallest/mean/median across a whole tableibge_sidra/ibge_censo/ibge_indicadores/ibge_datasaude with estatisticas=true

Economic indicators

You want…Use
IPCA, INPC, GDP, unemployment (IBGE, primary source)ibge_indicadores

Localities & codes

You want…Use
List/search municipalitiesibge_municipios
List statesibge_estados
Resolve a name→code at any level, or decode a code's structureibge_geocodigo
Full record of one locality you already have the code foribge_localidade
Neighboring municipalitiesibge_vizinhos

SIDRA workflow

Discover → inspect → query: ibge_pesquisas / ibge_sidra_tabelas (find a table) → ibge_sidra_metadados (its structure) → ibge_sidra (query). For common data, the wrappers above (ibge_censo, ibge_indicadores, ibge_comparar, ibge_cidades) are usually easier.

Ask in your words, not the IBGE's

The IBGE names its tables in official statistical Portuguese, and ibge_sidra_tabelas matched your words against the table name as a plain substring, accents included — so populacao (no tilde, as anyone types it) returned nothing at all, and so did the everyday word for a concept the IBGE names differently. Measured over the 9,336 tables of the Aggregates API (2026-09-16), fixed since 5.1.0: both sides are normalised, every word must match (AND), and the everyday word is expanded to the IBGE's own — the response says so in notas_vocabulario, and zero results come with a way out.

you askhits beforethe IBGE writeshits
populacao, ocupacao, instrucao, saude, area, agua0população, ocupação, instrução, saúde, área, água520, 364, 698, 518, 956, 256
desemprego4desocupação33
renda72rendimento1,126
inflação0IPCA, INPC, preços37, 15, 75
moradia, casa14, 101domicílio3,606
cidade110município455
natalidade, mortes0, 1nascidos vivos, óbitos84, 33
gênero40sexo2,020
negros0cor ou raça1,134
universidade, faculdade0ensino superior12
luz, fábrica, tabagismo, convênio, idosos0energia elétrica, indústria, fumante, plano de saúde, 60 anos43, 248, 94, 101, 89

Only measured pairs enter the table (src/vocabulario.ts, counts in the header): the word you ask with absent from the catalogue, the IBGE's word present. What the IBGE does not publish as an aggregate stays out and still returns zero — turismo, aposentadoria, frota — because an alias for data that does not exist promises what the source does not have. The same table feeds the Deep Research search index, which gets the everyday word as a keyword of the table whose name carries the IBGE's word.

Maps (meshes)

You want…Use
Administrative outlines (Brazil/region/state/municipality)ibge_malhas
Thematic areas (biomes, Legal Amazon, semi-arid, metro regions)ibge_malhas_tema (IBGE Geosserviços WFS — the Malhas API does not publish these)

Installation

Prerequisites

  • Node.js 22.x or higher (engines.node)
  • npm or yarn

From npm (recommended)

bash
npm install -g ibge-br-mcp

From source

bash
# Clone the repositorygit clone https://github.com/SidneyBissoli/ibge-br-mcp.gitcd ibge-br-mcp
# Install dependenciesnpm install
# Build the projectnpm run build

Configuration

Remote endpoint (nothing to install)

The server is also hosted, with the same tools, over Streamable HTTP and without a key:

https://ibge.sidneybissoli.com/mcp

It works with any client that accepts a remote MCP server — a custom connector in claude.ai (Settings → Connectors → Add custom connector), claude mcp add --transport http ibge https://ibge.sidneybissoli.com/mcp in Claude Code, an app in ChatGPT, the mcp.json of Cursor and VS Code. The step-by-step for each client is in the tutorial. The sections below cover the local form, via npx.

Claude Desktop

Add to your Claude Desktop configuration file (claude_desktop_config.json):

json
{  "mcpServers": {    "ibge-br-mcp": {      "command": "npx",      "args": ["-y", "ibge-br-mcp"]    }  }}

Or if installed from source:

json
{  "mcpServers": {    "ibge-br-mcp": {      "command": "node",      "args": ["/path/to/ibge-br-mcp/dist/index.js"]    }  }}

Claude Code

json
{  "mcpServers": {    "ibge-br-mcp": {      "command": "npx",      "args": ["-y", "ibge-br-mcp"]    }  }}

ChatGPT (Deep Research)

ChatGPT deep research (and company knowledge, and research workflows over the Responses API) only uses an MCP server that exposes exactly search and fetch — this server does, on top of the ibge_* tools. Point the connector at the hosted endpoint, no key required:

https://ibge.sidneybissoli.com/mcp

search ranks the query against SIDRA tables, municipalities and the known indicators and returns { id, title, url }; fetch returns the document as readable Markdown with the canonical public URL (sidra.ibge.gov.br or cidades.ibge.gov.br), which is what ChatGPT cites. Both carry the same provenance block as every other tool. In ChatGPT's developer mode (Settings → Security and login → Developer mode) any tool is callable — the ibge_* tools remain the ones to use for data.

Tool Usage Examples

ibge_estados

List all Brazilian states.

# List all statesibge_estados
# States in Northeast regionibge_estados(regiao="NE")
# States sorted by abbreviationibge_estados(ordenar="sigla")

ibge_municipios

List Brazilian municipalities.

# Municipalities of São Paulo stateibge_municipios(uf="SP")
# Search municipalities by nameibge_municipios(busca="Campinas")
# Municipalities in MG containing "Belo"ibge_municipios(uf="MG", busca="Belo")

ibge_cidades

Query municipal indicators (similar to Cidades@ portal).

# Panorama of São Pauloibge_cidades(tipo="panorama", municipio="3550308")
# Population historyibge_cidades(tipo="historico", municipio="3550308", indicador="populacao")
# List available researchibge_cidades(tipo="pesquisas")

Available indicators: populacao, area, densidade, pib_per_capita, idh, escolarizacao, mortalidade, salario_medio, receitas, despesas

ibge_paises

Query international country data.

# List all countriesibge_paises(tipo="listar")
# Brazil detailsibge_paises(tipo="detalhes", pais="BR")
# Search countriesibge_paises(tipo="buscar", busca="Argentina")
# Countries in Americasibge_paises(tipo="listar", regiao="americas")

Regions: americas, europa, africa, asia, oceania

ibge_sidra

Query SIDRA tables (IBGE's Automatic Recovery System).

# Brazil population in 2023ibge_sidra(tabela="6579", periodos="2023")
# Population by stateibge_sidra(tabela="6579", nivel_territorial="3", periodos="2023")
# Census 2022 for São Paulo municipalityibge_sidra(tabela="9514", nivel_territorial="6", localidades="3550308")

Common tables:

CodeDescription
6579Population estimates (annual)
9514Census 2022 population
4714Population, territorial area and density (Census 2022)
4099Unemployment rate (PNAD Contínua, quarterly)
1846Quarterly GDP at current prices (Brazil)
5938Municipal GDP at current prices (annual)
6784Annual GDP and GDP per capita (Brazil)

Territorial levels:

CodeLevel
1Brazil
2Region (North, Northeast, etc.)
3State (UF)
6Municipality
7Metropolitan Region
106Health Region
127Legal Amazon
128Semi-arid

Statistics mode (also on ibge_censo, ibge_indicadores, ibge_datasaude): for largest/smallest/mean/median/distribution/ranking questions, pass estatisticas=true — the server computes the full distribution (min/max/mean/ median/std-dev/labeled percentiles) over all rows before pagination and returns top/bottom rankings (topN, default 10). agruparPor="<column label>" ranks groups by descending sum, each with its own mini-distribution.

# Which state has the largest estimated population?ibge_sidra(tabela="6579", nivel_territorial="3", estatisticas=true)
# Census 2022 population distribution grouped by stateibge_censo(ano="2022", tema="populacao", nivel_territorial="3", estatisticas=true, agruparPor="Unidade da Federação")

ibge_censo

Query Census data (1970-2022).

# Population Census 2022ibge_censo(ano="2022", tema="populacao")
# Historical population seriesibge_censo(ano="todos", tema="populacao")
# Literacy by state in 2010ibge_censo(ano="2010", tema="alfabetizacao", nivel_territorial="3")

Available themes: populacao, alfabetizacao, domicilios, idade_sexo, religiao, cor_raca, rendimento, migracao, educacao, trabalho

ibge_indicadores

Query economic and social indicators.

# GDPibge_indicadores(indicador="pib")
# IPCA last 12 monthsibge_indicadores(indicador="ipca", periodos="last 12")
# Unemployment by stateibge_indicadores(indicador="desemprego", nivel_territorial="3")
# List all indicatorsibge_indicadores(indicador="listar")

Available indicators:

CategoryIndicators
Economicpib, pib_variacao, pib_per_capita, industria, comercio, servicos
Pricesipca, ipca_acumulado, inpc
Labordesemprego, ocupacao, rendimento, informalidade
Populationpopulacao, densidade
Agricultureagricultura, pecuaria

ibge_nomes

Query name frequency and rankings.

# Frequency of "Maria"ibge_nomes(tipo="frequencia", nomes="Maria")
# Compare namesibge_nomes(tipo="frequencia", nomes="João,José,Pedro")
# Ranking of names in 2000sibge_nomes(tipo="ranking", decada=2000)
# Female names rankingibge_nomes(tipo="ranking", sexo="F")

ibge_malhas

Get geographic meshes (maps).

# Brazil with statesibge_malhas(localidade="BR", resolucao="2")
# São Paulo with municipalitiesibge_malhas(localidade="SP", resolucao="5")
# Specific municipalityibge_malhas(localidade="3550308")
# SVG formatibge_malhas(localidade="BR", formato="svg")

Resolution levels:

ValueInternal Divisions
0No divisions (outline only)
2States
5Municipalities

ibge_datasaude

Query Brazilian health indicators served through IBGE's SIDRA (some originally produced by DataSUS, e.g. mortality and births).

# Infant mortality in Brazilibge_datasaude(indicador="mortalidade_infantil")
# Life expectancy by stateibge_datasaude(indicador="esperanca_vida", nivel_territorial="3")
# List indicatorsibge_datasaude(indicador="listar")

Available indicators: mortalidade_infantil, esperanca_vida, nascidos_vivos, obitos, fecundidade, saneamento_agua, saneamento_esgoto, plano_saude

APIs Used

IBGE APIs

  • Localities: servicodados.ibge.gov.br/api/v1/localidades
  • Names: servicodados.ibge.gov.br/api/v2/censos/nomes
  • Aggregates/SIDRA: servicodados.ibge.gov.br/api/v3/agregados (SIDRA tables are read here with view=flat; apisidra.ibge.gov.br has been behind a browser-only Cloudflare challenge since 2026-09-15)
  • Meshes: servicodados.ibge.gov.br/api/v3/malhas
  • News: servicodados.ibge.gov.br/api/v3/noticias
  • Population: servicodados.ibge.gov.br/api/v1/projecoes/populacao
  • CNAE: servicodados.ibge.gov.br/api/v2/cnae
  • Calendar: servicodados.ibge.gov.br/api/v3/calendario
  • Countries: servicodados.ibge.gov.br/api/v1/paises
  • Research: servicodados.ibge.gov.br/api/v1/pesquisas

Development

bash
# Buildnpm run build
# Watch modenpm run watch
# Run testsnpm test
# Run tests in watch modenpm run test:watch
# Lintnpm run lint
# Formatnpm run format
# Test with MCP inspectornpm run inspector

Project Structure

ibge-br-mcp/├── src/│   ├── index.ts              # Main MCP server│   ├── types.ts              # TypeScript types│   ├── config.ts             # Configuration and constants│   ├── cache.ts              # Request caching system│   ├── retry.ts              # Trip to the source over @sbissoli/mcp-upstream (retry, timeout, budget, retrieval count)│   ├── errors.ts             # Standardized error handling│   ├── validation.ts         # Input validation helpers│   ├── metrics.ts            # Metrics and logging│   ├── utils/│   │   └── formatters.ts     # Formatting utilities│   └── tools/│       ├── index.ts          # Tool exports│       ├── estados.ts        # ibge_estados│       ├── municipios.ts     # ibge_municipios│       ├── localidade.ts     # ibge_localidade│       ├── geocodigo.ts      # ibge_geocodigo│       ├── censo.ts          # ibge_censo│       ├── sidra.ts          # ibge_sidra│       ├── sidra-tabelas.ts  # ibge_sidra_tabelas│       ├── sidra-metadados.ts# ibge_sidra_metadados│       ├── indicadores.ts    # ibge_indicadores│       ├── cnae.ts           # ibge_cnae│       ├── calendario.ts     # ibge_calendario│       ├── comparar.ts       # ibge_comparar│       ├── malhas.ts         # ibge_malhas│       ├── malhas-tema.ts    # ibge_malhas_tema│       ├── vizinhos.ts       # ibge_vizinhos│       ├── datasaude.ts      # ibge_datasaude│       ├── pesquisas.ts      # ibge_pesquisas│       ├── nomes.ts          # ibge_nomes│       ├── noticias.ts       # ibge_noticias│       ├── paises.ts         # ibge_paises│       └── cidades.ts        # ibge_cidades├── tests/                    # Test files├── dist/                     # Compiled files├── package.json├── tsconfig.json├── vitest.config.ts└── README.md

Testing

The project includes a comprehensive test suite with 565 tests covering:

  • Validation functions
  • Retry mechanism
  • Formatting utilities
  • Error handling
  • Cache operations
  • Integration tests with mocks
bash
npm test

Quality Assurance

This project maintains high code quality standards:

  • 565 automated tests covering validation, caching, retry logic, formatting, and integrations
  • 88% overall test coverage — cache and validation modules above 97%
  • ESLint for code linting with zero warnings
  • Prettier for consistent code formatting
  • TypeScript strict mode for type safety
  • Automated CI/CD via GitHub Actions

Run tests locally:

bash
# Run all testsnpm test
# Run tests with coveragenpm run test:coverage
# Run linternpm run lint

Surface fingerprint, checkable from the registry

Every release publishes, in its MCP Registry entry, the sha256 of the surface this version serves (initialize, tools, resources, prompts) and which methods answer without a credential. A surface change without a version bump fails the build; the fingerprint in the registry lets a client check the same thing on its own side. Canonical form and procedure: SPEC.md of @sbissoli/mcp-surface. To check it yourself (Node 18+, no dependencies):

sh
curl -sO https://raw.githubusercontent.com/SidneyBissoli/mcp-br-commons/main/packages/mcp-surface/exemplos/verify.mjsnode verify.mjs io.github.SidneyBissoli/ibge-br-mcp

License

MIT

Author

Sidney da Silva Pereira Bissoli

References

来源:README.md,提交 9579ed9

工具

23

ibge_estados

Estados do Brasil

Lists all Brazilian states from IBGE. Features: - Lists all 27 states (26 states + Federal District) - Filter by region (North, Northeast, Southeast, South, Central-West) - Sort by ID, name, or abbreviation Examples: - List all states: (no parameters) - Northeast states: regiao="NE" - Sorted by abbreviation: ordenar="sigla" Use a different tool when: - Municipalities of a state → ibge_municipios - Details/hierarchy of one locality by code → ibge_localidade Behavior: read-only and idempotent — a live GET against the public IBGE Localidades API. Returns a Markdown table.

输入参数regiaoordenar

ibge_municipios

Municípios do Brasil

Lists Brazilian municipalities from IBGE. Features: - List municipalities by state (using state abbreviation) - List all municipalities in Brazil (5,570 municipalities) - Search by municipality name - Returns 7-digit IBGE code Examples: - São Paulo municipalities: uf="SP" - Search by name: busca="Campinas" - MG municipalities containing "Belo": uf="MG", busca="Belo" Use a different tool when: - Resolve/decode a code at any level (region, state, district), not just municipalities → ibge_geocodigo - Full details/hierarchy of one locality by code → ibge_localidade - Neighboring municipalities → ibge_vizinhos Behavior: read-only and idempotent — a live GET against the public IBGE Localidades API. Returns a Markdown table.

输入参数ufbuscalimite

ibge_localidade

Detalhes de localidade

Returns details of a specific locality by IBGE code. Features: - State information (2-digit code) - Municipality information (7-digit code) - District information (9-digit code) - Complete hierarchy (region, mesoregion, microregion) Examples: - São Paulo state: codigo=35 - São Paulo city: codigo=3550308 - District: codigo=355030805 This tool returns the full record of ONE locality you already have the code for. Use a different tool when: - You have a name and need the code → ibge_municipios (municipalities) or ibge_geocodigo (any level) - You want to decompose/understand a code's structure → ibge_geocodigo Behavior: read-only and idempotent — a live GET against the public IBGE Localidades API. Returns a Markdown record.

输入参数tipocodigo必填

ibge_sidra

Consulta de tabelas SIDRA

Queries SIDRA tables (IBGE's Automatic Recovery System). SIDRA contains data from IBGE surveys like Census, PNAD, GDP, etc. Common tables: - 6579: Population estimates (annual) - 9514: Census 2022 population - 200: Census population (1970-2010) - 4714: Population, territorial area and density (Census 2022) - 4099: Unemployment rate (PNAD Contínua, quarterly) - 5436: Average real income (PNAD Contínua, quarterly) - 1846: Quarterly GDP at current prices (Brazil) - 5938: Municipal GDP at current prices (annual, down to municipality) - 6784: Annual GDP and GDP per capita (Brazil) Territorial levels: - 1: Brazil - 2: Region (North, Northeast, etc.) - 3: State (UF) - 6: Municipality - 7: Metropolitan Region Examples: - Brazil population 2023: tabela="6579", periodos="2023" - Population by state: tabela="6579", nivel_territorial="3" - Census 2022 by municipality: tabela="9514", nivel_territorial="6", localidades="3550308" What each number is: every record carries the SIDRA period column (code and label, e.g. "Mês (Código)" 202403 / "Mês" "março 2024") and the "Variável" label — the only place that says whether a value is a monthly change, a year-to-date or 12-month accumulation, an index number or a level; read it before adding, subtracting or comparing values. A PNAD rolling quarter ("jun-jul-ago 2026") is a three-month window that moves every month, not a calendar quarter. Revisions: values are what SIDRA publishes at the extraction instant (retrieved_at); IBGE revises published figures (quarterly GDP at each release, PNAD reweighting, annual revisions of PIM/PMC/PMS) and the API keeps no earlier version. Statistics mode: for **largest/smallest/mean/median/distribution/ranking** questions ("which municipality has the largest population?", "median GDP by state") use estatisticas=true — it computes min/max/mean/median/std-dev/labeled percentiles over ALL data rows BEFORE pagination and returns top/bottom rankings (default 10, cap 100 via topN), so one call answers wh

输入参数topNcampospaginatabela必填formatoperiodosvariaveisagruparPorlocalidadesestatisticasclassificacoesnivel_territorial

ibge_nomes

Frequência e ranking de nomes

Queries name frequency and rankings in Brazil (IBGE). Features: 1. **Name frequency** (tipo='frequencia'): - Birth frequency by decade - Multiple names separated by comma - Filter by sex and locality 2. **Name ranking** (tipo='ranking'): - Most popular names - Filter by decade, sex, and locality Available decades: 1930-2010 Examples: - Frequency of "Maria": tipo="frequencia", nomes="Maria" - Compare names: tipo="frequencia", nomes="João,José,Pedro" - 2000s ranking: tipo="ranking", decada=2000 - Female names: tipo="ranking", sexo="F" Behavior: read-only and idempotent — a live GET against the public IBGE Nomes (Censo) API. Returns a Markdown table.

输入参数sexotipo必填nomesdecadalimitelocalidade

ibge_noticias

Notícias do IBGE

Searches and lists already-published IBGE news articles and press releases. Use this to find recent IBGE publications or announcements about a survey or topic — when an indicator was released, or news mentioning a term like "censo". Results are sorted newest-first; with no parameters it returns the 10 most recent items. Parameters: - busca: free-text term to match (e.g. "PIB", "censo") - tipo: "release" (official publication of survey results) or "noticia" (general news); omit for both - de / ate: date range, format DD/MM/AAAA (e.g. de="01/01/2024", ate="31/12/2024") - destaque: true to return only featured items - quantidade: how many to return (default 10, max 100); pagina: page number to page through more Each item returns: title, type (release/news), publication date, editoria (section), related products/surveys, a featured flag, a plain-text summary, and a link to the full article. The header reports the total count and current page. Examples: - Latest 10 news: (no parameters) - Search census: busca="censo" - 2024 news: de="01/01/2024", ate="31/12/2024" - Releases only: tipo="release" Use a different tool when: - Scheduled/upcoming release dates (not yet published) → ibge_calendario Behavior: read-only and idempotent — a live GET against the public IBGE Notícias API. Returns a Markdown list.

输入参数deatetipobuscapaginadestaquequantidade

ibge_sidra_tabelas

Busca de tabelas SIDRA

Lists and searches available SIDRA tables. Features: - List all SIDRA tables (aggregates) - Search by table name: every word must match (AND), accents and case ignored, and everyday Portuguese is resolved to the IBGE's own wording (renda→rendimento, desemprego→desocupação, cidade→município, gênero→sexo); when that happens the response says so in notas_vocabulario - Filter by survey (Census, PNAD, GDP, etc.) - Shows code and name of each table SIDRA contains data from various surveys: - Demographic Census - PNAD Contínua (employment, income) - National Accounts (GDP) - Industrial Survey - Agricultural Survey Examples: - List tables: (no parameters) - Search population tables: busca="população" - Census tables: pesquisa="censo" This is step 1 of the SIDRA workflow: find a table code → ibge_sidra_metadados (structure) → ibge_sidra (query). For common data, a wrapper is usually easier: ibge_censo, ibge_indicadores, ibge_comparar, ibge_cidades. Behavior: read-only and idempotent — a live GET against the public IBGE SIDRA API. Returns a Markdown table.

输入参数buscalimitepesquisa

ibge_sidra_metadados

Metadados de tabela SIDRA

Returns metadata for a specific SIDRA table. Features: - General info (name, survey, subject, periodicity) - Available territorial levels - Variable list with units - Classifications and categories - Available periods Use this tool to understand table structure BEFORE querying data with ibge_sidra. Examples: - Population table metadata: tabela="6579" - Census 2022 metadata: tabela="9514" - PNAD unemployment: tabela="4714" Use this after finding a table code (ibge_sidra_tabelas) and before querying with ibge_sidra. Behavior: read-only and idempotent — a live GET against the public IBGE SIDRA API. Returns Markdown.

输入参数tabela必填incluir_periodosincluir_localidades

ibge_malhas

Malhas geográficas

Gets geographic meshes (maps) from IBGE in GeoJSON, TopoJSON, or SVG format. Features: - Meshes for Brazil, regions, states, municipalities - Different resolution levels (internal divisions) - Different quality levels - Formats: GeoJSON (data), TopoJSON (compact), SVG (image) Locality types: - "BR" or "1" = Entire Brazil - State abbreviation (e.g., "SP", "RJ") - State code (e.g., "35" for SP) - Municipality code (7 digits) Resolution (internal divisions): - 0 = Outline only - 2 = States - 5 = Municipalities Examples: - Brazil with states: localidade="BR", resolucao="2" - São Paulo with municipalities: localidade="SP", resolucao="5" - SVG format: localidade="BR", formato="svg" Use a different tool when: - Thematic meshes (biomes, Legal Amazon, semi-arid, metropolitan regions) → ibge_malhas_tema Behavior: read-only and idempotent — a live GET against the public IBGE Malhas API. Returns the mesh in the requested format (GeoJSON, TopoJSON, or SVG).

输入参数tipoformatoqualidaderesolucaolocalidade必填intrarregiao

ibge_pesquisas

Pesquisas do IBGE

Lists available IBGE surveys and their tables. Features: - List all IBGE surveys (Census, PNAD, GDP, etc.) - Search by name or code - Show details and tables of a specific survey - Categorize surveys by theme Main surveys: - **Census**: Demographic, Agricultural, MUNIC - **PNAD Contínua**: Employment, income, education - **National Accounts**: GDP, investments - **Economic Surveys**: Industry, Commerce, Services - **Price Indices**: IPCA, INPC Examples: - List all: (no parameters) - Search population: busca="população" - PNAD details: detalhes="pnad" This lists surveys, not data. To find table codes use ibge_sidra_tabelas; to query data use ibge_sidra (or a wrapper: ibge_censo, ibge_indicadores, ibge_comparar, ibge_cidades). Behavior: read-only and idempotent — a live GET against the public IBGE SIDRA/Pesquisas API. Returns a Markdown list.

输入参数buscadetalhes

ibge_censo

Censo Demográfico

Queries IBGE Demographic Census data (1970-2022). Simplified tool to access census data without knowing SIDRA table codes. Available years: 1970, 1980, 1991, 2000, 2010, 2022 Available themes: - populacao: Resident population - alfabetizacao: Literacy rate - domicilios: Housing characteristics - idade_sexo: Age pyramid - religiao: Religion distribution - cor_raca: Race/color - rendimento: Monthly income - educacao: Education level - trabalho: Employment Examples: - Population 2022: ano="2022", tema="populacao" - Historical series: ano="todos", tema="populacao" - Literacy 2010 by state: ano="2010", tema="alfabetizacao", nivel_territorial="3" - List tables: tema="listar" Statistics mode: for largest/smallest/mean/median/distribution/ranking questions over census data ("which municipality had the largest 2022 population?") use estatisticas=true — full distribution + top/bottom computed over ALL rows before truncation; agruparPor="<column label>" ranks groups by descending sum. In this mode campos/formato are ignored and registros comes empty. Use a different tool when: - One municipality's current panel (estimate, HDI, GDP) → ibge_cidades - Comparing/ranking localities → ibge_comparar - An arbitrary SIDRA table → ibge_sidra Behavior: read-only and idempotent — a live GET against the public IBGE SIDRA API. Returns Markdown plus a typed structuredContent payload.

输入参数anotematopNcamposformatoagruparPorlocalidadesestatisticasnivel_territorial

ibge_indicadores

Indicadores econômicos e sociais

Queries IBGE economic and social indicators. Available indicators: **Economic:** - pib: quarterly GDP at current prices, R$ million (Brazil only) - pib_variacao: quarterly GDP volume change, % over the same quarter of the previous year (Brazil only) - pib_per_capita: annual GDP per capita at current prices, R$ (Brazil only) - industria: industrial production index, general industry (2022=100) - comercio: retail sales volume index (2022=100) - servicos: services volume index (2022=100, Brazil only) **Prices:** - ipca: IPCA monthly change, % - ipca_acumulado: IPCA accumulated over 12 months, % - inpc: INPC monthly change, % **Labor:** - desemprego: Unemployment rate - ocupacao: Employed people (thousands) - rendimento: average real income from all jobs, R$ — each period is a ROLLING quarter (e.g. "jun-jul-ago 2026"), Brazil only - informalidade: Informality rate **Population:** - populacao: Population estimate - densidade: Population density Examples: - GDP: indicador="pib" - IPCA last 12 months: indicador="ipca", periodos="last 12" - Unemployment by state: indicador="desemprego", nivel_territorial="3" - List indicators: indicador="listar" Each indicator returns ONE variable — the one its name says; for another one of the same table (e.g. the year-to-date change) use ibge_sidra with variaveis. What each number is: every record carries the SIDRA period column (code and label, e.g. "Mês (Código)" 202403 / "Mês" "março 2024") and the "Variável" label — the only place that says whether a value is a monthly change, a year-to-date or 12-month accumulation, an index number or a level; read it before adding, subtracting or comparing values. A PNAD rolling quarter ("jun-jul-ago 2026") is a three-month window that moves every month, not a calendar quarter. Revisions: values are what SIDRA publishes at the extraction instant (retrieved_at); IBGE revises published figures (quarterly GDP at each release, PNAD reweighting, annual revisions of PIM/PMC/PMS) and the API keeps

输入参数topNcamposformatoperiodoscategoriaindicadoragruparPorlocalidadesestatisticasnivel_territorial

ibge_cnae

Classificação CNAE

Queries CNAE (National Classification of Economic Activities) from IBGE. CNAE is the official classification for economic activities in Brazil. Hierarchical structure: - Section (letter A-U): 21 main categories - Division (2 digits): 87 divisions - Group (3 digits): 285 groups - Class (4-5 digits): 673 classes - Subclass (7 digits): 1,332 subclasses Features: - Search by CNAE code - Search by activity description - List by hierarchical level - Show complete hierarchy Examples: - Search software: busca="software" - Specific code: codigo="6201-5/01" - View section: codigo="J" - List divisions: nivel="divisoes" Behavior: read-only and idempotent — a live GET against the public IBGE CNAE API. Returns Markdown.

输入参数buscanivelcodigolimite

ibge_geocodigo

Códigos geográficos do IBGE

Decodes IBGE codes or searches codes by locality name. Features: - Decode region, state, municipality, or district codes - Search IBGE code by name - Show complete geographic hierarchy - Return related codes Code structure: - 1 digit: Region (1=North, 2=Northeast, 3=Southeast, 4=South, 5=Central-West) - 2 digits: State (11-53) - 7 digits: Municipality - 9 digits: District Examples: - Decode municipality: codigo="3550308" - Decode state: codigo="35" - Search by name: nome="São Paulo" - Municipality in state: nome="Campinas", uf="SP" This tool decodes a code's structure and resolves name→code at any level. Use a different tool when: - You only need to list/search municipalities → ibge_municipios - You want the full detailed record of one locality → ibge_localidade Behavior: read-only and idempotent — a live GET against the public IBGE Localidades API. Returns Markdown.

输入参数ufnomecodigo

ibge_calendario

Calendário de divulgações

Queries IBGE release and collection calendar. Features: - List upcoming survey releases - Filter by product (IPCA, PNAD, GDP, etc.) - Filter by period - Distinguish releases from field collections Event types: - **Release**: Publication of survey results - **Collection**: Field research period Examples: - Upcoming releases: (no parameters) - IPCA releases: produto="IPCA" - 2024 calendar: de="01/01/2024", ate="31/12/2024" - Field collections: tipo="coleta" Use a different tool when: - Already-published news and releases → ibge_noticias Behavior: read-only and idempotent — a live GET against the public IBGE Calendário API. Returns a Markdown list.

输入参数deatetipopaginaprodutoquantidade

ibge_comparar

Comparação entre localidades

Compares data between localities (municipalities or states). Available indicators: - populacao: Current population estimate - populacao_censo: Census 2022 population - pib: GDP per capita - area: Territorial area (km²) - densidade: Population density (inhab/km²) - alfabetizacao: Literacy rate - domicilios: Number of households Features: - Compare up to 10 localities at once - Calculate statistics (max, min, average, variation) - Generate ranked output - Accept municipality codes (7 digits) or state codes (2 digits) Examples: - Compare capitals: localidades="3550308,3304557,4106902", indicador="populacao" - Compare states: localidades="35,33,41", indicador="pib" - Area ranking: localidades="3550308,3304557", formato="ranking" - List indicators: indicador="listar" Use this tool ONLY to rank/compare 2–10 localities on one indicator. For a single locality, use ibge_cidades (municipal panel), ibge_censo, or ibge_sidra. Behavior: read-only and idempotent — a live GET against the public IBGE APIs (SIDRA and Localidades). Returns Markdown plus a typed structuredContent payload.

输入参数formatoindicadorlocalidades必填

ibge_malhas_tema

Malhas temáticas

Lists what a THEMATIC territorial recorte of Brazil contains: how many features, with which codes and names, and the URL to download its geometry. Available recortes: - biomas: the six continental biomes - amazonia_legal: Legal Amazon boundary - semiarido: semi-arid area - costeiro: coastal municipalities - fronteira: border-strip municipalities - metropolitana: metropolitan regions - ride: Integrated Development Regions - listar: the catalogue itself, without querying the source Filtering with `codigo`: only the recortes that have a per-feature code accept it — biomas (the biome code) and the two municipality ones, costeiro and fronteira (the 7-digit IBGE municipality code). Ask without `codigo` to see what exists; biome codes come from the source, not from a fixed table. GEOMETRY IS NOT IN THE RESPONSE, on purpose: one biome polygon alone is over 9 MB. The response carries the attributes plus a canonical WFS URL that returns the recorte with geometry in GeoJSON. Use a different tool when: - Administrative meshes WITH geometry (country/region/state/municipality outlines) → ibge_malhas Behavior: read-only and idempotent — a live GET against the public IBGE Geosserviços WFS (IBGE Geociências), which is a different service from the Malhas API and the only one that publishes these recortes. Returns Markdown plus a typed structuredContent payload.

输入参数tema必填codigolimite

ibge_vizinhos

Municípios vizinhos

Finds nearby/neighboring municipalities. Features: - Search by IBGE code (7 digits) or municipality name - Returns municipalities in the same mesoregion (proximity approximation) - Optionally includes population data Note: Uses mesoregion as geographic proximity proxy. For exact spatial neighborhood, mesh processing would be required. Examples: - By code: municipio="3550308" - By name: municipio="Campinas", uf="SP" - With population: municipio="3550308", incluir_dados=true Note: proximity is approximated by shared mesoregion (not exact spatial adjacency). For listing/searching municipalities, use ibge_municipios. Behavior: read-only and idempotent — a live GET against the public IBGE Localidades API. Returns a Markdown list.

输入参数ufraiomunicipio必填incluir_dados

ibge_datasaude

Indicadores de saúde

Queries Brazil health indicators, served through IBGE's SIDRA (some originally produced by DataSUS, e.g. mortality and births). Mortality and Birth: - mortalidade_infantil: Infant mortality rate - nascidos_vivos: Live births by location - obitos: Deaths by residence Demographic Indicators: - esperanca_vida: Life expectancy at birth - fecundidade: Fertility rate Sanitation: - saneamento_agua: Water supply - saneamento_esgoto: Sewage system Health Coverage: - plano_saude: Health insurance coverage - autoavaliacao_saude: Self-rated health status Territorial levels: 1=Brazil, 2=Region, 3=State, 6=Municipality Examples: - Infant mortality: indicador="mortalidade_infantil" - Life expectancy by state: indicador="esperanca_vida", nivel_territorial="3" - Deaths in SP: indicador="obitos", nivel_territorial="3", localidade="35" - List indicators: indicador="listar" Statistics mode: for largest/smallest/mean/median/distribution/ranking questions ("which state has the highest infant mortality?", "median life expectancy across states") use estatisticas=true — full distribution + top/bottom over ALL rows before truncation; agruparPor="<column label>" ranks groups by descending sum. In this mode campos/formato are ignored and registros comes empty. Use a different tool when: - A single municipality's general panel (which also includes infant mortality) → ibge_cidades - Population/demographic counts (not health-specific) → ibge_censo or ibge_sidra Behavior: read-only and idempotent — a live GET against the public IBGE SIDRA API. Returns Markdown plus a typed structuredContent payload.

输入参数topNcamposformatoperiodoindicador必填agruparPorlocalidadeestatisticasnivel_territorial

ibge_paises

Dados de países

Queries international country data via IBGE. Features: - List all countries (following UN M49 methodology) - Country details (area, languages, currency, location) with the latest published value of country indicators — by default population, GDP, GDP per capita, HDI and life expectancy - Pick other indicators with indicadores="<ids or aliases separated by |>" - Indicator catalog as published by IBGE (34 indicators: economy, population, health, environment, networks), with unit and scale - Search countries by name - Filter by region/continent Each indicator value is the most recent one the source publishes for that country, with its year or period (some are 3- or 5-year ranges like "2021-2023"), as text (it can be "<2.5"), plus unit and scale (multiplicador) — null when the source has none. Available regions: americas, europa, africa, asia, oceania Country codes: Use ISO-ALPHA-2 (e.g., BR, US, AR, PT, JP) Examples: - List all: tipo="listar" - Brazil details: tipo="detalhes", pais="BR" - Chosen indicators: tipo="detalhes", pais="AR", indicadores="idh|77852" - Search: tipo="buscar", busca="Argentina" - Americas countries: tipo="listar", regiao="americas" - Indicator catalog: tipo="indicadores" Behavior: read-only and idempotent — a live GET against the public IBGE Países API. Returns Markdown.

输入参数paistipobuscaregiaoindicadores

ibge_cidades

Panorama municipal (Cidades@)

Queries municipal indicators from IBGE (similar to Cidades@ portal). Features: - General overview of a municipality (population, HDI, GDP, etc.) - Query specific indicators - Historical indicator data over years - List available surveys and indicators Available indicators: populacao, area, densidade, pib_per_capita, idh, escolarizacao, mortalidade, salario_medio, receitas, despesas Examples: - São Paulo overview: tipo="panorama", municipio="3550308" - Population history: tipo="historico", municipio="3550308", indicador="populacao" - View surveys: tipo="pesquisas" - Available indicators: tipo="indicador" This tool is the panel for a SINGLE municipality (Cidades@). Use a different tool when: - Census themes / historical series → ibge_censo - Comparing multiple municipalities → ibge_comparar - A macro indicator time series → ibge_indicadores Behavior: read-only and idempotent — a live GET against the public IBGE APIs (Cidades@/agregados). Returns Markdown plus a typed structuredContent payload.

输入参数uftipopesquisaindicadormunicipio

fetch

Documento para Deep Research

Returns the full document for an id obtained from `search`, as { id, title, text, url, metadata }: `text` is the readable content (Markdown) and `url` the canonical public page to cite. Companion of `search` in the OpenAI Deep Research contract, over the IBGE (Brazilian official statistics: SIDRA tables, municipalities, known indicators) catalog. Only ids returned by `search` are valid; an unknown id returns an error. The `ibge_*` tools (`ibge_sidra`, `ibge_cidades`, `ibge_indicadores`, `ibge_comparar`…) remain the tools for data queries. Behavior: read-only and idempotent — a live GET against the public source when the document needs it.

输入参数id必填

版本历史

14
  1. v5.11.0最新Oct 29, 2026
  2. v5.10.0Oct 16, 2026
  3. v5.8.1Oct 9, 2026
  4. v5.7.0Oct 8, 2026
  5. v5.6.2Oct 8, 2026
  6. v5.6.1Oct 7, 2026
  7. v5.6.0Oct 6, 2026
  8. v5.5.1Oct 2, 2026
  9. v5.4.0Sep 27, 2026
  10. v5.3.0Sep 25, 2026
  11. v5.2.0Sep 22, 2026
  12. v5.1.2Sep 22, 2026
  13. v5.1.1Sep 17, 2026
  14. v5.0.1Sep 16, 2026

评分

已满足适用检查项的 100%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通必需25 分
  • 已声明认证方式必需10 分
  • 已列出工具必需15 分
  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分