ibge-br-mcp 4.3.0 → 5.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (73) hide show
  1. package/README.md +15 -4
  2. package/README.pt-BR.md +17 -6
  3. package/dist/cache.d.ts.map +1 -1
  4. package/dist/cache.js +4 -2
  5. package/dist/cache.js.map +1 -1
  6. package/dist/call-shape.d.ts +68 -0
  7. package/dist/call-shape.d.ts.map +1 -0
  8. package/dist/call-shape.js +138 -0
  9. package/dist/call-shape.js.map +1 -0
  10. package/dist/config.d.ts +2 -1
  11. package/dist/config.d.ts.map +1 -1
  12. package/dist/config.js +13 -1
  13. package/dist/config.js.map +1 -1
  14. package/dist/errors.d.ts +2 -0
  15. package/dist/errors.d.ts.map +1 -1
  16. package/dist/errors.js +13 -1
  17. package/dist/errors.js.map +1 -1
  18. package/dist/provenance.d.ts +5 -1
  19. package/dist/provenance.d.ts.map +1 -1
  20. package/dist/provenance.js +4 -0
  21. package/dist/provenance.js.map +1 -1
  22. package/dist/retry.d.ts +35 -0
  23. package/dist/retry.d.ts.map +1 -1
  24. package/dist/retry.js +69 -1
  25. package/dist/retry.js.map +1 -1
  26. package/dist/server.d.ts +33 -1
  27. package/dist/server.d.ts.map +1 -1
  28. package/dist/server.js +75 -52
  29. package/dist/server.js.map +1 -1
  30. package/dist/sidra-agregados.d.ts +93 -0
  31. package/dist/sidra-agregados.d.ts.map +1 -0
  32. package/dist/sidra-agregados.js +184 -0
  33. package/dist/sidra-agregados.js.map +1 -0
  34. package/dist/stats.d.ts.map +1 -1
  35. package/dist/stats.js +119 -5
  36. package/dist/stats.js.map +1 -1
  37. package/dist/structured.d.ts.map +1 -1
  38. package/dist/structured.js +2 -1
  39. package/dist/structured.js.map +1 -1
  40. package/dist/tools/censo.d.ts.map +1 -1
  41. package/dist/tools/censo.js +11 -8
  42. package/dist/tools/censo.js.map +1 -1
  43. package/dist/tools/comparar.d.ts.map +1 -1
  44. package/dist/tools/comparar.js +8 -9
  45. package/dist/tools/comparar.js.map +1 -1
  46. package/dist/tools/datasaude.d.ts.map +1 -1
  47. package/dist/tools/datasaude.js +11 -20
  48. package/dist/tools/datasaude.js.map +1 -1
  49. package/dist/tools/deep-research.d.ts.map +1 -1
  50. package/dist/tools/deep-research.js +4 -2
  51. package/dist/tools/deep-research.js.map +1 -1
  52. package/dist/tools/indicadores.d.ts.map +1 -1
  53. package/dist/tools/indicadores.js +11 -12
  54. package/dist/tools/indicadores.js.map +1 -1
  55. package/dist/tools/malhas-tema.d.ts +65 -20
  56. package/dist/tools/malhas-tema.d.ts.map +1 -1
  57. package/dist/tools/malhas-tema.js +275 -243
  58. package/dist/tools/malhas-tema.js.map +1 -1
  59. package/dist/tools/malhas.d.ts +33 -1
  60. package/dist/tools/malhas.d.ts.map +1 -1
  61. package/dist/tools/malhas.js +144 -55
  62. package/dist/tools/malhas.js.map +1 -1
  63. package/dist/tools/sidra.d.ts.map +1 -1
  64. package/dist/tools/sidra.js +108 -13
  65. package/dist/tools/sidra.js.map +1 -1
  66. package/dist/tools/vizinhos.d.ts.map +1 -1
  67. package/dist/tools/vizinhos.js +6 -7
  68. package/dist/tools/vizinhos.js.map +1 -1
  69. package/dist/types.d.ts +2 -1
  70. package/dist/types.d.ts.map +1 -1
  71. package/dist/types.js +1 -0
  72. package/dist/types.js.map +1 -1
  73. package/package.json +7 -6
package/README.md CHANGED
@@ -54,6 +54,8 @@ ranking all 5,570 municipalities in a single call.
54
54
 
