ab-ibge-mcp-server 1.0.0 → 2.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.
- package/README.md +72 -12
- package/dist/index.js +3 -1
- package/dist/index.js.map +1 -1
- package/dist/services/cache.d.ts +18 -0
- package/dist/services/cache.d.ts.map +1 -0
- package/dist/services/cache.js +41 -0
- package/dist/services/cache.js.map +1 -0
- package/dist/services/ibge-client.d.ts +1 -1
- package/dist/services/ibge-client.d.ts.map +1 -1
- package/dist/services/ibge-client.js +64 -20
- package/dist/services/ibge-client.js.map +1 -1
- package/dist/tools/censo.d.ts.map +1 -1
- package/dist/tools/censo.js +75 -3
- package/dist/tools/censo.js.map +1 -1
- package/dist/tools/indicadores.js +2 -2
- package/dist/tools/indicadores.js.map +1 -1
- package/dist/tools/localidades.d.ts.map +1 -1
- package/dist/tools/localidades.js +12 -4
- package/dist/tools/localidades.js.map +1 -1
- package/dist/tools/nomes.d.ts +3 -0
- package/dist/tools/nomes.d.ts.map +1 -0
- package/dist/tools/nomes.js +144 -0
- package/dist/tools/nomes.js.map +1 -0
- package/dist/tools/sidra.d.ts.map +1 -1
- package/dist/tools/sidra.js +89 -7
- package/dist/tools/sidra.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -2,24 +2,36 @@
|
|
|
2
2
|
|
|
3
3
|
Servidor MCP (Model Context Protocol) para as **APIs públicas do IBGE**, permitindo que agentes de IA como Claude acessem dados estatísticos, geográficos e econômicos do Brasil em tempo real.
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
**✨ Versão 2.0.1** — Agora com cache inteligente, API de Nomes e suporte multi-variável!
|
|
6
|
+
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
**Sponsored by [Aeon Bridge Co.](https://aeonbridge.com)** 🌉
|
|
10
|
+
Building the future of AI-powered data integration.
|
|
11
|
+
Contact: [contact@aeonbridge.com](mailto:contact@aeonbridge.com)
|
|
12
|
+
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
## ✨ Ferramentas Disponíveis (27+ tools)
|
|
6
16
|
|
|
7
17
|
### 📍 Localidades
|
|
8
18
|
| Tool | Descrição |
|
|
9
19
|
|------|-----------|
|
|
10
20
|
| `ibge_listar_regioes` | Lista as 5 regiões geográficas com seus estados |
|
|
11
21
|
| `ibge_listar_estados` | Lista todos os 27 estados com sigla, ID e região |
|
|
12
|
-
| `ibge_listar_municipios` | Lista municípios de um estado (
|
|
13
|
-
| `ibge_buscar_municipio` | Busca município por
|
|
22
|
+
| `ibge_listar_municipios` | Lista municípios de um estado (busca flexível sem acentos) |
|
|
23
|
+
| `ibge_buscar_municipio` | Busca município por nome em todo Brasil (suporta "Sao Paulo") |
|
|
14
24
|
|
|
15
25
|
### 📊 SIDRA (Sistema de Recuperação Automática)
|
|
16
26
|
| Tool | Descrição |
|
|
17
27
|
|------|-----------|
|
|
18
28
|
| `ibge_sidra_pesquisar_tabelas` | Pesquisa tabelas por assunto (ex: "PIB", "agricultura") |
|
|
19
29
|
| `ibge_sidra_metadados_tabela` | Metadados de uma tabela (variáveis, períodos, localidades) |
|
|
20
|
-
| `ibge_sidra_consultar_tabela` | Consulta dados
|
|
30
|
+
| `ibge_sidra_consultar_tabela` | Consulta dados com **múltiplas variáveis** simultaneamente |
|
|
31
|
+
| `ibge_periodos_tabela` | Lista períodos disponíveis de uma tabela |
|
|
21
32
|
| `ibge_ipca` | Inflação IPCA mensal com série histórica |
|
|
22
|
-
| `ibge_pib_municipios` | PIB dos municípios
|
|
33
|
+
| `ibge_pib_municipios` | PIB dos municípios (tabela 5938) |
|
|
34
|
+
| `ibge_pib_estados` | **NOVO** — PIB dos estados com ranking nacional |
|
|
23
35
|
|
|
24
36
|
### 📈 Indicadores Econômicos
|
|
25
37
|
| Tool | Descrição |
|
|
@@ -27,13 +39,20 @@ Servidor MCP (Model Context Protocol) para as **APIs públicas do IBGE**, permit
|
|
|
27
39
|
| `ibge_indicador_economico` | IPCA, IPCA acumulado, desemprego, rendimento, INPC |
|
|
28
40
|
| `ibge_listar_indicadores` | Lista todos os indicadores disponíveis |
|
|
29
41
|
|
|
30
|
-
### 👥 Censo
|
|
42
|
+
### 👥 Censo e População
|
|
31
43
|
| Tool | Descrição |
|
|
32
44
|
|------|-----------|
|
|
33
45
|
| `ibge_populacao_municipio` | População de um município pelo Censo 2022 |
|
|
34
46
|
| `ibge_populacao_estados` | Ranking de população de todos os estados |
|
|
35
47
|
| `ibge_densidade_demografica` | Densidade demográfica (hab/km²) por estado |
|
|
36
48
|
| `ibge_populacao_censo2022` | Dados populacionais do Censo com filtros avançados |
|
|
49
|
+
| `ibge_estimativas_populacionais` | **NOVO** — Estimativas anuais (2001-2024+) para municípios e estados |
|
|
50
|
+
|
|
51
|
+
### 🏷️ API de Nomes (Censo)
|
|
52
|
+
| Tool | Descrição |
|
|
53
|
+
|------|-----------|
|
|
54
|
+
| `ibge_nomes_frequencia` | **NOVO** — Frequência histórica de um nome (ex: "João") por década |
|
|
55
|
+
| `ibge_nomes_ranking` | **NOVO** — Top 20 nomes mais populares do Brasil ou por UF |
|
|
37
56
|
|
|
38
57
|
### 🗺️ Malha e Notícias
|
|
39
58
|
| Tool | Descrição |
|
|
@@ -104,25 +123,43 @@ Reinicie o Claude Desktop. O ícone 🔌 aparecerá indicando que o servidor est
|
|
|
104
123
|
Usuário: "Qual o estado mais populoso do Brasil?"
|
|
105
124
|
Agente: ibge_populacao_estados() → São Paulo com 44,4 milhões de habitantes (21,7% do total)
|
|
106
125
|
|
|
107
|
-
Usuário: "
|
|
126
|
+
Usuário: "Quantas pessoas se chamam Maria no Brasil?"
|
|
127
|
+
Agente: ibge_nomes_frequencia(nome="Maria") → 11,7 milhões de pessoas registradas
|
|
128
|
+
|
|
129
|
+
Usuário: "Quais os nomes masculinos mais populares na década de 1990?"
|
|
130
|
+
Agente: ibge_nomes_ranking(sexo="M", decada=1990) → Top 20 com frequência
|
|
131
|
+
|
|
132
|
+
Usuário: "Qual o PIB de São Paulo em 2021?"
|
|
133
|
+
Agente: ibge_pib_estados(ano=2021, uf_id=35) → R$ 2,7 trilhões (31% do PIB nacional)
|
|
134
|
+
|
|
135
|
+
Usuário: "População estimada do Brasil em 2024"
|
|
136
|
+
Agente: ibge_estimativas_populacionais(ano=2024, localidade="BR") → 212,6 milhões
|
|
137
|
+
|
|
138
|
+
Usuário: "Compare inflação de 2023 e 2024 mês a mês"
|
|
108
139
|
Agente: ibge_indicador_economico(indicador="IPCA", periodos="202301-202412")
|
|
109
140
|
|
|
110
|
-
Usuário: "Liste todas as cidades de SC com 'Floriano'
|
|
111
|
-
Agente: ibge_listar_municipios(uf="SC", busca="Floriano")
|
|
141
|
+
Usuário: "Liste todas as cidades de SC com 'Floriano' (sem acento)"
|
|
142
|
+
Agente: ibge_listar_municipios(uf="SC", busca="Floriano") → Florianópolis encontrada!
|
|
143
|
+
|
|
144
|
+
Usuário: "Busque 'Sao Paulo' (sem acento)"
|
|
145
|
+
Agente: ibge_buscar_municipio(nome="Sao Paulo") → São Paulo-SP encontrado (normalização automática)
|
|
112
146
|
|
|
113
147
|
Usuário: "Qual a densidade demográfica do DF vs SP?"
|
|
114
148
|
Agente: ibge_densidade_demografica() → DF: 529.2 hab/km², SP: 177.3 hab/km²
|
|
115
149
|
|
|
116
|
-
Usuário: "
|
|
117
|
-
Agente: ibge_sidra_consultar_tabela(tabela="
|
|
150
|
+
Usuário: "Consulte IPCA e INPC simultaneamente"
|
|
151
|
+
Agente: ibge_sidra_consultar_tabela(tabela="1419", variaveis="63|44") → Múltiplas variáveis em uma chamada
|
|
118
152
|
```
|
|
119
153
|
|
|
120
|
-
## 🔧 Tecnologias
|
|
154
|
+
## 🔧 Tecnologias e Performance
|
|
121
155
|
|
|
122
156
|
- **TypeScript** com tipagem estrita
|
|
123
157
|
- **MCP SDK** (@modelcontextprotocol/sdk)
|
|
124
158
|
- **APIs do IBGE** — 100% públicas, sem autenticação necessária
|
|
125
159
|
- **Zod** para validação de inputs
|
|
160
|
+
- **Cache in-memory** com TTL inteligente (até 7 dias para dados imutáveis)
|
|
161
|
+
- **Retry automático** com exponential backoff para maior confiabilidade
|
|
162
|
+
- **Busca sem acentos** — aceita "Sao Paulo", "Florianopolis", etc.
|
|
126
163
|
|
|
127
164
|
## 📚 APIs do IBGE Utilizadas
|
|
128
165
|
|
|
@@ -132,3 +169,26 @@ Agente: ibge_sidra_consultar_tabela(tabela="5938", localidades="N3[21,22,23,24,2
|
|
|
132
169
|
| SIDRA | v3 | `servicodados.ibge.gov.br/api/v3/agregados` |
|
|
133
170
|
| Malha Geográfica | v2 | `servicodados.ibge.gov.br/api/v2/malhas` |
|
|
134
171
|
| Notícias | v3 | `servicodados.ibge.gov.br/api/v3/noticias` |
|
|
172
|
+
|
|
173
|
+
## 🤝 Sponsorship
|
|
174
|
+
|
|
175
|
+
This project is proudly **sponsored by [Aeon Bridge Co.](https://aeonbridge.com)** 🌉
|
|
176
|
+
|
|
177
|
+
Aeon Bridge Co. is a technology company focused on building innovative solutions for AI-powered data integration and intelligent systems. We bridge the gap between complex data sources and modern AI agents, making information accessible and actionable.
|
|
178
|
+
|
|
179
|
+
**Learn more:** [https://aeonbridge.com](https://aeonbridge.com)
|
|
180
|
+
**Contact:** [contact@aeonbridge.com](mailto:contact@aeonbridge.com)
|
|
181
|
+
|
|
182
|
+
---
|
|
183
|
+
|
|
184
|
+
## 📄 License
|
|
185
|
+
|
|
186
|
+
MIT License - See [LICENSE](LICENSE) file for details.
|
|
187
|
+
|
|
188
|
+
## 🙏 Contributing
|
|
189
|
+
|
|
190
|
+
Contributions are welcome! Please feel free to submit issues or pull requests.
|
|
191
|
+
|
|
192
|
+
---
|
|
193
|
+
|
|
194
|
+
**Made with ❤️ by the Aeon Bridge team**
|
package/dist/index.js
CHANGED
|
@@ -9,6 +9,7 @@ const malha_noticias_js_1 = require("./tools/malha-noticias.js");
|
|
|
9
9
|
const indicadores_js_1 = require("./tools/indicadores.js");
|
|
10
10
|
const censo_js_1 = require("./tools/censo.js");
|
|
11
11
|
const cnae_js_1 = require("./tools/cnae.js");
|
|
12
|
+
const nomes_js_1 = require("./tools/nomes.js");
|
|
12
13
|
const server = new mcp_js_1.McpServer({
|
|
13
14
|
name: "ibge-mcp-server",
|
|
14
15
|
version: "1.0.0",
|
|
@@ -19,10 +20,11 @@ const server = new mcp_js_1.McpServer({
|
|
|
19
20
|
(0, indicadores_js_1.registerIndicadoresTools)(server);
|
|
20
21
|
(0, censo_js_1.registerCensoTools)(server);
|
|
21
22
|
(0, cnae_js_1.registerCnaeTools)(server);
|
|
23
|
+
(0, nomes_js_1.registerNomesTools)(server);
|
|
22
24
|
async function main() {
|
|
23
25
|
const transport = new stdio_js_1.StdioServerTransport();
|
|
24
26
|
await server.connect(transport);
|
|
25
|
-
console.error("✅ IBGE MCP Server iniciado —
|
|
27
|
+
console.error("✅ IBGE MCP Server iniciado — 27+ ferramentas disponíveis");
|
|
26
28
|
}
|
|
27
29
|
main().catch((err) => {
|
|
28
30
|
console.error("❌ Erro:", err);
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AACA,oEAAoE;AACpE,wEAAiF;AACjF,2DAAkE;AAClE,+CAAsD;AACtD,iEAAkE;AAClE,2DAAkE;AAClE,+CAAsD;AACtD,6CAAoD;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AACA,oEAAoE;AACpE,wEAAiF;AACjF,2DAAkE;AAClE,+CAAsD;AACtD,iEAAkE;AAClE,2DAAkE;AAClE,+CAAsD;AACtD,6CAAoD;AACpD,+CAAsD;AAEtD,MAAM,MAAM,GAAG,IAAI,kBAAS,CAAC;IAC3B,IAAI,EAAE,iBAAiB;IACvB,OAAO,EAAE,OAAO;CACjB,CAAC,CAAC;AAEH,IAAA,yCAAwB,EAAC,MAAM,CAAC,CAAC;AACjC,IAAA,6BAAkB,EAAC,MAAM,CAAC,CAAC;AAC3B,IAAA,yCAAqB,EAAC,MAAM,CAAC,CAAC;AAC9B,IAAA,yCAAwB,EAAC,MAAM,CAAC,CAAC;AACjC,IAAA,6BAAkB,EAAC,MAAM,CAAC,CAAC;AAC3B,IAAA,2BAAiB,EAAC,MAAM,CAAC,CAAC;AAC1B,IAAA,6BAAkB,EAAC,MAAM,CAAC,CAAC;AAE3B,KAAK,UAAU,IAAI;IACjB,MAAM,SAAS,GAAG,IAAI,+BAAoB,EAAE,CAAC;IAC7C,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAChC,OAAO,CAAC,KAAK,CAAC,0DAA0D,CAAC,CAAC;AAC5E,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,GAAY,EAAE,EAAE;IAC5B,OAAO,CAAC,KAAK,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;IAC9B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
declare class SimpleCache {
|
|
2
|
+
private store;
|
|
3
|
+
get<T>(key: string): T | null;
|
|
4
|
+
set<T>(key: string, data: T, ttlMs: number): void;
|
|
5
|
+
clear(): void;
|
|
6
|
+
size(): number;
|
|
7
|
+
}
|
|
8
|
+
export declare const cache: SimpleCache;
|
|
9
|
+
export declare const TTL: {
|
|
10
|
+
readonly LOCALIDADES: number;
|
|
11
|
+
readonly NOMES: number;
|
|
12
|
+
readonly SIDRA_METADATA: number;
|
|
13
|
+
readonly SIDRA_DATA: number;
|
|
14
|
+
readonly INDICADORES: number;
|
|
15
|
+
readonly NOTICIAS: number;
|
|
16
|
+
};
|
|
17
|
+
export {};
|
|
18
|
+
//# sourceMappingURL=cache.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cache.d.ts","sourceRoot":"","sources":["../../src/services/cache.ts"],"names":[],"mappings":"AAQA,cAAM,WAAW;IACf,OAAO,CAAC,KAAK,CAA0C;IAEvD,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,CAAC,GAAG,IAAI;IAY7B,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAOjD,KAAK,IAAI,IAAI;IAIb,IAAI,IAAI,MAAM;CAGf;AAED,eAAO,MAAM,KAAK,aAAoB,CAAC;AAGvC,eAAO,MAAM,GAAG;;;;;;;CAON,CAAC"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// services/cache.ts
|
|
3
|
+
// In-memory cache with TTL for IBGE API responses
|
|
4
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
|
+
exports.TTL = exports.cache = void 0;
|
|
6
|
+
class SimpleCache {
|
|
7
|
+
store = new Map();
|
|
8
|
+
get(key) {
|
|
9
|
+
const entry = this.store.get(key);
|
|
10
|
+
if (!entry)
|
|
11
|
+
return null;
|
|
12
|
+
if (Date.now() > entry.expiresAt) {
|
|
13
|
+
this.store.delete(key);
|
|
14
|
+
return null;
|
|
15
|
+
}
|
|
16
|
+
return entry.data;
|
|
17
|
+
}
|
|
18
|
+
set(key, data, ttlMs) {
|
|
19
|
+
this.store.set(key, {
|
|
20
|
+
data,
|
|
21
|
+
expiresAt: Date.now() + ttlMs,
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
clear() {
|
|
25
|
+
this.store.clear();
|
|
26
|
+
}
|
|
27
|
+
size() {
|
|
28
|
+
return this.store.size;
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
exports.cache = new SimpleCache();
|
|
32
|
+
// TTL constants based on IBGE data update frequency
|
|
33
|
+
exports.TTL = {
|
|
34
|
+
LOCALIDADES: 24 * 60 * 60 * 1000, // 24 hours - rarely changes
|
|
35
|
+
NOMES: 7 * 24 * 60 * 60 * 1000, // 7 days - census data, never changes
|
|
36
|
+
SIDRA_METADATA: 6 * 60 * 60 * 1000, // 6 hours
|
|
37
|
+
SIDRA_DATA: 60 * 60 * 1000, // 1 hour - economic indicators update monthly
|
|
38
|
+
INDICADORES: 60 * 60 * 1000, // 1 hour
|
|
39
|
+
NOTICIAS: 30 * 60 * 1000, // 30 minutes
|
|
40
|
+
};
|
|
41
|
+
//# sourceMappingURL=cache.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cache.js","sourceRoot":"","sources":["../../src/services/cache.ts"],"names":[],"mappings":";AAAA,oBAAoB;AACpB,kDAAkD;;;AAOlD,MAAM,WAAW;IACP,KAAK,GAAG,IAAI,GAAG,EAA+B,CAAC;IAEvD,GAAG,CAAI,GAAW;QAChB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAClC,IAAI,CAAC,KAAK;YAAE,OAAO,IAAI,CAAC;QAExB,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,SAAS,EAAE,CAAC;YACjC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACvB,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO,KAAK,CAAC,IAAS,CAAC;IACzB,CAAC;IAED,GAAG,CAAI,GAAW,EAAE,IAAO,EAAE,KAAa;QACxC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE;YAClB,IAAI;YACJ,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;SAC9B,CAAC,CAAC;IACL,CAAC;IAED,KAAK;QACH,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;IACrB,CAAC;IAED,IAAI;QACF,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;IACzB,CAAC;CACF;AAEY,QAAA,KAAK,GAAG,IAAI,WAAW,EAAE,CAAC;AAEvC,oDAAoD;AACvC,QAAA,GAAG,GAAG;IACjB,WAAW,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,EAAG,4BAA4B;IAC/D,KAAK,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,EAAK,sCAAsC;IACzE,cAAc,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,UAAU;IAC9C,UAAU,EAAE,EAAE,GAAG,EAAE,GAAG,IAAI,EAAU,8CAA8C;IAClF,WAAW,EAAE,EAAE,GAAG,EAAE,GAAG,IAAI,EAAS,SAAS;IAC7C,QAAQ,EAAE,EAAE,GAAG,EAAE,GAAG,IAAI,EAAY,aAAa;CACzC,CAAC"}
|
|
@@ -8,7 +8,7 @@ export declare class IBGEApiError extends Error {
|
|
|
8
8
|
readonly endpoint?: string | undefined;
|
|
9
9
|
constructor(message: string, status?: number | undefined, endpoint?: string | undefined);
|
|
10
10
|
}
|
|
11
|
-
export declare function ibgeFetch<T>(url: string): Promise<T>;
|
|
11
|
+
export declare function ibgeFetch<T>(url: string, cacheTtl?: number): Promise<T>;
|
|
12
12
|
export declare function formatToolError(err: unknown): string;
|
|
13
13
|
export declare function truncateIfNeeded(text: string, maxChars?: number): string;
|
|
14
14
|
//# sourceMappingURL=ibge-client.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ibge-client.d.ts","sourceRoot":"","sources":["../../src/services/ibge-client.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ibge-client.d.ts","sourceRoot":"","sources":["../../src/services/ibge-client.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,QAAQ;;;;CAIX,CAAC;AAEX,qBAAa,YAAa,SAAQ,KAAK;aAGnB,MAAM,CAAC,EAAE,MAAM;aACf,QAAQ,CAAC,EAAE,MAAM;gBAFjC,OAAO,EAAE,MAAM,EACC,MAAM,CAAC,EAAE,MAAM,YAAA,EACf,QAAQ,CAAC,EAAE,MAAM,YAAA;CAKpC;AA0ED,wBAAsB,SAAS,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAkB7E;AAED,wBAAgB,eAAe,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,CAKpD;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,SAAQ,GAAG,MAAM,CAMvE"}
|
|
@@ -6,6 +6,7 @@ exports.IBGEApiError = exports.IBGE_API = void 0;
|
|
|
6
6
|
exports.ibgeFetch = ibgeFetch;
|
|
7
7
|
exports.formatToolError = formatToolError;
|
|
8
8
|
exports.truncateIfNeeded = truncateIfNeeded;
|
|
9
|
+
const cache_js_1 = require("./cache.js");
|
|
9
10
|
exports.IBGE_API = {
|
|
10
11
|
v1: "https://servicodados.ibge.gov.br/api/v1",
|
|
11
12
|
v2: "https://servicodados.ibge.gov.br/api/v2",
|
|
@@ -22,30 +23,73 @@ class IBGEApiError extends Error {
|
|
|
22
23
|
}
|
|
23
24
|
}
|
|
24
25
|
exports.IBGEApiError = IBGEApiError;
|
|
25
|
-
async function
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
26
|
+
async function sleep(ms) {
|
|
27
|
+
return new Promise((resolve) => setTimeout(resolve, ms));
|
|
28
|
+
}
|
|
29
|
+
async function fetchWithRetry(url, retries = 3, baseDelay = 500) {
|
|
30
|
+
let lastError;
|
|
31
|
+
for (let attempt = 0; attempt < retries; attempt++) {
|
|
32
|
+
const controller = new AbortController();
|
|
33
|
+
const timeout = setTimeout(() => controller.abort(), 15000);
|
|
34
|
+
try {
|
|
35
|
+
const response = await fetch(url, {
|
|
36
|
+
signal: controller.signal,
|
|
37
|
+
headers: { Accept: "application/json" },
|
|
38
|
+
});
|
|
39
|
+
clearTimeout(timeout);
|
|
40
|
+
// Retry on 503/504 (server errors)
|
|
41
|
+
if (response.status === 503 || response.status === 504) {
|
|
42
|
+
if (attempt < retries - 1) {
|
|
43
|
+
const delay = baseDelay * Math.pow(2, attempt);
|
|
44
|
+
await sleep(delay);
|
|
45
|
+
continue;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
if (!response.ok) {
|
|
49
|
+
throw new IBGEApiError(`IBGE API retornou status ${response.status}: ${response.statusText}`, response.status, url);
|
|
50
|
+
}
|
|
51
|
+
const data = (await response.json());
|
|
52
|
+
return data;
|
|
53
|
+
}
|
|
54
|
+
catch (err) {
|
|
55
|
+
clearTimeout(timeout);
|
|
56
|
+
if (err instanceof IBGEApiError) {
|
|
57
|
+
lastError = err;
|
|
58
|
+
if (err.status !== 503 && err.status !== 504) {
|
|
59
|
+
throw err; // Don't retry on non-retryable errors
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
else if (err instanceof Error && err.name === "AbortError") {
|
|
63
|
+
lastError = new IBGEApiError("Timeout: a API do IBGE demorou mais de 15s", undefined, url);
|
|
64
|
+
}
|
|
65
|
+
else {
|
|
66
|
+
lastError = new IBGEApiError(`Erro ao conectar com a API do IBGE: ${err instanceof Error ? err.message : String(err)}`, undefined, url);
|
|
67
|
+
}
|
|
68
|
+
// If not last attempt and error is retryable, continue
|
|
69
|
+
if (attempt < retries - 1) {
|
|
70
|
+
const delay = baseDelay * Math.pow(2, attempt);
|
|
71
|
+
await sleep(delay);
|
|
72
|
+
continue;
|
|
73
|
+
}
|
|
36
74
|
}
|
|
37
|
-
const data = (await response.json());
|
|
38
|
-
return data;
|
|
39
75
|
}
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
76
|
+
throw lastError || new IBGEApiError("Erro desconhecido após retries", undefined, url);
|
|
77
|
+
}
|
|
78
|
+
async function ibgeFetch(url, cacheTtl) {
|
|
79
|
+
// Check cache first if TTL is provided
|
|
80
|
+
if (cacheTtl !== undefined) {
|
|
81
|
+
const cached = cache_js_1.cache.get(url);
|
|
82
|
+
if (cached !== null) {
|
|
83
|
+
return cached;
|
|
46
84
|
}
|
|
47
|
-
throw new IBGEApiError(`Erro ao conectar com a API do IBGE: ${err instanceof Error ? err.message : String(err)}`, undefined, url);
|
|
48
85
|
}
|
|
86
|
+
// Fetch with retry
|
|
87
|
+
const data = await fetchWithRetry(url);
|
|
88
|
+
// Store in cache if TTL is provided
|
|
89
|
+
if (cacheTtl !== undefined) {
|
|
90
|
+
cache_js_1.cache.set(url, data, cacheTtl);
|
|
91
|
+
}
|
|
92
|
+
return data;
|
|
49
93
|
}
|
|
50
94
|
function formatToolError(err) {
|
|
51
95
|
if (err instanceof IBGEApiError) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ibge-client.js","sourceRoot":"","sources":["../../src/services/ibge-client.ts"],"names":[],"mappings":";AAAA,0BAA0B;AAC1B,uDAAuD;;;
|
|
1
|
+
{"version":3,"file":"ibge-client.js","sourceRoot":"","sources":["../../src/services/ibge-client.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"censo.d.ts","sourceRoot":"","sources":["../../src/tools/censo.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;
|
|
1
|
+
{"version":3,"file":"censo.d.ts","sourceRoot":"","sources":["../../src/tools/censo.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAmBpE,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAqO1D"}
|
package/dist/tools/censo.js
CHANGED
|
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.registerCensoTools = registerCensoTools;
|
|
4
4
|
const zod_1 = require("zod");
|
|
5
5
|
const ibge_client_js_1 = require("../services/ibge-client.js");
|
|
6
|
+
const cache_js_1 = require("../services/cache.js");
|
|
6
7
|
function formatNum(v) {
|
|
7
8
|
return v.toLocaleString("pt-BR");
|
|
8
9
|
}
|
|
@@ -68,7 +69,7 @@ Retorna ranking de população com % do total nacional.`,
|
|
|
68
69
|
}, async ({ uf_id }) => {
|
|
69
70
|
try {
|
|
70
71
|
const localidade = uf_id ? `N3[${uf_id}]` : "N3[all]";
|
|
71
|
-
const url = `${ibge_client_js_1.IBGE_API.v3}/agregados/9514/periodos/2022/variaveis/93?localidades=${localidade}
|
|
72
|
+
const url = `${ibge_client_js_1.IBGE_API.v3}/agregados/9514/periodos/2022/variaveis/93?localidades=${localidade}`;
|
|
72
73
|
const dados = await (0, ibge_client_js_1.ibgeFetch)(url);
|
|
73
74
|
const series = getSerie(dados);
|
|
74
75
|
if (series.length === 0)
|
|
@@ -106,8 +107,8 @@ Retorna população, área em km² e densidade por estado, ordenados por densida
|
|
|
106
107
|
try {
|
|
107
108
|
const localidade = uf_id ? `N3[${uf_id}]` : "N3[all]";
|
|
108
109
|
const [dadosPop, dadosArea] = await Promise.all([
|
|
109
|
-
(0, ibge_client_js_1.ibgeFetch)(`${ibge_client_js_1.IBGE_API.v3}/agregados/9514/periodos/2022/variaveis/93?localidades=${localidade}
|
|
110
|
-
(0, ibge_client_js_1.ibgeFetch)(`${ibge_client_js_1.IBGE_API.v3}/agregados/9517/periodos/2022/variaveis/82?localidades=${localidade}
|
|
110
|
+
(0, ibge_client_js_1.ibgeFetch)(`${ibge_client_js_1.IBGE_API.v3}/agregados/9514/periodos/2022/variaveis/93?localidades=${localidade}`),
|
|
111
|
+
(0, ibge_client_js_1.ibgeFetch)(`${ibge_client_js_1.IBGE_API.v3}/agregados/9517/periodos/2022/variaveis/82?localidades=${localidade}`).catch(() => []),
|
|
111
112
|
]);
|
|
112
113
|
const pop = getSerie(dadosPop);
|
|
113
114
|
const area = getSerie(dadosArea);
|
|
@@ -132,5 +133,76 @@ Retorna população, área em km² e densidade por estado, ordenados por densida
|
|
|
132
133
|
return { content: [{ type: "text", text: (0, ibge_client_js_1.formatToolError)(err) }] };
|
|
133
134
|
}
|
|
134
135
|
});
|
|
136
|
+
server.registerTool("ibge_estimativas_populacionais", {
|
|
137
|
+
title: "Estimativas Populacionais Anuais",
|
|
138
|
+
description: `Consulta estimativas de população para anos entre censos (2001-2024+).
|
|
139
|
+
As estimativas são usadas pelo TCU para repasse de verbas e são atualizadas anualmente.
|
|
140
|
+
|
|
141
|
+
Args:
|
|
142
|
+
- ano (obrigatório): Ano da estimativa (ex: 2024, 2023, 2022...)
|
|
143
|
+
- localidade (opcional): "BR" (Brasil), "estados" (todos estados), ou código IBGE específico
|
|
144
|
+
- municipio_id (opcional): Código IBGE de 7 dígitos para consulta de município específico
|
|
145
|
+
|
|
146
|
+
Use para dados mais recentes que o Censo 2022 ou para anos intermediários.
|
|
147
|
+
Exemplo: População estimada de 2024, população de município não finalizado no censo.`,
|
|
148
|
+
inputSchema: zod_1.z.object({
|
|
149
|
+
ano: zod_1.z.number().int().min(2001).max(2030).describe("Ano da estimativa"),
|
|
150
|
+
localidade: zod_1.z.enum(["BR", "estados"]).optional().describe("BR=Brasil, estados=todos estados"),
|
|
151
|
+
municipio_id: zod_1.z.number().int().positive().optional().describe("Código IBGE do município (7 dígitos)"),
|
|
152
|
+
}),
|
|
153
|
+
annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: true },
|
|
154
|
+
}, async (args) => {
|
|
155
|
+
try {
|
|
156
|
+
const { ano, localidade, municipio_id } = args;
|
|
157
|
+
let nivel = "N1[all]"; // Brasil por padrão
|
|
158
|
+
if (localidade === "estados") {
|
|
159
|
+
nivel = "N3[all]";
|
|
160
|
+
}
|
|
161
|
+
else if (municipio_id) {
|
|
162
|
+
nivel = `N6[${municipio_id}]`;
|
|
163
|
+
}
|
|
164
|
+
const url = `${ibge_client_js_1.IBGE_API.v3}/agregados/6579/periodos/${ano}/variaveis/9324?localidades=${nivel}`;
|
|
165
|
+
const dados = await (0, ibge_client_js_1.ibgeFetch)(url, cache_js_1.TTL.SIDRA_DATA);
|
|
166
|
+
const series = getSerie(dados);
|
|
167
|
+
if (series.length === 0) {
|
|
168
|
+
return {
|
|
169
|
+
content: [{
|
|
170
|
+
type: "text",
|
|
171
|
+
text: `Dados não encontrados para o ano ${ano}.\n\nVerifique se o ano está disponível na base do IBGE (geralmente 2001-2024).`
|
|
172
|
+
}]
|
|
173
|
+
};
|
|
174
|
+
}
|
|
175
|
+
if (municipio_id || localidade === undefined) {
|
|
176
|
+
// Resultado único
|
|
177
|
+
const item = series[0];
|
|
178
|
+
return {
|
|
179
|
+
content: [{
|
|
180
|
+
type: "text",
|
|
181
|
+
text: `## ${item.nome} — Estimativa ${ano}\n\n**População estimada:** ${formatNum(item.valor)} habitantes\n\n_Fonte: IBGE Estimativas de População (Tabela 6579)_`
|
|
182
|
+
}]
|
|
183
|
+
};
|
|
184
|
+
}
|
|
185
|
+
// Múltiplas localidades
|
|
186
|
+
const total = series.reduce((acc, s) => acc + s.valor, 0);
|
|
187
|
+
series.sort((a, b) => b.valor - a.valor);
|
|
188
|
+
const linhas = series.map((s, i) => {
|
|
189
|
+
const pct = localidade === "estados" ? ` (${((s.valor / total) * 100).toFixed(2)}%)` : "";
|
|
190
|
+
return `${i + 1}. **${s.nome}**: ${formatNum(s.valor)} hab${pct}`;
|
|
191
|
+
});
|
|
192
|
+
const titulo = localidade === "estados" ? "por Estado" : "Brasil";
|
|
193
|
+
return {
|
|
194
|
+
content: [{
|
|
195
|
+
type: "text",
|
|
196
|
+
text: (0, ibge_client_js_1.truncateIfNeeded)(`## Estimativa de População ${titulo} — ${ano}\n\n` +
|
|
197
|
+
(localidade === "estados" ? `**Brasil:** ${formatNum(total)} habitantes\n\n` : "") +
|
|
198
|
+
linhas.join("\n") +
|
|
199
|
+
`\n\n_Fonte: IBGE Estimativas de População (Tabela 6579)_`)
|
|
200
|
+
}]
|
|
201
|
+
};
|
|
202
|
+
}
|
|
203
|
+
catch (err) {
|
|
204
|
+
return { content: [{ type: "text", text: (0, ibge_client_js_1.formatToolError)(err) }] };
|
|
205
|
+
}
|
|
206
|
+
});
|
|
135
207
|
}
|
|
136
208
|
//# sourceMappingURL=censo.js.map
|
package/dist/tools/censo.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"censo.js","sourceRoot":"","sources":["../../src/tools/censo.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"censo.js","sourceRoot":"","sources":["../../src/tools/censo.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,8 +4,8 @@ exports.registerIndicadoresTools = registerIndicadoresTools;
|
|
|
4
4
|
const zod_1 = require("zod");
|
|
5
5
|
const ibge_client_js_1 = require("../services/ibge-client.js");
|
|
6
6
|
const INDICADORES = {
|
|
7
|
-
IPCA: { tabela: "
|
|
8
|
-
IPCA_ACUMULADO: { tabela: "
|
|
7
|
+
IPCA: { tabela: "1419", variavel: "63", nome: "IPCA - Variação Mensal", unidade: "%" },
|
|
8
|
+
IPCA_ACUMULADO: { tabela: "1419", variavel: "2266", nome: "IPCA - Acumulado 12 meses", unidade: "%" },
|
|
9
9
|
DESEMPREGO: { tabela: "6381", variavel: "4099", nome: "PNAD - Taxa de Desocupação", unidade: "%" },
|
|
10
10
|
RENDIMENTO: { tabela: "6403", variavel: "5929", nome: "PNAD - Rendimento Médio per capita", unidade: "R$" },
|
|
11
11
|
INPC: { tabela: "1736", variavel: "44", nome: "INPC - Variação Mensal", unidade: "%" },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"indicadores.js","sourceRoot":"","sources":["../../src/tools/indicadores.ts"],"names":[],"mappings":";;AAcA,4DAyEC;AArFD,6BAAwB;AACxB,+DAAoG;AAGpG,MAAM,WAAW,GAAwF;IACvG,IAAI,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,wBAAwB,EAAE,OAAO,EAAE,GAAG,EAAE;IACtF,cAAc,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,
|
|
1
|
+
{"version":3,"file":"indicadores.js","sourceRoot":"","sources":["../../src/tools/indicadores.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"localidades.d.ts","sourceRoot":"","sources":["../../src/tools/localidades.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAgBpE,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"localidades.d.ts","sourceRoot":"","sources":["../../src/tools/localidades.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAgBpE,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAoIhE"}
|
|
@@ -75,8 +75,12 @@ Retorna: id (7 dígitos), nome, microrregião. Use o id em consultas SIDRA de mu
|
|
|
75
75
|
const uf_nome = municipios[0]?.microrregiao?.mesorregiao?.UF?.nome ?? uf;
|
|
76
76
|
let lista = municipios.map((m) => municipioToSimples(m, uf_sigla, uf_nome));
|
|
77
77
|
if (nome_filtro) {
|
|
78
|
-
|
|
79
|
-
|
|
78
|
+
// Normalizar acentos para busca flexível (São Paulo = Sao Paulo)
|
|
79
|
+
const filtroNorm = nome_filtro.toLowerCase().normalize("NFD").replace(/[\u0300-\u036f]/g, "");
|
|
80
|
+
lista = lista.filter((m) => {
|
|
81
|
+
const nomeNorm = m.nome.toLowerCase().normalize("NFD").replace(/[\u0300-\u036f]/g, "");
|
|
82
|
+
return nomeNorm.includes(filtroNorm);
|
|
83
|
+
});
|
|
80
84
|
}
|
|
81
85
|
lista.sort((a, b) => a.nome.localeCompare(b.nome));
|
|
82
86
|
const texto = lista.map((m) => `• [${m.id}] ${m.nome}${m.microrregiao ? ` (${m.microrregiao})` : ""}`).join("\n");
|
|
@@ -105,9 +109,13 @@ Retorna: código IBGE, nome, UF, mesorregião de todos os municípios encontrado
|
|
|
105
109
|
? `${ibge_client_js_1.IBGE_API.v1}/localidades/estados/${uf}/municipios`
|
|
106
110
|
: `${ibge_client_js_1.IBGE_API.v1}/localidades/municipios`;
|
|
107
111
|
const municipios = await (0, ibge_client_js_1.ibgeFetch)(url);
|
|
108
|
-
|
|
112
|
+
// Normalizar acentos para busca flexível (São Paulo = Sao Paulo)
|
|
113
|
+
const filtroNorm = nome.toLowerCase().normalize("NFD").replace(/[\u0300-\u036f]/g, "");
|
|
109
114
|
const encontrados = municipios
|
|
110
|
-
.filter((m) =>
|
|
115
|
+
.filter((m) => {
|
|
116
|
+
const nomeNorm = m.nome.toLowerCase().normalize("NFD").replace(/[\u0300-\u036f]/g, "");
|
|
117
|
+
return nomeNorm.includes(filtroNorm);
|
|
118
|
+
})
|
|
111
119
|
.map((m) => municipioToSimples(m))
|
|
112
120
|
.sort((a, b) => a.nome.localeCompare(b.nome));
|
|
113
121
|
if (encontrados.length === 0) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"localidades.js","sourceRoot":"","sources":["../../src/tools/localidades.ts"],"names":[],"mappings":";AAAA,wEAAwE;;AAkBxE,
|
|
1
|
+
{"version":3,"file":"localidades.js","sourceRoot":"","sources":["../../src/tools/localidades.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nomes.d.ts","sourceRoot":"","sources":["../../src/tools/nomes.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AA4BpE,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CA6J1D"}
|
|
@@ -0,0 +1,144 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// tools/nomes.ts — API de Nomes do Censo (frequência histórica e rankings)
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.registerNomesTools = registerNomesTools;
|
|
5
|
+
const zod_1 = require("zod");
|
|
6
|
+
const ibge_client_js_1 = require("../services/ibge-client.js");
|
|
7
|
+
const cache_js_1 = require("../services/cache.js");
|
|
8
|
+
function registerNomesTools(server) {
|
|
9
|
+
server.registerTool("ibge_nomes_frequencia", {
|
|
10
|
+
title: "Frequência Histórica de Nomes",
|
|
11
|
+
description: `Retorna a frequência de um nome próprio no Brasil por década desde 1930.
|
|
12
|
+
Args:
|
|
13
|
+
- nome (obrigatório): Nome próprio a pesquisar (ex: "João", "Maria")
|
|
14
|
+
- localidade (opcional): Código IBGE ou "BR" para Brasil (padrão: BR)
|
|
15
|
+
- sexo (opcional): "M" para masculino, "F" para feminino, null para ambos
|
|
16
|
+
|
|
17
|
+
Retorna dados do Censo com frequência por período (década).
|
|
18
|
+
Exemplo: "Quantas pessoas se chamam João no Brasil?"`,
|
|
19
|
+
inputSchema: zod_1.z.object({
|
|
20
|
+
nome: zod_1.z.string().min(2).describe("Nome próprio a pesquisar"),
|
|
21
|
+
localidade: zod_1.z.string().optional().describe("Código IBGE ou BR para Brasil"),
|
|
22
|
+
sexo: zod_1.z.enum(["M", "F"]).optional().describe("M=masculino, F=feminino"),
|
|
23
|
+
}),
|
|
24
|
+
annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false },
|
|
25
|
+
}, async (args) => {
|
|
26
|
+
try {
|
|
27
|
+
const { nome, localidade = "BR", sexo } = args;
|
|
28
|
+
const nomeNormalizado = nome.trim().toLowerCase();
|
|
29
|
+
const nomeCapitalizado = nomeNormalizado.charAt(0).toUpperCase() + nomeNormalizado.slice(1);
|
|
30
|
+
let url = `${ibge_client_js_1.IBGE_API.v2}/censos/nomes/${encodeURIComponent(nomeNormalizado)}`;
|
|
31
|
+
const params = new URLSearchParams();
|
|
32
|
+
if (localidade && localidade !== "BR") {
|
|
33
|
+
params.append("localidade", localidade);
|
|
34
|
+
}
|
|
35
|
+
if (sexo) {
|
|
36
|
+
params.append("sexo", sexo);
|
|
37
|
+
}
|
|
38
|
+
if (params.toString()) {
|
|
39
|
+
url += `?${params.toString()}`;
|
|
40
|
+
}
|
|
41
|
+
const dados = await (0, ibge_client_js_1.ibgeFetch)(url, cache_js_1.TTL.NOMES);
|
|
42
|
+
if (!dados || dados.length === 0) {
|
|
43
|
+
return {
|
|
44
|
+
content: [{
|
|
45
|
+
type: "text",
|
|
46
|
+
text: `Nome "${nomeCapitalizado}" não encontrado nos dados do Censo.\n\nVerifique:\n- Grafia correta\n- Nomes compostos devem ser consultados separadamente\n- A base contém nomes registrados no Brasil desde 1930`
|
|
47
|
+
}]
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
let totalPessoas = 0;
|
|
51
|
+
const periodos = [];
|
|
52
|
+
for (const registro of dados) {
|
|
53
|
+
for (const item of registro.res) {
|
|
54
|
+
totalPessoas += item.frequencia;
|
|
55
|
+
const inicio = item.periodo.substring(0, 4);
|
|
56
|
+
const fim = item.periodo.substring(5, 9);
|
|
57
|
+
periodos.push(` • ${inicio}-${fim}: ${item.frequencia.toLocaleString("pt-BR")} pessoas`);
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
const sexoText = sexo === "M" ? " (masculino)" : sexo === "F" ? " (feminino)" : "";
|
|
61
|
+
const localidadeText = localidade === "BR" ? "Brasil" : `localidade ${localidade}`;
|
|
62
|
+
const resultado = `**Nome: ${nomeCapitalizado}${sexoText}**
|
|
63
|
+
**Total**: ${totalPessoas.toLocaleString("pt-BR")} pessoas registradas (${localidadeText})
|
|
64
|
+
|
|
65
|
+
**Frequência por década**:
|
|
66
|
+
${periodos.join("\n")}
|
|
67
|
+
|
|
68
|
+
_Fonte: Censo Demográfico IBGE_`;
|
|
69
|
+
return { content: [{ type: "text", text: resultado }] };
|
|
70
|
+
}
|
|
71
|
+
catch (err) {
|
|
72
|
+
return { content: [{ type: "text", text: (0, ibge_client_js_1.formatToolError)(err) }] };
|
|
73
|
+
}
|
|
74
|
+
});
|
|
75
|
+
server.registerTool("ibge_nomes_ranking", {
|
|
76
|
+
title: "Ranking de Nomes Mais Populares",
|
|
77
|
+
description: `Retorna os nomes mais populares do Brasil ou de uma localidade específica.
|
|
78
|
+
Args:
|
|
79
|
+
- localidade (opcional): Código IBGE de estado/município ou "BR" para Brasil (padrão: BR)
|
|
80
|
+
- sexo (opcional): "M" para masculino, "F" para feminino, null para ambos
|
|
81
|
+
- decada (opcional): Década específica (ex: 1990, 2000, 2010)
|
|
82
|
+
|
|
83
|
+
Retorna ranking com nome, frequência e posição.
|
|
84
|
+
Exemplo: "Quais os nomes mais comuns no Brasil?"`,
|
|
85
|
+
inputSchema: zod_1.z.object({
|
|
86
|
+
localidade: zod_1.z.string().optional().describe("Código IBGE ou BR"),
|
|
87
|
+
sexo: zod_1.z.enum(["M", "F"]).optional().describe("M=masculino, F=feminino"),
|
|
88
|
+
decada: zod_1.z.number().int().min(1930).max(2010).multipleOf(10).optional()
|
|
89
|
+
.describe("Década (1930, 1940, ..., 2010)"),
|
|
90
|
+
}),
|
|
91
|
+
annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false },
|
|
92
|
+
}, async (args) => {
|
|
93
|
+
try {
|
|
94
|
+
const { localidade = "BR", sexo, decada } = args;
|
|
95
|
+
let url = `${ibge_client_js_1.IBGE_API.v2}/censos/nomes/ranking`;
|
|
96
|
+
const params = new URLSearchParams();
|
|
97
|
+
if (localidade && localidade !== "BR") {
|
|
98
|
+
params.append("localidade", localidade);
|
|
99
|
+
}
|
|
100
|
+
if (sexo) {
|
|
101
|
+
params.append("sexo", sexo);
|
|
102
|
+
}
|
|
103
|
+
if (decada) {
|
|
104
|
+
params.append("decada", decada.toString());
|
|
105
|
+
}
|
|
106
|
+
if (params.toString()) {
|
|
107
|
+
url += `?${params.toString()}`;
|
|
108
|
+
}
|
|
109
|
+
const response = await (0, ibge_client_js_1.ibgeFetch)(url, cache_js_1.TTL.NOMES);
|
|
110
|
+
if (!response || response.length === 0 || !response[0].res || response[0].res.length === 0) {
|
|
111
|
+
return {
|
|
112
|
+
content: [{
|
|
113
|
+
type: "text",
|
|
114
|
+
text: "Nenhum dado de ranking encontrado para os parâmetros especificados."
|
|
115
|
+
}]
|
|
116
|
+
};
|
|
117
|
+
}
|
|
118
|
+
const ranking = response[0].res;
|
|
119
|
+
const top20 = ranking.slice(0, 20);
|
|
120
|
+
const lista = top20.map((item, idx) => {
|
|
121
|
+
const pos = (idx + 1).toString().padStart(2, " ");
|
|
122
|
+
const freq = item.frequencia !== undefined && item.frequencia !== null
|
|
123
|
+
? item.frequencia.toLocaleString("pt-BR")
|
|
124
|
+
: "N/D";
|
|
125
|
+
return ` ${pos}. ${item.nome} — ${freq} pessoas`;
|
|
126
|
+
}).join("\n");
|
|
127
|
+
const sexoText = sexo === "M" ? " masculinos" : sexo === "F" ? " femininos" : "";
|
|
128
|
+
const localidadeText = localidade === "BR" ? "Brasil" : `localidade ${localidade}`;
|
|
129
|
+
const decadaText = decada ? ` (década de ${decada})` : "";
|
|
130
|
+
const resultado = `**Ranking de nomes${sexoText} mais populares**
|
|
131
|
+
**Localidade**: ${localidadeText}${decadaText}
|
|
132
|
+
|
|
133
|
+
**Top 20**:
|
|
134
|
+
${lista}
|
|
135
|
+
|
|
136
|
+
${ranking.length > 20 ? `_Mostrando 20 de ${ranking.length} nomes disponíveis_\n` : ""}_Fonte: Censo Demográfico IBGE_`;
|
|
137
|
+
return { content: [{ type: "text", text: resultado }] };
|
|
138
|
+
}
|
|
139
|
+
catch (err) {
|
|
140
|
+
return { content: [{ type: "text", text: (0, ibge_client_js_1.formatToolError)(err) }] };
|
|
141
|
+
}
|
|
142
|
+
});
|
|
143
|
+
}
|
|
144
|
+
//# sourceMappingURL=nomes.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nomes.js","sourceRoot":"","sources":["../../src/tools/nomes.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sidra.d.ts","sourceRoot":"","sources":["../../src/tools/sidra.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;
|
|
1
|
+
{"version":3,"file":"sidra.d.ts","sourceRoot":"","sources":["../../src/tools/sidra.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAyGpE,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAmkB1D"}
|
package/dist/tools/sidra.js
CHANGED
|
@@ -4,6 +4,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
4
4
|
exports.registerSidraTools = registerSidraTools;
|
|
5
5
|
const zod_1 = require("zod");
|
|
6
6
|
const ibge_client_js_1 = require("../services/ibge-client.js");
|
|
7
|
+
const cache_js_1 = require("../services/cache.js");
|
|
7
8
|
const LOCALIDADES_COMUNS = {
|
|
8
9
|
BR: "N1[all]",
|
|
9
10
|
REGIOES: "N2[all]",
|
|
@@ -298,7 +299,7 @@ FLUXO RECOMENDADO para tabelas desconhecidas:
|
|
|
298
299
|
|
|
299
300
|
Args:
|
|
300
301
|
- tabela_id: código da tabela
|
|
301
|
-
-
|
|
302
|
+
- variaveis (opcional): ID(s) da(s) variável(is) separados por pipe "|" (ex: "93|94|95"). Sem valor = todas.
|
|
302
303
|
- localidade: "BR", "ESTADOS", "REGIOES", 2 dígitos=estado (ex:"35"), 7 dígitos=município
|
|
303
304
|
- periodo: "last"=mais recente, "-6"=últimos 6, "-12"=últimos 12, "AAAA"=ano específico
|
|
304
305
|
Use ibge_periodos_tabela para ver períodos válidos e evitar HTTP 500.
|
|
@@ -309,16 +310,16 @@ Args:
|
|
|
309
310
|
Tabelas populares: 9514=Censo2022 pop, 9543=Censo2022 alfabetização, 5938=PIB Municipal, 1419=IPCA, 6381=PNAD Desocupação`,
|
|
310
311
|
inputSchema: zod_1.z.object({
|
|
311
312
|
tabela_id: zod_1.z.string().describe("Código da tabela SIDRA"),
|
|
312
|
-
|
|
313
|
+
variaveis: zod_1.z.string().optional().describe("Código(s) da(s) variável(is) separados por pipe '|' (ex: '93|94|95')"),
|
|
313
314
|
localidade: zod_1.z.string().default("BR").describe("BR, ESTADOS, REGIOES, código de estado (2 dígitos) ou município (7 dígitos)"),
|
|
314
315
|
periodo: zod_1.z.string().default("last").describe("last, last[N], AAAA, AAAAMM"),
|
|
315
316
|
classificacao: zod_1.z.string().optional().describe("Filtro de classificação no formato 'ID[cats]'"),
|
|
316
317
|
}),
|
|
317
318
|
annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: true },
|
|
318
|
-
}, async ({ tabela_id,
|
|
319
|
+
}, async ({ tabela_id, variaveis, localidade, periodo, classificacao }) => {
|
|
319
320
|
try {
|
|
320
321
|
const codigoLocalidade = resolverLocalidade(localidade);
|
|
321
|
-
const variavelStr =
|
|
322
|
+
const variavelStr = variaveis ?? "allxp";
|
|
322
323
|
// Normalizar formato do período:
|
|
323
324
|
// last[N] → last N (SIDRA usa espaço não colchetes)
|
|
324
325
|
// -N → last N (shorthand da API: -6 = últimos 6)
|
|
@@ -331,7 +332,7 @@ Tabelas populares: 9514=Censo2022 pop, 9543=Censo2022 alfabetização, 5938=PIB
|
|
|
331
332
|
let url = `${ibge_client_js_1.IBGE_API.v3}/agregados/${tabela_id}/periodos/${periodoNorm}/variaveis/${variavelStr}?localidades=${codigoLocalidade}`;
|
|
332
333
|
if (classificacao)
|
|
333
334
|
url += `&classificacao=${classificacao}`;
|
|
334
|
-
const dados = await (0, ibge_client_js_1.ibgeFetch)(url);
|
|
335
|
+
const dados = await (0, ibge_client_js_1.ibgeFetch)(url, cache_js_1.TTL.SIDRA_DATA);
|
|
335
336
|
if (!dados?.length)
|
|
336
337
|
return { content: [{ type: "text", text: `Nenhum dado encontrado para a tabela ${tabela_id}.` }] };
|
|
337
338
|
const resultado = formatarResultadoSidra(dados);
|
|
@@ -346,6 +347,7 @@ Tabelas populares: 9514=Censo2022 pop, 9543=Censo2022 alfabetização, 5938=PIB
|
|
|
346
347
|
description: `Consulta o IPCA — principal indicador de inflação do Brasil.
|
|
347
348
|
Args:
|
|
348
349
|
- ultimos_meses: número de meses a retornar (1-60, padrão: 12)
|
|
350
|
+
IMPORTANTE: para tipos "acumulada_ano" ou "acumulada_12_meses", retorna apenas os N períodos mais recentes
|
|
349
351
|
- tipo: "variacao_mensal" (padrão), "variacao_acumulada_ano", "variacao_acumulada_12_meses"
|
|
350
352
|
Retorna: série histórica com variação percentual por mês.`,
|
|
351
353
|
inputSchema: zod_1.z.object({
|
|
@@ -356,8 +358,10 @@ Retorna: série histórica com variação percentual por mês.`,
|
|
|
356
358
|
annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: false, openWorldHint: false },
|
|
357
359
|
}, async ({ ultimos_meses, tipo }) => {
|
|
358
360
|
try {
|
|
359
|
-
const varMap = { variacao_mensal: "63", variacao_acumulada_ano: "69", variacao_acumulada_12_meses: "
|
|
360
|
-
|
|
361
|
+
const varMap = { variacao_mensal: "63", variacao_acumulada_ano: "69", variacao_acumulada_12_meses: "2265" };
|
|
362
|
+
// Para variações acumuladas, cada ponto já é um acumulado, então usamos "last N" normalmente
|
|
363
|
+
const periodo = `last%20${ultimos_meses}`;
|
|
364
|
+
const url = `${ibge_client_js_1.IBGE_API.v3}/agregados/1419/periodos/${periodo}/variaveis/${varMap[tipo]}?localidades=N1[all]`;
|
|
361
365
|
const dados = await (0, ibge_client_js_1.ibgeFetch)(url);
|
|
362
366
|
return { content: [{ type: "text", text: `**IPCA — ${tipo.replace(/_/g, " ")}** (últimos ${ultimos_meses} meses)\n${formatarResultadoSidra(dados)}` }] };
|
|
363
367
|
}
|
|
@@ -517,5 +521,83 @@ Exemplos:
|
|
|
517
521
|
return { content: [{ type: "text", text: (0, ibge_client_js_1.formatToolError)(err) }] };
|
|
518
522
|
}
|
|
519
523
|
});
|
|
524
|
+
server.registerTool("ibge_pib_estados", {
|
|
525
|
+
title: "PIB dos Estados",
|
|
526
|
+
description: `Consulta o Produto Interno Bruto (PIB) dos estados brasileiros.
|
|
527
|
+
Dados oficiais do IBGE para análise econômica regional.
|
|
528
|
+
|
|
529
|
+
Args:
|
|
530
|
+
- ano (obrigatório): Ano do PIB (ex: 2021, 2020, 2019...)
|
|
531
|
+
- uf_id (opcional): ID do estado específico (ex: 35=SP). Omita para todos os estados.
|
|
532
|
+
- per_capita (opcional): true para PIB per capita, false para PIB total (padrão: false)
|
|
533
|
+
|
|
534
|
+
Retorna ranking de PIB com participação percentual no total nacional.
|
|
535
|
+
Exemplo: "Qual o PIB de São Paulo em 2021?" ou "Ranking de PIB dos estados"`,
|
|
536
|
+
inputSchema: zod_1.z.object({
|
|
537
|
+
ano: zod_1.z.number().int().min(1995).max(2030).describe("Ano do PIB (ex: 2021)"),
|
|
538
|
+
uf_id: zod_1.z.number().int().positive().optional().describe("ID do estado (ex: 35=SP). Omita para todos."),
|
|
539
|
+
per_capita: zod_1.z.boolean().default(false).describe("true=PIB per capita, false=PIB total"),
|
|
540
|
+
}),
|
|
541
|
+
annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: true },
|
|
542
|
+
}, async ({ ano, uf_id, per_capita }) => {
|
|
543
|
+
try {
|
|
544
|
+
const localidade = uf_id ? `N3[${uf_id}]` : "N3[all]";
|
|
545
|
+
const variavel = per_capita ? "47" : "37"; // 37=PIB total, 47=PIB per capita
|
|
546
|
+
const url = `${ibge_client_js_1.IBGE_API.v3}/agregados/5938/periodos/${ano}/variaveis/${variavel}?localidades=${localidade}&view=flat`;
|
|
547
|
+
const dados = await (0, ibge_client_js_1.ibgeFetch)(url, cache_js_1.TTL.SIDRA_DATA);
|
|
548
|
+
const series = dados?.[0]?.resultados?.[0]?.series ?? [];
|
|
549
|
+
if (series.length === 0) {
|
|
550
|
+
return {
|
|
551
|
+
content: [{
|
|
552
|
+
type: "text",
|
|
553
|
+
text: `Dados não encontrados para ${ano}.\n\nVerifique se o ano está disponível. Dados de PIB geralmente têm 2-3 anos de defasagem.`
|
|
554
|
+
}]
|
|
555
|
+
};
|
|
556
|
+
}
|
|
557
|
+
const estados = series.map((s) => ({
|
|
558
|
+
nome: s.localidade.nome,
|
|
559
|
+
id: s.localidade.id,
|
|
560
|
+
valor: parseFloat(Object.values(s.serie)[0] ?? "0"),
|
|
561
|
+
})).filter((e) => e.valor > 0);
|
|
562
|
+
estados.sort((a, b) => b.valor - a.valor);
|
|
563
|
+
if (uf_id && estados.length === 1) {
|
|
564
|
+
// Resultado único
|
|
565
|
+
const estado = estados[0];
|
|
566
|
+
const valorFormatado = per_capita
|
|
567
|
+
? `R$ ${estado.valor.toLocaleString("pt-BR", { minimumFractionDigits: 2 })}`
|
|
568
|
+
: `R$ ${(estado.valor / 1000).toLocaleString("pt-BR", { minimumFractionDigits: 3 })} mil`;
|
|
569
|
+
return {
|
|
570
|
+
content: [{
|
|
571
|
+
type: "text",
|
|
572
|
+
text: `## ${estado.nome} — PIB ${ano}\n\n**${per_capita ? "PIB per capita" : "PIB total"}:** ${valorFormatado}\n\n_Fonte: IBGE PIB dos Municípios (Tabela 5938)_`
|
|
573
|
+
}]
|
|
574
|
+
};
|
|
575
|
+
}
|
|
576
|
+
// Múltiplos estados - ranking
|
|
577
|
+
const total = estados.reduce((acc, e) => acc + e.valor, 0);
|
|
578
|
+
const linhas = estados.map((e, i) => {
|
|
579
|
+
const pct = ((e.valor / total) * 100).toFixed(2);
|
|
580
|
+
const valorFormatado = per_capita
|
|
581
|
+
? `R$ ${e.valor.toLocaleString("pt-BR", { minimumFractionDigits: 2 })}`
|
|
582
|
+
: `R$ ${(e.valor / 1000).toLocaleString("pt-BR", { minimumFractionDigits: 0 })} mil`;
|
|
583
|
+
return `${i + 1}. **${e.nome}**: ${valorFormatado}${per_capita ? "" : ` (${pct}%)`}`;
|
|
584
|
+
});
|
|
585
|
+
const titulo = per_capita ? "PIB per capita" : "PIB total";
|
|
586
|
+
const totalFormatado = per_capita
|
|
587
|
+
? ""
|
|
588
|
+
: `\n**Brasil:** R$ ${(total / 1000).toLocaleString("pt-BR", { minimumFractionDigits: 0 })} mil`;
|
|
589
|
+
return {
|
|
590
|
+
content: [{
|
|
591
|
+
type: "text",
|
|
592
|
+
text: (0, ibge_client_js_1.truncateIfNeeded)(`## ${titulo} por Estado — ${ano}${totalFormatado}\n\n` +
|
|
593
|
+
linhas.join("\n") +
|
|
594
|
+
`\n\n_Fonte: IBGE PIB dos Municípios (Tabela 5938)_\n_${per_capita ? "Valores em reais por habitante" : "Valores em milhares de reais"}_`)
|
|
595
|
+
}]
|
|
596
|
+
};
|
|
597
|
+
}
|
|
598
|
+
catch (err) {
|
|
599
|
+
return { content: [{ type: "text", text: (0, ibge_client_js_1.formatToolError)(err) }] };
|
|
600
|
+
}
|
|
601
|
+
});
|
|
520
602
|
}
|
|
521
603
|
//# sourceMappingURL=sidra.js.map
|
package/dist/tools/sidra.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sidra.js","sourceRoot":"","sources":["../../src/tools/sidra.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"sidra.js","sourceRoot":"","sources":["../../src/tools/sidra.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED