{"name":"io.github.SidneyBissoli/ibge-br-mcp","slug":"sidneybissoli-ibge-br-mcp","title":"IBGE Brasil MCP","description":"IBGE: geography, census, economy and health from the official APIs, with provenance. 23 tools.","url":"https://mcp.market/server/sidneybissoli-ibge-br-mcp","rating":null,"grade":"A","score":91,"certified":false,"status":"active","category":"other","tags":[],"presence":{"score":48,"stars":11,"forks":4,"downloads_week":1063,"last_push_at":"2026-09-16T23:46:09.000Z","license":"MIT"},"uptime":null,"claimed":false,"transport":"mixed","callable_via_gateway":true,"default_price_micros":0,"repository":"https://github.com/SidneyBissoli/ibge-br-mcp","website":"https://ibge.sidneybissoli.com","version":"5.1.1","remotes":[{"type":"streamable-http","url":"https://ibge.sidneybissoli.com/mcp"}],"packages":[{"registryType":"npm","registryBaseUrl":"https://registry.npmjs.org","identifier":"ibge-br-mcp","version":"5.1.1","transport":{"type":"stdio"}}],"tools":[{"name":"fetch","description":"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.\n\nCompanion 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.\nThe `ibge_*` tools (`ibge_sidra`, `ibge_cidades`, `ibge_indicadores`, `ibge_comparar`…) remain the tools for data queries.\n\nBehavior: read-only and idempotent — a live GET against the public source when the document needs it.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"id":{"type":"string","description":"Identificador de um documento devolvido por `search`"}},"required":["id"],"$schema":"https://json-schema.org/draft/2020-12/schema"}},{"name":"ibge_calendario","description":"Queries IBGE release and collection calendar.\n\nFeatures:\n- List upcoming survey releases\n- Filter by product (IPCA, PNAD, GDP, etc.)\n- Filter by period\n- Distinguish releases from field collections\n\nEvent types:\n- **Release**: Publication of survey results\n- **Collection**: Field research period\n\nExamples:\n- Upcoming releases: (no parameters)\n- IPCA releases: produto=\"IPCA\"\n- 2024 calendar: de=\"01/01/2024\", ate=\"31/12/2024\"\n- Field collections: tipo=\"coleta\"\n\nUse a different tool when:\n- Already-published news and releases → ibge_noticias\n\nBehavior: read-only and idempotent — a live GET against the public IBGE Calendário API. Returns a Markdown list.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"de":{"description":"Data inicial no formato DD/MM/AAAA (ex: '01/01/2024')","type":"string"},"ate":{"description":"Data final no formato DD/MM/AAAA (ex: '31/12/2024')","type":"string"},"produto":{"description":"Filtrar por produto/pesquisa (ex: 'IPCA', 'PNAD', 'PIB')","type":"string"},"tipo":{"default":"divulgacao","description":"Tipo de evento: 'divulgacao' (publicações), 'coleta' (pesquisas de campo), ou 'todos'","type":"string","enum":["divulgacao","coleta","todos"]},"pagina":{"default":1,"description":"Número da página (padrão: 1)","type":"number"},"quantidade":{"default":20,"description":"Quantidade de resultados por página (padrão: 20)","type":"number"}},"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false}},{"name":"ibge_censo","description":"Queries IBGE Demographic Census data (1970-2022).\n\nSimplified tool to access census data without knowing SIDRA table codes.\n\nAvailable years: 1970, 1980, 1991, 2000, 2010, 2022\n\nAvailable themes:\n- populacao: Resident population\n- alfabetizacao: Literacy rate\n- domicilios: Housing characteristics\n- idade_sexo: Age pyramid\n- religiao: Religion distribution\n- cor_raca: Race/color\n- rendimento: Monthly income\n- educacao: Education level\n- trabalho: Employment\n\nExamples:\n- Population 2022: ano=\"2022\", tema=\"populacao\"\n- Historical series: ano=\"todos\", tema=\"populacao\"\n- Literacy 2010 by state: ano=\"2010\", tema=\"alfabetizacao\", nivel_territorial=\"3\"\n- List tables: tema=\"listar\"\n\nStatistics 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.\n\nUse a different tool when:\n- One municipality's current panel (estimate, HDI, GDP) → ibge_cidades\n- Comparing/ranking localities → ibge_comparar\n- An arbitrary SIDRA table → ibge_sidra\n\nBehavior: read-only and idempotent — a live GET against the public IBGE SIDRA API. Returns Markdown plus a typed structuredContent payload.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"ano":{"description":"Ano do censo (1970, 1980, 1991, 2000, 2010, 2022) ou 'todos' para série histórica","type":"string","enum":["1970","1980","1991","2000","2010","2022","todos"]},"tema":{"default":"populacao","description":"Tema dos dados:\n- populacao: População residente\n- alfabetizacao: Taxa de alfabetização\n- domicilios: Características dos domicílios\n- idade_sexo: Pirâmide etária\n- religiao: Distribuição por religião\n- cor_raca: Cor ou raça\n- rendimento: Rendimento mensal\n- migracao: Migração\n- educacao: Nível de instrução\n- trabalho: Ocupação e trabalho\n- indigenas: População indígena\n- quilombolas: População quilombola\n- saneamento: Abastecimento de água e esgoto\n- deficiencia: Pessoas com deficiência\n- nupcialidade: Estado civil\n- fecundidade: Taxa de fecundidade\n- listar: Lista tabelas disponíveis","type":"string","enum":["populacao","alfabetizacao","domicilios","idade_sexo","religiao","cor_raca","rendimento","migracao","educacao","trabalho","indigenas","quilombolas","saneamento","deficiencia","nupcialidade","fecundidade","listar"]},"nivel_territorial":{"default":"1","description":"Nível territorial (código N): 1=Brasil, 2=Região, 3=UF, 6=Município","type":"string"},"localidades":{"default":"all","description":"Códigos das localidades ou 'all'","type":"string"},"formato":{"default":"tabela","description":"Formato de saída","type":"string","enum":["tabela","json"]},"campos":{"description":"Selecionar apenas algumas colunas por rótulo, separadas por vírgula (ex: 'Valor,Ano'). Reduz o volume da resposta.","type":"string"},"estatisticas":{"default":false,"description":"Computa estatísticas (mínimo/máximo/média/mediana/desvio-padrão/percentis) sobre TODOS os registros da consulta, antes da paginação, + ranking top/bottom. Use para 'qual o maior/menor', 'média', 'mediana', 'distribuição', 'ranking'. Quando true, ignora pagina, campos e formato","type":"boolean"},"agruparPor":{"description":"Com estatisticas=true, agrupa pela coluna informada (rótulo, ex: 'Unidade da Federação', 'Ano') e ranqueia os grupos por soma decrescente (grupos[0] = maior total), cada grupo com sua mini-distribuição. Nome curto ('UF', 'estado', 'cidade', 'região') e rótulo parcial ('Federação') são resolvidos, e a resposta diz em `aviso` por qual coluna agrupou; rótulo que casa com duas colunas é recusado em vez de escolhido","type":"string"},"topN":{"default":10,"description":"Tamanho das listas top/bottom quando estatisticas=true sem agruparPor (padrão: 10, máx: 100)","type":"integer","minimum":1,"maximum":100}},"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false}},{"name":"ibge_cidades","description":"Queries municipal indicators from IBGE (similar to Cidades@ portal).\n\nFeatures:\n- General overview of a municipality (population, HDI, GDP, etc.)\n- Query specific indicators\n- Historical indicator data over years\n- List available surveys and indicators\n\nAvailable indicators: populacao, area, densidade, pib_per_capita, idh,\nescolarizacao, mortalidade, salario_medio, receitas, despesas\n\nExamples:\n- São Paulo overview: tipo=\"panorama\", municipio=\"3550308\"\n- Population history: tipo=\"historico\", municipio=\"3550308\", indicador=\"populacao\"\n- View surveys: tipo=\"pesquisas\"\n- Available indicators: tipo=\"indicador\"\n\nThis tool is the panel for a SINGLE municipality (Cidades@).\nUse a different tool when:\n- Census themes / historical series → ibge_censo\n- Comparing multiple municipalities → ibge_comparar\n- A macro indicator time series → ibge_indicadores\n\nBehavior: read-only and idempotent — a live GET against the public IBGE APIs (Cidades@/agregados). Returns Markdown plus a typed structuredContent payload.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"tipo":{"default":"panorama","description":"Tipo de consulta: panorama (resumo geral), indicador (específico), pesquisas (listar), historico","type":"string","enum":["panorama","indicador","pesquisas","historico"]},"municipio":{"description":"Código IBGE do município (7 dígitos)","type":"string"},"uf":{"description":"Código ou sigla da UF para filtrar (ex: 35 ou SP)","type":"string"},"indicador":{"description":"ID do indicador ou nome para busca","type":"string"},"pesquisa":{"description":"ID da pesquisa para filtrar indicadores","type":"string"}},"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false}},{"name":"ibge_cnae","description":"Queries CNAE (National Classification of Economic Activities) from IBGE.\n\nCNAE is the official classification for economic activities in Brazil.\n\nHierarchical structure:\n- Section (letter A-U): 21 main categories\n- Division (2 digits): 87 divisions\n- Group (3 digits): 285 groups\n- Class (4-5 digits): 673 classes\n- Subclass (7 digits): 1,332 subclasses\n\nFeatures:\n- Search by CNAE code\n- Search by activity description\n- List by hierarchical level\n- Show complete hierarchy\n\nExamples:\n- Search software: busca=\"software\"\n- Specific code: codigo=\"6201-5/01\"\n- View section: codigo=\"J\"\n- List divisions: nivel=\"divisoes\"\n\nBehavior: read-only and idempotent — a live GET against the public IBGE CNAE API. Returns Markdown.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"codigo":{"description":"Código CNAE para buscar (seção, divisão, grupo, classe ou subclasse).\nExemplos:\n- Seção: \"A\" (agricultura)\n- Divisão: \"01\" (agricultura e pecuária)\n- Grupo: \"01.1\" (produção de lavouras)\n- Classe: \"01.11\" (cultivo de cereais)\n- Subclasse: \"0111-3/01\" (cultivo de arroz)","type":"string"},"busca":{"description":"Termo para buscar na descrição das atividades (ex: 'software', 'restaurante', 'comércio')","type":"string"},"nivel":{"description":"Nível hierárquico para listar (padrão: mostra todos os níveis relevantes)","type":"string","enum":["secoes","divisoes","grupos","classes","subclasses"]},"limite":{"default":20,"description":"Número máximo de resultados (padrão: 20)","type":"number"}},"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false}},{"name":"ibge_comparar","description":"Compares data between localities (municipalities or states).\n\nAvailable indicators:\n- populacao: Current population estimate\n- populacao_censo: Census 2022 population\n- pib: GDP per capita\n- area: Territorial area (km²)\n- densidade: Population density (inhab/km²)\n- alfabetizacao: Literacy rate\n- domicilios: Number of households\n\nFeatures:\n- Compare up to 10 localities at once\n- Calculate statistics (max, min, average, variation)\n- Generate ranked output\n- Accept municipality codes (7 digits) or state codes (2 digits)\n\nExamples:\n- Compare capitals: localidades=\"3550308,3304557,4106902\", indicador=\"populacao\"\n- Compare states: localidades=\"35,33,41\", indicador=\"pib\"\n- Area ranking: localidades=\"3550308,3304557\", formato=\"ranking\"\n- List indicators: indicador=\"listar\"\n\nUse this tool ONLY to rank/compare 2–10 localities on one indicator.\nFor a single locality, use ibge_cidades (municipal panel), ibge_censo, or ibge_sidra.\n\nBehavior: read-only and idempotent — a live GET against the public IBGE APIs (SIDRA and Localidades). Returns Markdown plus a typed structuredContent payload.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"localidades":{"type":"string","description":"Códigos IBGE das localidades separados por vírgula (ex: \"3550308,3304557,4106902\").\nUse 7 dígitos para municípios, 2 dígitos para UFs."},"indicador":{"default":"populacao","description":"Indicador para comparação:\n- populacao: Estimativa populacional atual\n- populacao_censo: População do Censo 2022\n- pib: PIB a preços correntes (Mil Reais)\n- area: Área territorial (km²)\n- densidade: Densidade demográfica (hab/km²)\n- alfabetizacao: Taxa de alfabetização\n- domicilios: Número de domicílios\n- listar: Lista indicadores disponíveis","type":"string","enum":["populacao","populacao_censo","pib","area","densidade","alfabetizacao","domicilios","listar"]},"formato":{"default":"tabela","description":"Formato de saída: tabela, json ou ranking (ordenado)","type":"string","enum":["tabela","json","ranking"]}},"required":["localidades"],"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false}},{"name":"ibge_datasaude","description":"Queries Brazil health indicators, served through IBGE's SIDRA (some originally produced by DataSUS, e.g. mortality and births).\n\nMortality and Birth:\n- mortalidade_infantil: Infant mortality rate\n- nascidos_vivos: Live births by location\n- obitos: Deaths by residence\n\nDemographic Indicators:\n- esperanca_vida: Life expectancy at birth\n- fecundidade: Fertility rate\n\nSanitation:\n- saneamento_agua: Water supply\n- saneamento_esgoto: Sewage system\n\nHealth Coverage:\n- plano_saude: Health insurance coverage\n- autoavaliacao_saude: Self-rated health status\n\nTerritorial levels: 1=Brazil, 2=Region, 3=State, 6=Municipality\n\nExamples:\n- Infant mortality: indicador=\"mortalidade_infantil\"\n- Life expectancy by state: indicador=\"esperanca_vida\", nivel_territorial=\"3\"\n- Deaths in SP: indicador=\"obitos\", nivel_territorial=\"3\", localidade=\"35\"\n- List indicators: indicador=\"listar\"\n\nStatistics 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.\n\nUse a different tool when:\n- A single municipality's general panel (which also includes infant mortality) → ibge_cidades\n- Population/demographic counts (not health-specific) → ibge_censo or ibge_sidra\n\nBehavior: read-only and idempotent — a live GET against the public IBGE SIDRA API. Returns Markdown plus a typed structuredContent payload.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"indicador":{"type":"string","description":"Indicador de saúde. Disponíveis:\n- mortalidade_infantil: Taxa de mortalidade infantil\n- esperanca_vida: Esperança de vida ao nascer\n- nascidos_vivos: Nascidos vivos\n- obitos: Óbitos por local de residência\n- fecundidade: Taxa de fecundidade\n- saneamento_agua: Abastecimento de água\n- saneamento_esgoto: Esgotamento sanitário\n- plano_saude: Cobertura de plano de saúde\n- listar: Lista indicadores disponíveis"},"nivel_territorial":{"default":"1","description":"Nível territorial (código N): 1=Brasil, 2=Região, 3=UF, 6=Município","type":"string"},"localidade":{"default":"all","description":"Código da localidade ou 'all'","type":"string"},"periodo":{"default":"last","description":"Período: 'last', 'all', ou ano específico","type":"string"},"formato":{"default":"tabela","description":"Formato de saída","type":"string","enum":["tabela","json"]},"campos":{"description":"Selecionar apenas algumas colunas por rótulo, separadas por vírgula (ex: 'Valor,Ano'). Reduz o volume da resposta.","type":"string"},"estatisticas":{"default":false,"description":"Computa estatísticas (mínimo/máximo/média/mediana/desvio-padrão/percentis) sobre TODOS os registros da consulta, antes da paginação, + ranking top/bottom. Use para 'qual o maior/menor', 'média', 'mediana', 'distribuição', 'ranking'. Quando true, ignora pagina, campos e formato","type":"boolean"},"agruparPor":{"description":"Com estatisticas=true, agrupa pela coluna informada (rótulo, ex: 'Unidade da Federação', 'Ano') e ranqueia os grupos por soma decrescente (grupos[0] = maior total), cada grupo com sua mini-distribuição. Nome curto ('UF', 'estado', 'cidade', 'região') e rótulo parcial ('Federação') são resolvidos, e a resposta diz em `aviso` por qual coluna agrupou; rótulo que casa com duas colunas é recusado em vez de escolhido","type":"string"},"topN":{"default":10,"description":"Tamanho das listas top/bottom quando estatisticas=true sem agruparPor (padrão: 10, máx: 100)","type":"integer","minimum":1,"maximum":100}},"required":["indicador"],"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false}},{"name":"ibge_estados","description":"Lists all Brazilian states from IBGE.\n\nFeatures:\n- Lists all 27 states (26 states + Federal District)\n- Filter by region (North, Northeast, Southeast, South, Central-West)\n- Sort by ID, name, or abbreviation\n\nExamples:\n- List all states: (no parameters)\n- Northeast states: regiao=\"NE\"\n- Sorted by abbreviation: ordenar=\"sigla\"\n\nUse a different tool when:\n- Municipalities of a state → ibge_municipios\n- Details/hierarchy of one locality by code → ibge_localidade\n\nBehavior: read-only and idempotent — a live GET against the public IBGE Localidades API. Returns a Markdown table.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"regiao":{"description":"Filtrar por região: N (Norte), NE (Nordeste), SE (Sudeste), S (Sul), CO (Centro-Oeste)","type":"string","enum":["N","NE","SE","S","CO"]},"ordenar":{"default":"nome","description":"Campo para ordenação dos resultados","type":"string","enum":["id","nome","sigla"]}},"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false}},{"name":"ibge_geocodigo","description":"Decodes IBGE codes or searches codes by locality name.\n\nFeatures:\n- Decode region, state, municipality, or district codes\n- Search IBGE code by name\n- Show complete geographic hierarchy\n- Return related codes\n\nCode structure:\n- 1 digit: Region (1=North, 2=Northeast, 3=Southeast, 4=South, 5=Central-West)\n- 2 digits: State (11-53)\n- 7 digits: Municipality\n- 9 digits: District\n\nExamples:\n- Decode municipality: codigo=\"3550308\"\n- Decode state: codigo=\"35\"\n- Search by name: nome=\"São Paulo\"\n- Municipality in state: nome=\"Campinas\", uf=\"SP\"\n\nThis tool decodes a code's structure and resolves name→code at any level.\nUse a different tool when:\n- You only need to list/search municipalities → ibge_municipios\n- You want the full detailed record of one locality → ibge_localidade\n\nBehavior: read-only and idempotent — a live GET against the public IBGE Localidades API. Returns Markdown.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"codigo":{"description":"Código IBGE para decodificar.\nFormatos aceitos:\n- 1 dígito: Região (1-5)\n- 2 dígitos: UF (11-53)\n- 7 dígitos: Município\n- 9 dígitos: Distrito","type":"string"},"nome":{"description":"Nome da localidade para encontrar o código IBGE (estado ou município)","type":"string"},"uf":{"description":"Estado por sigla (SP), nome (São Paulo) ou código IBGE (35) para restringir a busca por nome de município","type":"string"}},"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false}},{"name":"ibge_indicadores","description":"Queries IBGE economic and social indicators.\n\nAvailable indicators:\n\n**Economic:**\n- pib: GDP at current prices\n- pib_variacao: GDP variation (%)\n- pib_per_capita: GDP per capita\n- industria: Industrial production\n- comercio: Retail sales\n- servicos: Services volume\n\n**Prices:**\n- ipca: Monthly IPCA\n- ipca_acumulado: 12-month IPCA\n- inpc: Monthly INPC\n\n**Labor:**\n- desemprego: Unemployment rate\n- ocupacao: Employed people\n- rendimento: Average income\n- informalidade: Informality rate\n\n**Population:**\n- populacao: Population estimate\n- densidade: Population density\n\nExamples:\n- GDP: indicador=\"pib\"\n- IPCA last 12 months: indicador=\"ipca\", periodos=\"last 12\"\n- Unemployment by state: indicador=\"desemprego\", nivel_territorial=\"3\"\n- List indicators: indicador=\"listar\"\n\nStatistics mode: for largest/smallest/mean/median/distribution/ranking questions (\"which state has the highest unemployment?\", \"median GDP per capita across states\") use estatisticas=true — full distribution + top/bottom over ALL rows before truncation; agruparPor=\"<column label>\" (e.g. \"Unidade da Federação\", \"Trimestre\") ranks groups by descending sum. In this mode campos/formato are ignored and registros comes empty.\n\nUse a different tool when:\n- Comparing/ranking localities → ibge_comparar\n- Census themes → ibge_censo\n- One municipality's panel → ibge_cidades\n\nBehavior: read-only and idempotent — a live GET against the public IBGE SIDRA API. Returns Markdown plus a typed structuredContent payload.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"indicador":{"description":"Nome do indicador (ex: \"pib\", \"ipca\", \"desemprego\", \"populacao\").\nUse \"listar\" para ver todos os indicadores disponíveis.","type":"string"},"categoria":{"description":"Filtrar por categoria de indicadores","type":"string","enum":["economico","precos","trabalho","populacao","agropecuaria","todos"]},"nivel_territorial":{"default":"1","description":"Nível territorial (código N): 1=Brasil, 2=Região, 3=UF","type":"string"},"localidades":{"default":"all","description":"Códigos das localidades ou 'all'","type":"string"},"periodos":{"default":"last","description":"Períodos (ex: '2023', 'last', 'last 4')","type":"string"},"formato":{"default":"tabela","description":"Formato de saída","type":"string","enum":["tabela","json"]},"campos":{"description":"Selecionar apenas algumas colunas por rótulo, separadas por vírgula (ex: 'Valor,Ano'). Reduz o volume da resposta.","type":"string"},"estatisticas":{"default":false,"description":"Computa estatísticas (mínimo/máximo/média/mediana/desvio-padrão/percentis) sobre TODOS os registros da consulta, antes da paginação, + ranking top/bottom. Use para 'qual o maior/menor', 'média', 'mediana', 'distribuição', 'ranking'. Quando true, ignora pagina, campos e formato","type":"boolean"},"agruparPor":{"description":"Com estatisticas=true, agrupa pela coluna informada (rótulo, ex: 'Unidade da Federação', 'Ano') e ranqueia os grupos por soma decrescente (grupos[0] = maior total), cada grupo com sua mini-distribuição. Nome curto ('UF', 'estado', 'cidade', 'região') e rótulo parcial ('Federação') são resolvidos, e a resposta diz em `aviso` por qual coluna agrupou; rótulo que casa com duas colunas é recusado em vez de escolhido","type":"string"},"topN":{"default":10,"description":"Tamanho das listas top/bottom quando estatisticas=true sem agruparPor (padrão: 10, máx: 100)","type":"integer","minimum":1,"maximum":100}},"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false}},{"name":"ibge_localidade","description":"Returns details of a specific locality by IBGE code.\n\nFeatures:\n- State information (2-digit code)\n- Municipality information (7-digit code)\n- District information (9-digit code)\n- Complete hierarchy (region, mesoregion, microregion)\n\nExamples:\n- São Paulo state: codigo=35\n- São Paulo city: codigo=3550308\n- District: codigo=355030805\n\nThis tool returns the full record of ONE locality you already have the code for.\nUse a different tool when:\n- You have a name and need the code → ibge_municipios (municipalities) or ibge_geocodigo (any level)\n- You want to decompose/understand a code's structure → ibge_geocodigo\n\nBehavior: read-only and idempotent — a live GET against the public IBGE Localidades API. Returns a Markdown record.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"codigo":{"type":"number","description":"Código IBGE da localidade (estado: 2 dígitos, município: 7 dígitos, distrito: 9 dígitos)"},"tipo":{"description":"Tipo da localidade. Se não informado, será inferido pelo tamanho do código.","type":"string","enum":["estado","municipio","distrito"]}},"required":["codigo"],"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false}},{"name":"ibge_malhas","description":"Gets geographic meshes (maps) from IBGE in GeoJSON, TopoJSON, or SVG format.\n\nFeatures:\n- Meshes for Brazil, regions, states, municipalities\n- Different resolution levels (internal divisions)\n- Different quality levels\n- Formats: GeoJSON (data), TopoJSON (compact), SVG (image)\n\nLocality types:\n- \"BR\" or \"1\" = Entire Brazil\n- State abbreviation (e.g., \"SP\", \"RJ\")\n- State code (e.g., \"35\" for SP)\n- Municipality code (7 digits)\n\nResolution (internal divisions):\n- 0 = Outline only\n- 2 = States\n- 5 = Municipalities\n\nExamples:\n- Brazil with states: localidade=\"BR\", resolucao=\"2\"\n- São Paulo with municipalities: localidade=\"SP\", resolucao=\"5\"\n- SVG format: localidade=\"BR\", formato=\"svg\"\n\nUse a different tool when:\n- Thematic meshes (biomes, Legal Amazon, semi-arid, metropolitan regions) → ibge_malhas_tema\n\nBehavior: read-only and idempotent — a live GET against the public IBGE Malhas API. Returns the mesh in the requested format (GeoJSON, TopoJSON, or SVG).","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"localidade":{"type":"string","description":"Código IBGE ou sigla da localidade (ex: 'BR', 'SP', '35', '3550308')"},"tipo":{"description":"Tipo de divisão territorial","type":"string","enum":["paises","regioes","estados","mesorregioes","microrregioes","municipios","regioes-imediatas","regioes-intermediarias"]},"formato":{"default":"geojson","description":"Formato de saída (padrão: geojson)","type":"string","enum":["geojson","topojson","svg"]},"resolucao":{"default":"0","description":"Divisões internas a desenhar dentro da malha pedida:\n0 = Sem divisões internas (só o contorno)\n1 = Macrorregiões (apenas quando localidade=BR)\n2 = Unidades da Federação (BR ou uma região)\n3 = Mesorregiões\n4 = Microrregiões\n5 = Municípios\nCada nível aceita só as divisões menores que ele: município aceita nenhuma, UF aceita 3, 4 e 5.","type":"string","enum":["0","1","2","3","4","5"]},"qualidade":{"default":"maxima","description":"Qualidade do traçado: 'minima', 'intermediaria' ou 'maxima' (padrão). Os números 1–4 do IBGE antigo continuam aceitos e são traduzidos.","type":"string","enum":["1","2","3","4","minima","intermediaria","maxima"]},"intrarregiao":{"description":"Divisão interna pelo nome, alternativa a resolucao: 'regiao', 'UF', 'regiao-intermediaria', 'regiao-imediata', 'mesorregiao', 'microrregiao' ou 'municipio'. Quando informado, prevalece sobre resolucao.","type":"string"}},"required":["localidade"],"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false}},{"name":"ibge_malhas_tema","description":"Lists what a THEMATIC territorial recorte of Brazil contains: how many features, with which codes and names, and the URL to download its geometry.\n\nAvailable recortes:\n- biomas: the six continental biomes\n- amazonia_legal: Legal Amazon boundary\n- semiarido: semi-arid area\n- costeiro: coastal municipalities\n- fronteira: border-strip municipalities\n- metropolitana: metropolitan regions\n- ride: Integrated Development Regions\n- listar: the catalogue itself, without querying the source\n\nFiltering 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.\n\nGEOMETRY 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.\n\nUse a different tool when:\n- Administrative meshes WITH geometry (country/region/state/municipality outlines) → ibge_malhas\n\nBehavior: 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.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"tema":{"type":"string","enum":["biomas","amazonia_legal","semiarido","costeiro","fronteira","metropolitana","ride","listar"],"description":"Recorte temático do território:\n- biomas: os seis biomas continentais\n- amazonia_legal: limite da Amazônia Legal\n- semiarido: área do semiárido\n- costeiro: municípios da zona costeira\n- fronteira: municípios da faixa de fronteira\n- metropolitana: regiões metropolitanas\n- ride: Regiões Integradas de Desenvolvimento\n- listar: lista os recortes disponíveis, sem consultar a fonte"},"codigo":{"description":"Filtra uma feição do recorte. Só os recortes que têm código próprio aceitam: biomas (cd_bioma, ex. \"1\") e os dois de municípios, costeiro e fronteira (código IBGE de 7 dígitos). Nos demais a chamada é recusada com a lista do que aceita.","type":"string"},"limite":{"default":50,"description":"Quantas feições trazer (padrão 50, máx. 600). O total do recorte vem sempre, mesmo quando o limite corta a lista.","type":"integer","minimum":1,"maximum":600}},"required":["tema"],"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false}},{"name":"ibge_municipios","description":"Lists Brazilian municipalities from IBGE.\n\nFeatures:\n- List municipalities by state (using state abbreviation)\n- List all municipalities in Brazil (5,570 municipalities)\n- Search by municipality name\n- Returns 7-digit IBGE code\n\nExamples:\n- São Paulo municipalities: uf=\"SP\"\n- Search by name: busca=\"Campinas\"\n- MG municipalities containing \"Belo\": uf=\"MG\", busca=\"Belo\"\n\nUse a different tool when:\n- Resolve/decode a code at any level (region, state, district), not just municipalities → ibge_geocodigo\n- Full details/hierarchy of one locality by code → ibge_localidade\n- Neighboring municipalities → ibge_vizinhos\n\nBehavior: read-only and idempotent — a live GET against the public IBGE Localidades API. Returns a Markdown table.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"uf":{"description":"Estado por sigla (SP), nome (São Paulo) ou código IBGE (35). Se não informado, retorna todos os municípios do Brasil.","type":"string"},"busca":{"description":"Termo para buscar no nome do município","type":"string"},"limite":{"default":100,"description":"Número máximo de resultados (padrão: 100, máximo: 5570)","type":"number","minimum":1,"maximum":5570}},"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false}},{"name":"ibge_nomes","description":"Queries name frequency and rankings in Brazil (IBGE).\n\nFeatures:\n1. **Name frequency** (tipo='frequencia'):\n   - Birth frequency by decade\n   - Multiple names separated by comma\n   - Filter by sex and locality\n\n2. **Name ranking** (tipo='ranking'):\n   - Most popular names\n   - Filter by decade, sex, and locality\n\nAvailable decades: 1930-2010\n\nExamples:\n- Frequency of \"Maria\": tipo=\"frequencia\", nomes=\"Maria\"\n- Compare names: tipo=\"frequencia\", nomes=\"João,José,Pedro\"\n- 2000s ranking: tipo=\"ranking\", decada=2000\n- Female names: tipo=\"ranking\", sexo=\"F\"\n\nBehavior: read-only and idempotent — a live GET against the public IBGE Nomes (Censo) API. Returns a Markdown table.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"tipo":{"type":"string","enum":["frequencia","ranking"],"description":"Tipo de consulta: 'frequencia' para buscar nomes específicos ou 'ranking' para ver os mais populares"},"nomes":{"description":"Para tipo='frequencia': Nome ou nomes separados por vírgula","type":"string"},"decada":{"description":"Para tipo='ranking': Década do ranking (ex: 1990, 2000, 2010)","type":"number"},"sexo":{"description":"Filtrar por sexo: M (masculino) ou F (feminino)","type":"string","enum":["M","F"]},"localidade":{"description":"Código IBGE da localidade (UF: 2 dígitos, Município: 7 dígitos)","type":"string"},"limite":{"default":20,"description":"Para tipo='ranking': Número de nomes (padrão: 20)","type":"number","minimum":1,"maximum":100}},"required":["tipo"],"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false}},{"name":"ibge_noticias","description":"Searches and lists already-published IBGE news articles and press releases.\n\nUse 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.\n\nParameters:\n- busca: free-text term to match (e.g. \"PIB\", \"censo\")\n- tipo: \"release\" (official publication of survey results) or \"noticia\" (general news); omit for both\n- de / ate: date range, format DD/MM/AAAA (e.g. de=\"01/01/2024\", ate=\"31/12/2024\")\n- destaque: true to return only featured items\n- quantidade: how many to return (default 10, max 100); pagina: page number to page through more\n\nEach 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.\n\nExamples:\n- Latest 10 news: (no parameters)\n- Search census: busca=\"censo\"\n- 2024 news: de=\"01/01/2024\", ate=\"31/12/2024\"\n- Releases only: tipo=\"release\"\n\nUse a different tool when:\n- Scheduled/upcoming release dates (not yet published) → ibge_calendario\n\nBehavior: read-only and idempotent — a live GET against the public IBGE Notícias API. Returns a Markdown list.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"busca":{"description":"Termo para buscar nas notícias","type":"string"},"quantidade":{"default":10,"description":"Quantidade de notícias a retornar (padrão: 10, máximo: 100)","type":"number","minimum":1,"maximum":100},"pagina":{"default":1,"description":"Número da página para paginação","type":"number","minimum":1},"de":{"description":"Data inicial no formato DD/MM/AAAA (ex: 01/01/2024)","type":"string"},"ate":{"description":"Data final no formato DD/MM/AAAA (ex: 31/12/2024)","type":"string"},"tipo":{"description":"Tipo de publicação: 'release' ou 'noticia'","type":"string","enum":["release","noticia"]},"destaque":{"description":"Filtrar apenas notícias em destaque","type":"boolean"}},"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false}},{"name":"ibge_paises","description":"Queries international country data via IBGE.\n\nFeatures:\n- List all countries (following UN M49 methodology)\n- Country details (area, languages, currency, location)\n- Search countries by name\n- Filter by region/continent\n\nAvailable regions: americas, europa, africa, asia, oceania\n\nCountry codes: Use ISO-ALPHA-2 (e.g., BR, US, AR, PT, JP)\n\nExamples:\n- List all: tipo=\"listar\"\n- Brazil details: tipo=\"detalhes\", pais=\"BR\"\n- Search: tipo=\"buscar\", busca=\"Argentina\"\n- Americas countries: tipo=\"listar\", regiao=\"americas\"\n- Available indicators: tipo=\"indicadores\"\n\nBehavior: read-only and idempotent — a live GET against the public IBGE Países API. Returns Markdown.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"tipo":{"default":"listar","description":"Tipo de consulta: listar (todos), detalhes (de um país), indicadores, buscar","type":"string","enum":["listar","detalhes","indicadores","buscar"]},"pais":{"description":"Código ISO-ALPHA-2 do país (ex: BR, US, AR) ou código M49","type":"string"},"busca":{"description":"Termo de busca para filtrar países pelo nome","type":"string"},"indicadores":{"description":"IDs dos indicadores separados por | (ex: 77819|77820)","type":"string"},"regiao":{"description":"Filtrar por região/continente: americas, europa, africa, asia, oceania","type":"string"}},"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false}},{"name":"ibge_pesquisas","description":"Lists available IBGE surveys and their tables.\n\nFeatures:\n- List all IBGE surveys (Census, PNAD, GDP, etc.)\n- Search by name or code\n- Show details and tables of a specific survey\n- Categorize surveys by theme\n\nMain surveys:\n- **Census**: Demographic, Agricultural, MUNIC\n- **PNAD Contínua**: Employment, income, education\n- **National Accounts**: GDP, investments\n- **Economic Surveys**: Industry, Commerce, Services\n- **Price Indices**: IPCA, INPC\n\nExamples:\n- List all: (no parameters)\n- Search population: busca=\"população\"\n- PNAD details: detalhes=\"pnad\"\n\nThis 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).\n\nBehavior: read-only and idempotent — a live GET against the public IBGE SIDRA/Pesquisas API. Returns a Markdown list.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"busca":{"description":"Termo para buscar no nome ou ID da pesquisa","type":"string"},"detalhes":{"description":"Código da pesquisa para ver detalhes e tabelas disponíveis","type":"string"}},"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false}},{"name":"ibge_sidra","description":"Queries SIDRA tables (IBGE's Automatic Recovery System).\n\nSIDRA contains data from IBGE surveys like Census, PNAD, GDP, etc.\n\nCommon tables:\n- 6579: Population estimates (annual)\n- 9514: Census 2022 population\n- 200: Census population (1970-2010)\n- 4714: Population, territorial area and density (Census 2022)\n- 4099: Unemployment rate (PNAD Contínua, quarterly)\n- 5436: Average real income (PNAD Contínua, quarterly)\n- 6706: GDP at current prices\n- 5938: GDP per capita\n\nTerritorial levels:\n- 1: Brazil\n- 2: Region (North, Northeast, etc.)\n- 3: State (UF)\n- 6: Municipality\n- 7: Metropolitan Region\n\nExamples:\n- Brazil population 2023: tabela=\"6579\", periodos=\"2023\"\n- Population by state: tabela=\"6579\", nivel_territorial=\"3\"\n- Census 2022 by municipality: tabela=\"9514\", nivel_territorial=\"6\", localidades=\"3550308\"\n\nStatistics 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 what would otherwise require paging thousands of records. With agruparPor=\"<column label>\" (e.g. \"Unidade da Federação\", \"Ano\") it ranks groups by descending sum, each with its own mini-distribution. Queries mixing several variables auto-group by \"Variável\" (units differ). SIDRA absence markers (\"-\", \"..\", \"...\", \"X\") are excluded from n. In this mode pagina/campos/formato are ignored and registros comes empty. Very large queries are refused by the source (since 2026-09-16 SIDRA tables are read through the Aggregates API, whose ceiling is lower than SIDRA's old 100,000-value cap: all municipalities × 12 yearly periods fails, × 8 works) — narrow periodos (e.g. \"last 4\") or raise nivel_territorial.\n\nibge_sidra is the low-level engine. Prefer a friendlier wrapper when it fits:\n- Census themes (1970–2022) → ibge_censo\n- Economic/social time series → ibge_indicadores\n- Rank/compare 2–10 localities → ibge_comparar\n- One municipality's panel → ibge_cidades\nUse ibge_sidra_tabelas and ibge_sidra_metadados to find a table code and its structure before querying.\n\nBehavior: read-only and idempotent — a live GET against the public IBGE SIDRA API. Returns Markdown plus a typed structuredContent payload.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"tabela":{"type":"string","description":"Código da tabela SIDRA (ex: 6579 para estimativas de população, 9514 para censo 2022)"},"variaveis":{"default":"allxp","description":"IDs das variáveis separados por vírgula, ou 'allxp' para todas","type":"string"},"nivel_territorial":{"default":"1","description":"Nível territorial (código N): 1=Brasil, 2=Região, 3=UF, 6=Município, 7=Região Metropolitana, 8=Mesorregião, 9=Microrregião, 10=Distrito, 11=Subdistrito, 13=RM/RIDE, 14=RIDE, 15=Aglomeração Urbana, 17=Região Geográfica Imediata, 18=Região Geográfica Intermediária, 105=Macrorregião de Saúde, 106=Região de Saúde, 114=Aglomerado Subnormal, 127=Amazônia Legal, 128=Semiárido","type":"string"},"localidades":{"default":"all","description":"Códigos das localidades separados por vírgula, ou 'all' para todas","type":"string"},"periodos":{"default":"last","description":"Períodos: 'last' para último, 'all' para todos, ou anos específicos (ex: 2020,2021,2022)","type":"string"},"classificacoes":{"description":"Classificações no formato 'id[categorias]' (ex: '2[6794]' para sexo masculino)","type":"string"},"formato":{"default":"tabela","description":"Formato de saída: 'json' para dados brutos ou 'tabela' para formato legível","type":"string","enum":["json","tabela"]},"pagina":{"default":1,"description":"Página de resultados (100 registros por página)","type":"integer","minimum":1,"maximum":9007199254740991},"campos":{"description":"Selecionar apenas algumas colunas por rótulo, separadas por vírgula (ex: 'Valor,Ano'). Reduz o volume da resposta. Omitir traz todas.","type":"string"},"estatisticas":{"default":false,"description":"Computa estatísticas (mínimo/máximo/média/mediana/desvio-padrão/percentis) sobre TODOS os registros da consulta, antes da paginação, + ranking top/bottom. Use para 'qual o maior/menor', 'média', 'mediana', 'distribuição', 'ranking'. Quando true, ignora pagina, campos e formato","type":"boolean"},"agruparPor":{"description":"Com estatisticas=true, agrupa pela coluna informada (rótulo, ex: 'Unidade da Federação', 'Ano') e ranqueia os grupos por soma decrescente (grupos[0] = maior total), cada grupo com sua mini-distribuição. Nome curto ('UF', 'estado', 'cidade', 'região') e rótulo parcial ('Federação') são resolvidos, e a resposta diz em `aviso` por qual coluna agrupou; rótulo que casa com duas colunas é recusado em vez de escolhido","type":"string"},"topN":{"default":10,"description":"Tamanho das listas top/bottom quando estatisticas=true sem agruparPor (padrão: 10, máx: 100)","type":"integer","minimum":1,"maximum":100}},"required":["tabela"],"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false}},{"name":"ibge_sidra_metadados","description":"Returns metadata for a specific SIDRA table.\n\nFeatures:\n- General info (name, survey, subject, periodicity)\n- Available territorial levels\n- Variable list with units\n- Classifications and categories\n- Available periods\n\nUse this tool to understand table structure BEFORE querying data with ibge_sidra.\n\nExamples:\n- Population table metadata: tabela=\"6579\"\n- Census 2022 metadata: tabela=\"9514\"\n- PNAD unemployment: tabela=\"4714\"\n\nUse this after finding a table code (ibge_sidra_tabelas) and before querying with ibge_sidra.\n\nBehavior: read-only and idempotent — a live GET against the public IBGE SIDRA API. Returns Markdown.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"tabela":{"type":"string","description":"Código da tabela/agregado SIDRA (ex: '6579', '9514', '4714')"},"incluir_periodos":{"default":true,"description":"Incluir lista de períodos disponíveis (padrão: true)","type":"boolean"},"incluir_localidades":{"default":false,"description":"Incluir níveis territoriais disponíveis (padrão: false)","type":"boolean"}},"required":["tabela"],"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false}},{"name":"ibge_sidra_tabelas","description":"Lists and searches available SIDRA tables.\n\nFeatures:\n- List all SIDRA tables (aggregates)\n- 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\n- Filter by survey (Census, PNAD, GDP, etc.)\n- Shows code and name of each table\n\nSIDRA contains data from various surveys:\n- Demographic Census\n- PNAD Contínua (employment, income)\n- National Accounts (GDP)\n- Industrial Survey\n- Agricultural Survey\n\nExamples:\n- List tables: (no parameters)\n- Search population tables: busca=\"população\"\n- Census tables: pesquisa=\"censo\"\n\nThis is step 1 of the SIDRA workflow: find a table code → ibge_sidra_metadados (structure) → ibge_sidra (query).\nFor common data, a wrapper is usually easier: ibge_censo, ibge_indicadores, ibge_comparar, ibge_cidades.\n\nBehavior: read-only and idempotent — a live GET against the public IBGE SIDRA API. Returns a Markdown table.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"busca":{"description":"Termos para buscar no nome das tabelas/agregados (sem distinção de acento ou caixa; AND entre as palavras; a palavra de todo dia é traduzida para a do IBGE — renda→rendimento, desemprego→desocupação, cidade→município)","type":"string"},"pesquisa":{"description":"Filtrar por código ou nome da pesquisa (ex: 'censo', 'pnad', 'pib')","type":"string"},"limite":{"default":20,"description":"Número máximo de resultados (padrão: 20)","type":"number","minimum":1,"maximum":100}},"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false}},{"name":"ibge_vizinhos","description":"Finds nearby/neighboring municipalities.\n\nFeatures:\n- Search by IBGE code (7 digits) or municipality name\n- Returns municipalities in the same mesoregion (proximity approximation)\n- Optionally includes population data\n\nNote: Uses mesoregion as geographic proximity proxy.\nFor exact spatial neighborhood, mesh processing would be required.\n\nExamples:\n- By code: municipio=\"3550308\"\n- By name: municipio=\"Campinas\", uf=\"SP\"\n- With population: municipio=\"3550308\", incluir_dados=true\n\nNote: proximity is approximated by shared mesoregion (not exact spatial adjacency).\nFor listing/searching municipalities, use ibge_municipios.\n\nBehavior: read-only and idempotent — a live GET against the public IBGE Localidades API. Returns a Markdown list.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"municipio":{"type":"string","description":"Código IBGE do município (7 dígitos) ou nome do município"},"uf":{"description":"Estado por sigla (SP), nome (São Paulo) ou código IBGE (35) — obrigatório se usar nome do município","type":"string"},"raio":{"description":"Raio em km para buscar municípios próximos (usa centróides)","type":"number"},"incluir_dados":{"default":false,"description":"Incluir dados populacionais dos vizinhos","type":"boolean"}},"required":["municipio"],"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false}},{"name":"search","description":"Searches the IBGE (Brazilian official statistics: SIDRA tables, municipalities, known indicators) catalog and returns up to 10 matching documents as { id, title, url }, ordered by relevance (an empty list means nothing matched).\n\nThis tool exists for the OpenAI Deep Research contract: ChatGPT deep research, company knowledge and research workflows over the Responses API require exactly the tools `search` and `fetch`. Pass one of the returned ids to `fetch` to read the document.\nFor direct questions and for data (values, series, rankings) prefer the `ibge_*` tools (`ibge_sidra`, `ibge_cidades`, `ibge_indicadores`, `ibge_comparar`…), which return the actual data with provenance — this is a catalog index, not a data query.\n\nQuery: natural language or keywords, Portuguese or English; accents and case are ignored.\n\nBehavior: read-only and idempotent — the catalog comes from the public source and is cached in memory.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"query":{"type":"string","description":"Termos de busca em linguagem natural ou palavras-chave (acentos e caixa são ignorados)"}},"required":["query"],"$schema":"https://json-schema.org/draft/2020-12/schema"}}],"scan":{"score":91,"grade":"A","scanned_at":"2026-09-19T09:55:45.373Z","report":{"scannerVersion":"0.1.3","scannedAt":"2026-09-19T09:55:45.328Z","components":{"code":{"score":25,"max":25,"notes":["89 source files scanned"]},"reliability":{"score":20,"max":20,"notes":["remote reachable in 1200ms"]},"poisoning":{"score":13,"max":15,"notes":["23 tool descriptions checked"]},"auth":{"score":10,"max":15,"notes":["open endpoint, read-only tools"]},"maintenance":{"score":15,"max":15,"notes":["last push 2 days ago"]},"identity":{"score":8,"max":10,"notes":["registry namespace matches repository owner","GitHub account older than a year"]}},"findings":[{"id":"poison.long-description","severity":"low","component":"poisoning","title":"Unusually long tool description (over 2,000 characters)","evidence":"tool ibge_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) - 6706: GDP at current prices - 5938: GDP per capita 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\" 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 what would otherwise require paging thousands of records. With agruparPor=\"<column label>\" (e.g. \"Unidade da Federação\", \"Ano\") it ranks groups by descending sum, each with its own mini-distribution. Queries mixing several variables auto-group by \"Variável\" (units differ). SIDRA absence markers (\"-\", \"..\", \"...\", \"X\") are excluded from n. In this mode pagina/campos/formato are ignored and registros comes empty. Very large queries are refused by the source (since 2026-09-16 SIDRA tables are read through the Aggregates API, whose ceiling is lower than SIDRA's old 100,000-value cap: all municipalities × 12 yearly periods fails, × 8 works) — narrow periodos (e.g. \"last 4\") or raise nivel_territorial. ibge_sidra is the low-level engine. Prefer a friendlier wrapper when it fits: - Census themes (1970–2022) → ibge_censo - Economic/social time series → ibge_indicadores - Rank/compare 2–10 localities → ibge_comparar - One municipality's panel → ibge_cidades Use ibge_sidra_tabelas and ibge_sidra_metadados to find a table code and its structure before querying. Behavior: read-only and idempotent — a live GET against the public IBGE SIDRA API. Returns Markdown plus a typed structuredContent payload.…"}],"inputs":{"probes":[{"url":"https://ibge.sidneybissoli.com/mcp","reachable":true,"authRequired":false,"latencyMs":1200,"serverInfo":{"name":"ibge-br-mcp","version":"5.1.1"}}],"packages":[{"registryType":"npm","identifier":"ibge-br-mcp","version":"5.1.1","found":true,"license":"MIT","hasInstallScripts":false,"dependencyCount":5,"publishedAt":"2026-09-16T23:47:03.233Z","repositoryUrl":"git+https://github.com/SidneyBissoli/ibge-br-mcp.git","weeklyDownloads":1063}],"repo":{"found":true,"owner":"SidneyBissoli","repo":"ibge-br-mcp","archived":false,"pushedAt":"2026-09-16T23:46:09Z","stars":11,"forks":4,"openIssues":0,"ownerType":"User","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/66520599?v=4","ownerCreatedAt":"2020-06-06T13:10:18Z","license":"MIT"},"icon":{"url":"https://ibge.sidneybissoli.com/icon.png","source":"registry","width":512,"height":512},"presence":{"stars":11,"forks":4,"downloadsWeek":1063,"license":"MIT","lastPushAt":"2026-09-16T23:46:09.000Z","score":48}}}},"grade_history":[],"reviews":[]}