55
55
  📖 **Article (in Portuguese):** [Como achar a tabela certa no SIDRA — e como saber que é a certa](docs/artigo-sidra-tabela-certa.pt-BR.md) — 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](https://sidneybissoli.com/en/blog/posts/sidra-tabela-certa/).
56
56
 
57
+ 🔌 **Tutorial:** [Querying SIDRA through MCP in Claude and ChatGPT](https://sidneybissoli.com/en/blog/posts/sidra-via-mcp/) — 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](https://sidneybissoli.com/blog/posts/sidra-via-mcp/).
58
+
57
59
  ## Data provenance
58
60
 
59
61
  Since v3.3.0 every successful tool response carries a **provenance block**
@@ -129,7 +131,7 @@ aggregates are computed server-side from the raw IBGE values.
129
131
  | Tool | Description |
130
132
  |:-----|:------------|
131
133
  | `ibge_malhas` | Geographic meshes (GeoJSON, TopoJSON, SVG) |
132
- | `ibge_malhas_tema` | Thematic meshes (biomes, Legal Amazon, semi-arid) |
134
+ | `ibge_malhas_tema` | What a thematic recorte contains (biomes, Legal Amazon, semi-arid, coastal, border strip, metro regions, RIDEs) + the URL to download its geometry |
133
135
 
134
136
  ### Health
135
137
  | Tool | Description |
@@ -190,7 +192,7 @@ Discover → inspect → query: `ibge_pesquisas` / `ibge_sidra_tabelas` (find a
190
192
  | You want… | Use |
191
193
  |:----------|:----|
192
194
  | Administrative outlines (Brazil/region/state/municipality) | `ibge_malhas` |
193
- | Thematic areas (biomes, Legal Amazon, semi-arid, metro regions) | `ibge_malhas_tema` |
195
+ | Thematic areas (biomes, Legal Amazon, semi-arid, metro regions) | `ibge_malhas_tema` (IBGE Geosserviços WFS — the Malhas API does not publish these) |
194
196
 
195
197
  ## Installation
196
198
 
@@ -221,6 +223,16 @@ npm run build
221
223
 
222
224
  ## Configuration
223
225
 
226
+ ### Remote endpoint (nothing to install)
227
+
228
+ The server is also hosted, with the same tools, over Streamable HTTP and without a key:
229
+
230
+ ```
231
+ https://ibge.sidneybissoli.com/mcp
232
+ ```
233
+
234
+ 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](https://sidneybissoli.com/en/blog/posts/sidra-via-mcp/). The sections below cover the local form, via `npx`.
235
+
224
236
  ### Claude Desktop
225
237
 
226
238
  Add to your Claude Desktop configuration file (`claude_desktop_config.json`):
@@ -501,8 +513,7 @@ ibge_datasaude(indicador="listar")
501
513
 
502
514
  - **Localities**: `servicodados.ibge.gov.br/api/v1/localidades`
503
515
  - **Names**: `servicodados.ibge.gov.br/api/v2/censos/nomes`
504
- - **Aggregates/SIDRA**: `servicodados.ibge.gov.br/api/v3/agregados`
505
- - **SIDRA API**: `apisidra.ibge.gov.br/values`
516
+ - **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)
506
517
  - **Meshes**: `servicodados.ibge.gov.br/api/v3/malhas`
507
518
  - **News**: `servicodados.ibge.gov.br/api/v3/noticias`
508
519
  - **Population**: `servicodados.ibge.gov.br/api/v1/projecoes/populacao`
package/README.pt-BR.md CHANGED
@@ -51,6 +51,8 @@ entre elas ranquear os 5.570 municípios numa chamada só.
51
51
 
52
52
  📖 **Artigo:** [Como achar a tabela certa no SIDRA — e como saber que é a certa](docs/artigo-sidra-tabela-certa.pt-BR.md) — os três passos da busca, os metadados que decidem, um exemplo completo com dado de 2022 e as quatro armadilhas que mais custam caro. Também publicado no site: [sidneybissoli.com](https://sidneybissoli.com/blog/posts/sidra-tabela-certa/).
53
53
 
54
+ 🔌 **Tutorial:** [Consultando o SIDRA por MCP no Claude e no ChatGPT](https://sidneybissoli.com/blog/posts/sidra-via-mcp/) — como conectar este servidor no claude.ai, Claude Desktop, Claude Code, ChatGPT (modo desenvolvedor e Deep Research), Cursor, VS Code e Gemini CLI, e uma consulta real de ponta a ponta com o bloco de procedência que ele devolve. [In English](https://sidneybissoli.com/en/blog/posts/sidra-via-mcp/).
55
+
54
56
  ## Procedência dos dados
55
57
 
56
58
  Desde a v3.3.0 toda resposta bem-sucedida carrega um **bloco de procedência**
@@ -126,7 +128,7 @@ calculados no servidor a partir dos valores brutos do IBGE.
126
128
  | Ferramenta | Descrição |
127
129
  |:-----------|:----------|
128
130
  | `ibge_malhas` | Malhas geográficas (GeoJSON, TopoJSON, SVG) |
129
- | `ibge_malhas_tema` | Malhas temáticas (biomas, Amazônia Legal, semiárido) |
131
+ | `ibge_malhas_tema` | O que um recorte temático contém (biomas, Amazônia Legal, semiárido, zona costeira, faixa de fronteira, regiões metropolitanas, RIDEs) + a URL para baixar a geometria |
130
132
 
131
133
  ### Saúde
132
134
  | Ferramenta | Descrição |
@@ -187,7 +189,7 @@ Descobrir → inspecionar → consultar: `ibge_pesquisas` / `ibge_sidra_tabelas`
187
189
  | Você quer… | Use |
188
190
  |:-----------|:----|
189
191
  | Contornos administrativos (Brasil/região/UF/município) | `ibge_malhas` |
190
- | Áreas temáticas (biomas, Amazônia Legal, semiárido, regiões metropolitanas) | `ibge_malhas_tema` |
192
+ | Áreas temáticas (biomas, Amazônia Legal, semiárido, regiões metropolitanas) | `ibge_malhas_tema` (WFS do IBGE Geosserviços — a API de Malhas não publica esses recortes) |
191
193
 
192
194
  ## Instalação
193
195
 
@@ -218,6 +220,16 @@ npm run build
218
220
 
219
221
  ## Configuração
220
222
 
223
+ ### Endpoint remoto (sem instalar)
224
+
225
+ O servidor também está hospedado, com as mesmas ferramentas, em Streamable HTTP e sem chave:
226
+
227
+ ```
228
+ https://ibge.sidneybissoli.com/mcp
229
+ ```
230
+
231
+ Serve para qualquer cliente que aceite servidor MCP remoto — conector personalizado no claude.ai (Configurações → Conectores → Adicionar conector personalizado), `claude mcp add --transport http ibge https://ibge.sidneybissoli.com/mcp` no Claude Code, app no ChatGPT, `mcp.json` do Cursor e do VS Code. O passo a passo de cada cliente está no [tutorial](https://sidneybissoli.com/blog/posts/sidra-via-mcp/). As seções abaixo cobrem a forma local, via `npx`.
232
+
221
233
  ### Claude Desktop
222
234
 
223
235
  Adicione ao seu arquivo de configuração do Claude Desktop (`claude_desktop_config.json`):
@@ -227,7 +239,7 @@ Adicione ao seu arquivo de configuração do Claude Desktop (`claude_desktop_con
227
239
  "mcpServers": {
228
240
  "ibge-br-mcp": {
229
241
  "command": "npx",
230
- "args": ["ibge-br-mcp"]
242
+ "args": ["-y", "ibge-br-mcp"]
231
243
  }
232
244
  }
233
245
  }
@@ -253,7 +265,7 @@ Ou se instalado a partir do código-fonte:
253
265
  "mcpServers": {
254
266
  "ibge-br-mcp": {
255
267
  "command": "npx",
256
- "args": ["ibge-br-mcp"]
268
+ "args": ["-y", "ibge-br-mcp"]
257
269
  }
258
270
  }
259
271
  }
@@ -499,8 +511,7 @@ ibge_datasaude(indicador="listar")
499
511
 
500
512
  - **Localidades**: `servicodados.ibge.gov.br/api/v1/localidades`
501
513
  - **Nomes**: `servicodados.ibge.gov.br/api/v2/censos/nomes`
502
- - **Agregados/SIDRA**: `servicodados.ibge.gov.br/api/v3/agregados`
503
- - **API SIDRA**: `apisidra.ibge.gov.br/values`
514
+ - **Agregados/SIDRA**: `servicodados.ibge.gov.br/api/v3/agregados` (as tabelas do SIDRA são lidas aqui com `view=flat`; o `apisidra.ibge.gov.br` está atrás de um desafio do Cloudflare só para navegador desde 15/09/2026)
504
515
  - **Malhas**: `servicodados.ibge.gov.br/api/v3/malhas`
505
516
  - **Notícias**: `servicodados.ibge.gov.br/api/v3/noticias`
506
517
  - **População**: `servicodados.ibge.gov.br/api/v1/projecoes/populacao`
@@ -1 +1 @@
1
- {"version":3,"file":"cache.d.ts","sourceRoot":"","sources":["../src/cache.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAkB,KAAK,YAAY,EAAE,MAAM,YAAY,CAAC;AAO/D;;;;;GAKG;AACH,MAAM,WAAW,SAAS;IACxB,WAAW,EAAE,IAAI,CAAC;IAClB,eAAe,EAAE,OAAO,CAAC;CAC1B;AAED,cAAM,YAAY;IAChB,OAAO,CAAC,KAAK,CAA+C;IAC5D,OAAO,CAAC,SAAS,CAA6E;IAC9F,OAAO,CAAC,UAAU,CAAS;IAE3B,YAAY,iBAAiB,GAAE,MAAW,EAEzC;IAED;;OAEG;IACH,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,CAAC,GAAG,IAAI,CAU5B;IAED;;OAEG;IACH,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAMtD;IAED;;OAEG;IACH,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAExB;IAED;;OAEG;IACH,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAGxB;IAED;;OAEG;IACH,KAAK,IAAI,IAAI,CAGZ;IAED,mFAAmF;IACnF,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,IAAI,CAElD;IAED;;;;OAIG;IACH,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAM3B;IAED,0EAA0E;IAC1E,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAIlC;IAED;;OAEG;IACH,OAAO,IAAI,IAAI,CAOd;IAED;;OAEG;IACH,KAAK,IAAI;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,EAAE,CAAA;KAAE,CAMxC;CACF;AAGD,eAAO,MAAM,KAAK,cAAuB,CAAC;AAG1C,eAAO,MAAM,SAAS;aACpB,MAAM;aACN,MAAM,EAAE,EAAE;aACV,KAAK,EAAE,EAAE;aACT,QAAQ,EAAE,CAAC;CACH,CAAC;AAEX;;GAEG;AACH,wBAAgB,QAAQ,CACtB,IAAI,EAAE,MAAM,EACZ,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC,GAC7D,MAAM,CAUR;AAED;;GAEG;AACH,wBAAsB,WAAW,CAAC,CAAC,EACjC,GAAG,EAAE,MAAM,EACX,WAAW,EAAE,MAAM,EACnB,UAAU,CAAC,EAAE,MAAM,EACnB,YAAY,CAAC,EAAE,YAAY,GAC1B,OAAO,CAAC,CAAC,CAAC,CAsBZ;AAED;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAEnE"}
1
+ {"version":3,"file":"cache.d.ts","sourceRoot":"","sources":["../src/cache.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAiD,KAAK,YAAY,EAAE,MAAM,YAAY,CAAC;AAO9F;;;;;GAKG;AACH,MAAM,WAAW,SAAS;IACxB,WAAW,EAAE,IAAI,CAAC;IAClB,eAAe,EAAE,OAAO,CAAC;CAC1B;AAED,cAAM,YAAY;IAChB,OAAO,CAAC,KAAK,CAA+C;IAC5D,OAAO,CAAC,SAAS,CAA6E;IAC9F,OAAO,CAAC,UAAU,CAAS;IAE3B,YAAY,iBAAiB,GAAE,MAAW,EAEzC;IAED;;OAEG;IACH,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,CAAC,GAAG,IAAI,CAU5B;IAED;;OAEG;IACH,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAMtD;IAED;;OAEG;IACH,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAExB;IAED;;OAEG;IACH,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAGxB;IAED;;OAEG;IACH,KAAK,IAAI,IAAI,CAGZ;IAED,mFAAmF;IACnF,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,IAAI,CAElD;IAED;;;;OAIG;IACH,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAM3B;IAED,0EAA0E;IAC1E,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAIlC;IAED;;OAEG;IACH,OAAO,IAAI,IAAI,CAOd;IAED;;OAEG;IACH,KAAK,IAAI;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,EAAE,CAAA;KAAE,CAMxC;CACF;AAGD,eAAO,MAAM,KAAK,cAAuB,CAAC;AAG1C,eAAO,MAAM,SAAS;aACpB,MAAM;aACN,MAAM,EAAE,EAAE;aACV,KAAK,EAAE,EAAE;aACT,QAAQ,EAAE,CAAC;CACH,CAAC;AAEX;;GAEG;AACH,wBAAgB,QAAQ,CACtB,IAAI,EAAE,MAAM,EACZ,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC,GAC7D,MAAM,CAUR;AAED;;GAEG;AACH,wBAAsB,WAAW,CAAC,CAAC,EACjC,GAAG,EAAE,MAAM,EACX,WAAW,EAAE,MAAM,EACnB,UAAU,CAAC,EAAE,MAAM,EACnB,YAAY,CAAC,EAAE,YAAY,GAC1B,OAAO,CAAC,CAAC,CAAC,CAwBZ;AAED;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAEnE"}
package/dist/cache.js CHANGED
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Simple in-memory cache with TTL support for IBGE API requests
3
3
  */
4
- import { fetchWithRetry } from "./retry.js";
4
+ import { fetchWithRetry, motivoUpstream, UpstreamError } from "./retry.js";
5
5
  class RequestCache {
6
6
  cache = new Map();
7
7
  fetchMeta = new Map();
@@ -132,7 +132,9 @@ export async function cachedFetch(url, cacheKeyStr, ttlMinutes, retryOptions) {
132
132
  // Fetch from API with retry support
133
133
  const response = await fetchWithRetry(url, undefined, retryOptions);
134
134
  if (!response.ok) {
135
- throw new Error(`HTTP ${response.status}: ${response.statusText}`);
135
+ // O corpo vai junto: é nele que a fonte diz QUAL parâmetro recusou e por
136
+ // quê, e sem ele o chamador só pode tentar outra combinação às cegas.
137
+ throw new UpstreamError(response.status, response.statusText, await motivoUpstream(response));
136
138
  }
137
139
  const data = (await response.json());
138
140
  // Store in cache
package/dist/cache.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cache.js","sourceRoot":"","sources":["../src/cache.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cache.js","sourceRoot":"","sources":["../src/cache.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,68 @@
1
+ /**
2
+ * A FORMA da chamada, nunca o conteúdo dela.
3
+ *
4
+ * Por que existe. Em 10/09/2026 o painel do portfólio passou a medir erro por
5
+ * chamada e apontou cinco ferramentas quebradas, uma delas aqui:
6
+ * `ibge_sidra`, com 47 erros em 122 chamadas — a porta principal do servidor. Diagnosticar custou vinte
7
+ * minutos de chamadas manuais porque a telemetria dizia QUE falhou e não DIZIA
8
+ * por quê. No senado, onde o mesmo campo foi ligado primeiro, uma linha
9
+ * respondeu o que a sonda levou meia hora para achar. Atenção a um limite que
10
+ * vale aqui também: erro de validação de esquema NÃO chega a esta camada — o
11
+ * SDK o responde antes do handler, e a chamada não é contada nem como chamada
12
+ * nem como erro.
13
+ *
14
+ * Por que não gravar os argumentos. O dado que este servidor serve é público; a
15
+ * PERGUNTA não é: o registro já guarda país e organização de rede, e parte dos
16
+ * parâmetros é texto livre (`nome`, `busca`), onde cabe qualquer coisa que a
17
+ * pessoa digitou. E ligar isso mudaria o que o serviço coleta sem
18
+ * mudar o que a página pública diz que ele coleta.
19
+ *
20
+ * O meio-termo: NOMES de parâmetro (que são o esquema publicado, não dado de
21
+ * ninguém) e a CLASSE do erro (vocabulário fechado, derivado da nossa própria
22
+ * mensagem). Isso separa "chamou sem o parâmetro obrigatório" de "chamou certo
23
+ * com um valor que não existe" — que é a bifurcação do conserto.
24
+ */
25
+ /** Vocabulário FECHADO. Nada aqui carrega valor vindo do usuário. */
26
+ export type ErrorClass =
27
+ /** Regra de contrato checada no código (o esquema não a expressa): parâmetro que falta, combinação proibida. */
28
+ "contrato"
29
+ /** A fonte respondeu, e respondeu que não existe: 404, vazio, sem registros. */
30
+ | "nao_encontrado"
31
+ /** A fonte falhou ou demorou: 5xx, timeout, payload grande demais. */
32
+ | "fonte"
33
+ /** Falhou por outro motivo — se esta classe crescer, é sinal de que falta uma classe. */
34
+ | "outro";
35
+ /**
36
+ * Classifica pela mensagem de erro, que é NOSSA. A ordem importa: "não
37
+ * encontrado" e "vazio" são mais específicos que "erro da fonte", e um 404
38
+ * casaria com os dois.
39
+ *
40
+ * O vocabulário foi ampliado depois de passar o classificador por TODAS as
41
+ * mensagens de erro do bcb e do senado (a varredura virou a guarda em
42
+ * `call-shape.test.ts`): 13 de 18 aqui e 12 de 18 lá caíam em `outro`, ou
43
+ * seja, a telemetria não responderia nada nestes dois servidores. As famílias
44
+ * que faltavam eram "Informe X ou Y", "só existe para", "desconhecido",
45
+ * "recusada", "não retornou dados" e "não publica" — nenhuma exótica; a versão
46
+ * inicial foi escrita a partir das mensagens do senado que eu já tinha lido.
47
+ */
48
+ export declare function classifyError(message: string): ErrorClass;
49
+ /**
50
+ * Nomes dos parâmetros que a chamada trouxe, em ordem, separados por vírgula.
51
+ * Só os nomes de PRIMEIRO nível e só quando o argumento é objeto simples — o
52
+ * conteúdo nunca entra. Cortado em 200 caracteres porque blob do Analytics
53
+ * Engine tem teto de tamanho e um nome de parâmetro longo não vale a linha.
54
+ */
55
+ export declare function paramNames(args: unknown): string;
56
+ /**
57
+ * Texto de erro de um resultado de tool, para classificar. Vazio quando não há.
58
+ *
59
+ * Lê o CAMPO `error` do envelope, não o payload serializado inteiro. O envelope
60
+ * padrão é `{ error, retryable, hint }`, e o `hint` de erro não recuperável
61
+ * termina com "a fonte oficial pode estar indisponível" — texto de formulário,
62
+ * igual em todos. Classificando o payload inteiro, esse "indisponível"
63
+ * arrastava TODO erro não recuperável para a classe `fonte`. Visto na produção
64
+ * do senado em 10/09/2026: a mensagem "Não existe reunião com o código X",
65
+ * que é `nao_encontrado` por definição, foi gravada como `fonte`.
66
+ */
67
+ export declare function errorText(result: unknown): string;
68
+ //# sourceMappingURL=call-shape.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"call-shape.d.ts","sourceRoot":"","sources":["../src/call-shape.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,qEAAqE;AACrE,MAAM,MAAM,UAAU;AACpB,gHAAgH;AAC9G,UAAU;AACZ,gFAAgF;GAC9E,gBAAgB;AAClB,sEAAsE;GACpE,OAAO;AACT,yFAAyF;GACvF,OAAO,CAAC;AAEZ;;;;;;;;;;;;GAYG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,UAAU,CAmEzD;AAED;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,OAAO,GAAG,MAAM,CAOhD;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,SAAS,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,CAiBjD"}
@@ -0,0 +1,138 @@
1
+ /**
2
+ * A FORMA da chamada, nunca o conteúdo dela.
3
+ *
4
+ * Por que existe. Em 10/09/2026 o painel do portfólio passou a medir erro por
5
+ * chamada e apontou cinco ferramentas quebradas, uma delas aqui:
6
+ * `ibge_sidra`, com 47 erros em 122 chamadas — a porta principal do servidor. Diagnosticar custou vinte
7
+ * minutos de chamadas manuais porque a telemetria dizia QUE falhou e não DIZIA
8
+ * por quê. No senado, onde o mesmo campo foi ligado primeiro, uma linha
9
+ * respondeu o que a sonda levou meia hora para achar. Atenção a um limite que
10
+ * vale aqui também: erro de validação de esquema NÃO chega a esta camada — o
11
+ * SDK o responde antes do handler, e a chamada não é contada nem como chamada
12
+ * nem como erro.
13
+ *
14
+ * Por que não gravar os argumentos. O dado que este servidor serve é público; a
15
+ * PERGUNTA não é: o registro já guarda país e organização de rede, e parte dos
16
+ * parâmetros é texto livre (`nome`, `busca`), onde cabe qualquer coisa que a
17
+ * pessoa digitou. E ligar isso mudaria o que o serviço coleta sem
18
+ * mudar o que a página pública diz que ele coleta.
19
+ *
20
+ * O meio-termo: NOMES de parâmetro (que são o esquema publicado, não dado de
21
+ * ninguém) e a CLASSE do erro (vocabulário fechado, derivado da nossa própria
22
+ * mensagem). Isso separa "chamou sem o parâmetro obrigatório" de "chamou certo
23
+ * com um valor que não existe" — que é a bifurcação do conserto.
24
+ */
25
+ /**
26
+ * Classifica pela mensagem de erro, que é NOSSA. A ordem importa: "não
27
+ * encontrado" e "vazio" são mais específicos que "erro da fonte", e um 404
28
+ * casaria com os dois.
29
+ *
30
+ * O vocabulário foi ampliado depois de passar o classificador por TODAS as
31
+ * mensagens de erro do bcb e do senado (a varredura virou a guarda em
32
+ * `call-shape.test.ts`): 13 de 18 aqui e 12 de 18 lá caíam em `outro`, ou
33
+ * seja, a telemetria não responderia nada nestes dois servidores. As famílias
34
+ * que faltavam eram "Informe X ou Y", "só existe para", "desconhecido",
35
+ * "recusada", "não retornou dados" e "não publica" — nenhuma exótica; a versão
36
+ * inicial foi escrita a partir das mensagens do senado que eu já tinha lido.
37
+ */
38
+ export function classifyError(message) {
39
+ const m = message.toLowerCase();
40
+ // A fronteira de palavra vai só no INÍCIO. Os padrões são RADICAIS
41
+ // ("vazi", "obrigatóri", "indisponív") justamente porque a flexão muda o
42
+ // fim: `\bvazi\b` não casa "vazia", e foi assim que "Resposta upstream
43
+ // vazia" caiu em `fonte` na primeira versão — a palavra que casava era
44
+ // "upstream". Ordem também importa: "não encontrado" é mais específico que
45
+ // "erro da fonte", e a mensagem real do senado tem sinal das duas famílias.
46
+ // "desconhecido"/"unknown" só é sinal de contrato quando qualifica um VALOR
47
+ // que o chamador passou ("Índice de preços desconhecido: X. Aceitos: ...",
48
+ // "Unknown dimension(s) for dataflow X"). "Erro desconhecido ao consultar o
49
+ // calendário do IBGE" e "Unknown error" são o oposto — são justamente o caso
50
+ // sem classe — e a primeira versão desta ampliação os classificava como
51
+ // contrato.
52
+ const valorDesconhecido = /\b(desconhecid|unknown)/.test(m) && !/\b(erro desconhecid|unknown error)/.test(m);
53
+ if (valorDesconhecido ||
54
+ /\b(obrigatóri|obrigatori|exige|requer|required|inválid|invalid|validation error|não aceita|nao aceita|no máximo|no maximo|só existe|so existe|recusad)/.test(m) ||
55
+ // Inglês, das mensagens do ilo, do uis e do medical. `empty query` fica
56
+ // AQUI e não em nao_encontrado: consulta vazia é parâmetro que falta. Era o
57
+ // radical `empty` solto que a classificava errado — ele existia para "empty
58
+ // response", que é outra coisa, e agora está escrito por extenso lá.
59
+ // "narrow it/the query" e "maximum N per call" são instruções ao chamador:
60
+ // a resposta não veio porque a chamada precisa mudar, que é contrato.
61
+ /\b(empty query|not part of|too broad|too many|maximum|narrow (it|the|your)|has no codelist|has no enumerated)/.test(m)) {
62
+ return "contrato";
63
+ }
64
+ if (/\b(não encontrad|nao encontrad|não existe|nao existe|does ?n[o']t exist|not.?found|inexistent|vazi|empty response|empty result|returned empty|sem registros|não retornou dados|nao retornou dados|não publica|nao publica|404)/.test(m) ||
65
+ // "Nenhum evento encontrado", "nenhuma reunião", "nenhum registro": a forma
66
+ // varia com o substantivo de cada servidor, então case pelo padrão.
67
+ /\bnenhum[ao]?s?\b[\s\S]{0,40}\b(encontrad|resultado|registro|dado)/.test(m)) {
68
+ return "nao_encontrado";
69
+ }
70
+ // "Informe X ou Y" é a mensagem canônica de parâmetro que falta — dez delas
71
+ // no senado, com e sem qualificador na frente ("Para por=senador, informe
72
+ // 'codigoSenador'"). Fica DEPOIS de "não encontrado" de propósito: é o sinal
73
+ // mais fraco dos dois, e um "informe um código válido" fechando uma mensagem
74
+ // de não encontrado não pode sequestrar a classe. Hoje nenhuma mensagem dos
75
+ // quatro servidores casa com as duas famílias — a ordem existe para a
76
+ // mensagem que alguém escrever amanhã.
77
+ if (/\binforme\b/.test(m))
78
+ return "contrato";
79
+ // `\b5\d\d\b` e não `5\d\d`: sem a fronteira final, qualquer número com um 5
80
+ // seguido de dois dígitos casava — um código de reunião "591234" citado na
81
+ // mensagem virava "erro 5xx". A intenção sempre foi o status HTTP.
82
+ // A fonte falhou ou demorou. As quatro últimas vieram da fábrica de erros do
83
+ // ibge, onde caíam em `outro`: ela nomeia a falha de infraestrutura em vez de
84
+ // usar as palavras genéricas ("Tempo de resposta excedido", não "timeout";
85
+ // "Serviço em manutenção"; "Erro de conexão"). `erro interno do servidor` vai
86
+ // com o complemento, porque "erro interno" sozinho pode ser bug nosso.
87
+ if (/\b(timeout|tempo esgotado|tempo de resposta excedid|excedeu o tempo|indisponív|indisponiv|manutenç|manutenc|erro de conexão|erro de conexao|erro interno do servidor|internal server error|upstream|\b5\d\d\b|payload|too large|grande demais|limite de tamanho)/.test(m)) {
88
+ return "fonte";
89
+ }
90
+ return "outro";
91
+ }
92
+ /**
93
+ * Nomes dos parâmetros que a chamada trouxe, em ordem, separados por vírgula.
94
+ * Só os nomes de PRIMEIRO nível e só quando o argumento é objeto simples — o
95
+ * conteúdo nunca entra. Cortado em 200 caracteres porque blob do Analytics
96
+ * Engine tem teto de tamanho e um nome de parâmetro longo não vale a linha.
97
+ */
98
+ export function paramNames(args) {
99
+ const a = Array.isArray(args) ? args[0] : args;
100
+ if (!a || typeof a !== "object" || Array.isArray(a))
101
+ return "";
102
+ const nomes = Object.keys(a)
103
+ .filter((k) => a[k] !== undefined)
104
+ .sort();
105
+ return nomes.join(",").slice(0, 200);
106
+ }
107
+ /**
108
+ * Texto de erro de um resultado de tool, para classificar. Vazio quando não há.
109
+ *
110
+ * Lê o CAMPO `error` do envelope, não o payload serializado inteiro. O envelope
111
+ * padrão é `{ error, retryable, hint }`, e o `hint` de erro não recuperável
112
+ * termina com "a fonte oficial pode estar indisponível" — texto de formulário,
113
+ * igual em todos. Classificando o payload inteiro, esse "indisponível"
114
+ * arrastava TODO erro não recuperável para a classe `fonte`. Visto na produção
115
+ * do senado em 10/09/2026: a mensagem "Não existe reunião com o código X",
116
+ * que é `nao_encontrado` por definição, foi gravada como `fonte`.
117
+ */
118
+ export function errorText(result) {
119
+ if (!result || typeof result !== "object")
120
+ return "";
121
+ const r = result;
122
+ const estruturado = r.structuredContent?.error;
123
+ if (typeof estruturado === "string")
124
+ return estruturado;
125
+ const t = Array.isArray(r.content) ? r.content[0]?.text : undefined;
126
+ if (typeof t !== "string")
127
+ return "";
128
+ try {
129
+ const j = JSON.parse(t);
130
+ if (typeof j.error === "string")
131
+ return j.error;
132
+ }
133
+ catch {
134
+ // Não é o envelope JSON — vale o texto cru (é o caso de outros servidores).
135
+ }
136
+ return t;
137
+ }
138
+ //# sourceMappingURL=call-shape.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"call-shape.js","sourceRoot":"","sources":["../src/call-shape.ts"],"names":[],"mappings":"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"}
package/dist/config.d.ts CHANGED
@@ -16,6 +16,7 @@ export declare const API_ENDPOINTS: {
16
16
  readonly NOMES: "https://servicodados.ibge.gov.br/api/v2/censos/nomes";
17
17
  readonly AGREGADOS: "https://servicodados.ibge.gov.br/api/v3/agregados";
18
18
  readonly MALHAS: "https://servicodados.ibge.gov.br/api/v3/malhas";
19
+ readonly GEOSERVICOS: "https://geoservicos.ibge.gov.br/geoserver/ows";
19
20
  readonly NOTICIAS: "https://servicodados.ibge.gov.br/api/v3/noticias";
20
21
  readonly POPULACAO: "https://servicodados.ibge.gov.br/api/v1/projecoes/populacao";
21
22
  readonly CNAE: "https://servicodados.ibge.gov.br/api/v2/cnae";
@@ -23,7 +24,7 @@ export declare const API_ENDPOINTS: {
23
24
  readonly PAISES: "https://servicodados.ibge.gov.br/api/v1/paises";
24
25
  readonly PESQUISAS: "https://servicodados.ibge.gov.br/api/v1/pesquisas";
25
26
  };
26
- readonly SIDRA: "https://apisidra.ibge.gov.br/values";
27
+ readonly SIDRA: "https://servicodados.ibge.gov.br/api/v3/agregados";
27
28
  };
28
29
  /**
29
30
  * Brazilian states (UF) codes
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
package/dist/config.js CHANGED
@@ -29,6 +29,13 @@ export const API_ENDPOINTS = {
29
29
  NOMES: "https://servicodados.ibge.gov.br/api/v2/censos/nomes",
30
30
  AGREGADOS: "https://servicodados.ibge.gov.br/api/v3/agregados",
31
31
  MALHAS: "https://servicodados.ibge.gov.br/api/v3/malhas",
32
+ // Geosserviços (OGC WFS/WMS do IBGE Geociências). É OUTRO serviço, e não
33
+ // a API de malhas: os recortes TEMÁTICOS (biomas, Amazônia Legal,
34
+ // semiárido, zona costeira, faixa de fronteira, regiões metropolitanas,
35
+ // RIDEs) não existem na API de malhas — todo caminho temático dela
36
+ // responde 404 — e existem aqui, como camadas WFS. Conferido em
37
+ // 11/09/2026.
38
+ GEOSERVICOS: "https://geoservicos.ibge.gov.br/geoserver/ows",
32
39
  NOTICIAS: "https://servicodados.ibge.gov.br/api/v3/noticias",
33
40
  POPULACAO: "https://servicodados.ibge.gov.br/api/v1/projecoes/populacao",
34
41
  CNAE: "https://servicodados.ibge.gov.br/api/v2/cnae",
@@ -36,7 +43,12 @@ export const API_ENDPOINTS = {
36
43
  PAISES: "https://servicodados.ibge.gov.br/api/v1/paises",
37
44
  PESQUISAS: "https://servicodados.ibge.gov.br/api/v1/pesquisas",
38
45
  },
39
- SIDRA: "https://apisidra.ibge.gov.br/values",
46
+ // O SIDRA é lido pela API de Agregados v3 (o mesmo host de AGREGADOS)
47
+ // desde 16/09/2026: o `apisidra.ibge.gov.br` ficou atrás de um desafio do
48
+ // Cloudflare que nenhum cliente programático passa. Os caminhos na
49
+ // gramática do apisidra são traduzidos em src/sidra-agregados.ts; esta
50
+ // constante é o endpoint de proveniência da fonte "SIDRA".
51
+ SIDRA: "https://servicodados.ibge.gov.br/api/v3/agregados",
40
52
  };
41
53
  // ============================================================================
42
54
  // Geographic Codes
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
package/dist/errors.d.ts CHANGED
@@ -10,6 +10,8 @@ export interface IbgeError {
10
10
  message: string;
11
11
  tool: string;
12
12
  params?: Record<string, unknown>;
13
+ /** O que a FONTE respondeu, quando respondeu algo (ver `UpstreamError`). */
14
+ motivo?: string;
13
15
  suggestion?: string;
14
16
  relatedTools?: string[];
15
17
  }
@@ -1 +1 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA;;GAEG;AAKH,eAAO,MAAM,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,CAqBpF,CAAC;AAEF,MAAM,WAAW,SAAS;IACxB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;CACzB;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,SAAS,GAAG,MAAM,CAkCpD;AAED;;GAEG;AACH,wBAAgB,cAAc,CAC5B,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,MAAM,EACZ,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAChC,YAAY,CAAC,EAAE,MAAM,EAAE,GACtB,MAAM,CAiBR;AAED;;GAEG;AACH,eAAO,MAAM,gBAAgB;IAC3B,WAAW,SAAS,MAAM,QAAQ,MAAM,gBAAgB,MAAM,KAAG,MAAM;IAOvE,QAAQ,SAAS,MAAM,QAAQ,MAAM,eAAe,MAAM,KAAG,MAAM;IASnE,WAAW,SAAS,MAAM,eAAe,MAAM,KAAG,MAAM;IAOxD,WAAW,UAAU,MAAM,QAAQ,MAAM,KAAG,MAAM;IAQlD,aAAa,WAAW,MAAM,QAAQ,MAAM,iBAAiB,MAAM,KAAG,MAAM;IAS5E,gBAAgB,UAAU,MAAM,QAAQ,MAAM,gBAAgB,MAAM,KAAG,MAAM;CAU9E,CAAC;AAEF;;GAEG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,EAAE,GAAG,MAAM,CAQ7F;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAOjD"}
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA;;GAEG;AAKH,eAAO,MAAM,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,CAqBpF,CAAC;AAEF,MAAM,WAAW,SAAS;IACxB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjC,4EAA4E;IAC5E,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;CACzB;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,SAAS,GAAG,MAAM,CA4CpD;AAED;;GAEG;AACH,wBAAgB,cAAc,CAC5B,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,MAAM,EACZ,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAChC,YAAY,CAAC,EAAE,MAAM,EAAE,GACtB,MAAM,CAoBR;AAED;;GAEG;AACH,eAAO,MAAM,gBAAgB;IAC3B,WAAW,SAAS,MAAM,QAAQ,MAAM,gBAAgB,MAAM,KAAG,MAAM;IAOvE,QAAQ,SAAS,MAAM,QAAQ,MAAM,eAAe,MAAM,KAAG,MAAM;IASnE,WAAW,SAAS,MAAM,eAAe,MAAM,KAAG,MAAM;IAOxD,WAAW,UAAU,MAAM,QAAQ,MAAM,KAAG,MAAM;IAQlD,aAAa,WAAW,MAAM,QAAQ,MAAM,iBAAiB,MAAM,KAAG,MAAM;IAS5E,gBAAgB,UAAU,MAAM,QAAQ,MAAM,gBAAgB,MAAM,KAAG,MAAM;CAU9E,CAAC;AAEF;;GAEG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,EAAE,GAAG,MAAM,CAQ7F;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAOjD"}
package/dist/errors.js CHANGED
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Standardized error handling for IBGE MCP Server
3
3
  */
4
- import { TimeoutError } from "./retry.js";
4
+ import { TimeoutError, UpstreamError } from "./retry.js";
5
5
  // Common IBGE API error codes and their meanings
6
6
  export const IBGE_ERROR_CODES = {
7
7
  400: {
@@ -35,6 +35,15 @@ export function formatError(error) {
35
35
  output += `**Código HTTP:** ${error.code}\n`;
36
36
  }
37
37
  output += `**Mensagem:** ${errorInfo?.message || error.message}\n\n`;
38
+ // A frase da FONTE, quando existe, vem antes dos parâmetros e da sugestão
39
+ // genérica — é a única linha que diz QUAL parâmetro foi recusado e por quê.
40
+ // O texto do código HTTP ("Parâmetros inválidos") continua como manchete
41
+ // porque ele é o que se pode afirmar sem ler a fonte; o motivo é o que
42
+ // resolve. Antes de 11/09/2026 esta linha não existia e o corpo da resposta
43
+ // era descartado no `cachedFetch`.
44
+ if (error.motivo) {
45
+ output += `**Resposta da fonte:** ${error.motivo}\n\n`;
46
+ }
38
47
  if (error.params && Object.keys(error.params).length > 0) {
39
48
  output += `### Parâmetros utilizados\n\n`;
40
49
  for (const [key, value] of Object.entries(error.params)) {
@@ -72,6 +81,9 @@ export function parseHttpError(error, tool, params, relatedTools) {
72
81
  message: error.message,
73
82
  tool,
74
83
  params,
84
+ // Campo tipado e não recorte da `message`: o detalhe chega inteiro de quem
85
+ // o leu da resposta, sem depender de separador dentro de uma string.
86
+ motivo: error instanceof UpstreamError ? error.detalhe : undefined,
75
87
  relatedTools,
76
88
  });
77
89
  }
@@ -1 +1 @@
1
- {"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEzD,iDAAiD;AACjD,MAAM,CAAC,MAAM,gBAAgB,GAA4D;IACvF,GAAG,EAAE;QACH,OAAO,EAAE,sBAAsB;QAC/B,UAAU,EAAE,sDAAsD;KACnE;IACD,GAAG,EAAE;QACH,OAAO,EAAE,wBAAwB;QACjC,UAAU,EAAE,gDAAgD;KAC7D;IACD,GAAG,EAAE;QACH,OAAO,EAAE,+BAA+B;QACxC,UAAU,EAAE,oCAAoC;KACjD;IACD,GAAG,EAAE;QACH,OAAO,EAAE,2CAA2C;QACpD,UAAU,EAAE,oCAAoC;KACjD;IACD,GAAG,EAAE;QACH,OAAO,EAAE,4BAA4B;QACrC,UAAU,EAAE,6BAA6B;KAC1C;CACF,CAAC;AAaF;;GAEG;AACH,MAAM,UAAU,WAAW,CAAC,KAAgB;IAC1C,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,gBAAgB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAEnE,IAAI,MAAM,GAAG,YAAY,KAAK,CAAC,IAAI,MAAM,CAAC;IAE1C,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;QACf,MAAM,IAAI,oBAAoB,KAAK,CAAC,IAAI,IAAI,CAAC;IAC/C,CAAC;IAED,MAAM,IAAI,iBAAiB,SAAS,EAAE,OAAO,IAAI,KAAK,CAAC,OAAO,MAAM,CAAC;IAErE,0EAA0E;IAC1E,4EAA4E;IAC5E,yEAAyE;IACzE,uEAAuE;IACvE,4EAA4E;IAC5E,mCAAmC;IACnC,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;QACjB,MAAM,IAAI,0BAA0B,KAAK,CAAC,MAAM,MAAM,CAAC;IACzD,CAAC;IAED,IAAI,KAAK,CAAC,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzD,MAAM,IAAI,+BAA+B,CAAC;QAC1C,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;YACxD,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBACxB,MAAM,IAAI,OAAO,GAAG,OAAO,KAAK,IAAI,CAAC;YACvC,CAAC;QACH,CAAC;QACD,MAAM,IAAI,IAAI,CAAC;IACjB,CAAC;IAED,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,IAAI,SAAS,EAAE,UAAU,CAAC;IAC7D,IAAI,UAAU,EAAE,CAAC;QACf,MAAM,IAAI,mBAAmB,UAAU,MAAM,CAAC;IAChD,CAAC;IAED,IAAI,KAAK,CAAC,YAAY,IAAI,KAAK,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxD,MAAM,IAAI,kCAAkC,CAAC;QAC7C,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,YAAY,EAAE,CAAC;YACtC,MAAM,IAAI,OAAO,IAAI,MAAM,CAAC;QAC9B,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc,CAC5B,KAAY,EACZ,IAAY,EACZ,MAAgC,EAChC,YAAuB;IAEvB,4DAA4D;IAC5D,IAAI,KAAK,YAAY,YAAY,EAAE,CAAC;QAClC,OAAO,YAAY,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;IAC3D,CAAC;IAED,kDAAkD;IAClD,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;IACpD,MAAM,IAAI,GAAG,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAE5D,OAAO,WAAW,CAAC;QACjB,IAAI;QACJ,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,IAAI;QACJ,MAAM;QACN,2EAA2E;QAC3E,qEAAqE;QACrE,MAAM,EAAE,KAAK,YAAY,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS;QAClE,YAAY;KACb,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,WAAW,EAAE,CAAC,IAAY,EAAE,IAAY,EAAE,YAAoB,EAAU,EAAE,CACxE,WAAW,CAAC;QACV,OAAO,EAAE,qBAAqB,IAAI,GAAG;QACrC,IAAI;QACJ,UAAU,EAAE,sBAAsB,YAAY,EAAE;KACjD,CAAC;IAEJ,QAAQ,EAAE,CAAC,IAAY,EAAE,IAAY,EAAE,UAAmB,EAAU,EAAE,CACpE,WAAW,CAAC;QACV,OAAO,EAAE,GAAG,IAAI,iBAAiB;QACjC,IAAI;QACJ,UAAU,EAAE,UAAU;YACpB,CAAC,CAAC,OAAO,UAAU,8BAA8B;YACjD,CAAC,CAAC,4CAA4C;KACjD,CAAC;IAEJ,WAAW,EAAE,CAAC,IAAY,EAAE,UAAmB,EAAU,EAAE,CACzD,WAAW,CAAC;QACV,OAAO,EAAE,wBAAwB;QACjC,IAAI;QACJ,UAAU,EAAE,UAAU,IAAI,uCAAuC;KAClE,CAAC;IAEJ,WAAW,EAAE,CAAC,KAAa,EAAE,IAAY,EAAU,EAAE,CACnD,WAAW,CAAC;QACV,OAAO,EAAE,mBAAmB,KAAK,GAAG;QACpC,IAAI;QACJ,UAAU,EAAE;0DACwC;KACrD,CAAC;IAEJ,aAAa,EAAE,CAAC,MAAc,EAAE,IAAY,EAAE,YAAqB,EAAU,EAAE,CAC7E,WAAW,CAAC;QACV,OAAO,EAAE,sBAAsB,MAAM,GAAG;QACxC,IAAI;QACJ,UAAU,EAAE,YAAY;YACtB,CAAC,CAAC,qBAAqB,YAAY,EAAE;YACrC,CAAC,CAAC,oEAAoE;KACzE,CAAC;IAEJ,gBAAgB,EAAE,CAAC,KAAa,EAAE,IAAY,EAAE,WAAoB,EAAU,EAAE,CAC9E,WAAW,CAAC;QACV,OAAO,EAAE,gCAAgC,KAAK,GAAG;QACjD,IAAI;QACJ,UAAU,EAAE,WAAW;YACrB,CAAC,CAAC,mBAAmB,WAAW;0EACkC;YAClE,CAAC,CAAC;0EACgE;KACrE,CAAC;CACL,CAAC;AAEF;;GAEG;AACH,MAAM,UAAU,YAAY,CAAC,IAAY,EAAE,SAAiB,EAAE,YAAuB;IACnF,OAAO,WAAW,CAAC;QACjB,OAAO,EAAE,4BAA4B;QACrC,IAAI;QACJ,UAAU,EAAE,gCAAgC,SAAS,GAAG,IAAI;gFACgB;QAC5E,YAAY;KACb,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,YAAY,CAAC,IAAY;IACvC,OAAO,WAAW,CAAC;QACjB,OAAO,EAAE,iBAAiB;QAC1B,IAAI;QACJ,UAAU,EAAE;wDACwC;KACrD,CAAC,CAAC;AACL,CAAC"}
@@ -59,7 +59,7 @@ export declare const FONTES_IBGE: {
59
59
  };
60
60
  readonly SIDRA: {
61
61
  readonly name: "IBGE — SIDRA (Banco de Tabelas Estatísticas)";
62
- readonly endpoint: "https://apisidra.ibge.gov.br/values";
62
+ readonly endpoint: "https://servicodados.ibge.gov.br/api/v3/agregados";
63
63
  };
64
64
  readonly AGREGADOS: {
65
65
  readonly name: "IBGE — API de Agregados (SIDRA)";
@@ -73,6 +73,10 @@ export declare const FONTES_IBGE: {
73
73
  readonly name: "IBGE — API de Malhas Geográficas";
74
74
  readonly endpoint: "https://servicodados.ibge.gov.br/api/v3/malhas";
75
75
  };
76
+ readonly GEOSERVICOS: {
77
+ readonly name: "IBGE — Geosserviços (WFS, IBGE Geociências)";
78
+ readonly endpoint: "https://geoservicos.ibge.gov.br/geoserver/ows";
79
+ };
76
80
  readonly NOTICIAS: {
77
81
  readonly name: "IBGE — API de Notícias";
78
82
  readonly endpoint: "https://servicodados.ibge.gov.br/api/v3/noticias";
@@ -1 +1 @@
1
- {"version":3,"file":"provenance.d.ts","sourceRoot":"","sources":["../src/provenance.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"provenance.d.ts","sourceRoot":"","sources":["../src/provenance.ts"],"names":[],"mappings":"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"}