Fase 5 — câmbio, IBGE e domínios .br
O server agora expõe 15 tools (eram 10).
Added
- 5 novas MCP tools:
consultar_cambio— cotação de câmbio (USD, EUR, GBP, JPY, CHF, CAD, AUD, DKK, NOK, SEK) em BRL por data, boletins PTAX/BACENlistar_moedas— moedas com cotação disponívellistar_estados— as 27 UFs com código IBGE, nome, região e capitalconsultar_municipios— municípios de uma UF com código IBGE de 7 dígitosconsultar_dominio_br— disponibilidade/status de domínio .br no registro.br (DNS, expiração, sugestões)
- Domínio .br com
ttlMs: 0— disponibilidade é time-sensitive, nunca é cacheada - Testes do caminho de retry 5xx/429 do cliente HTTP (fake timers escopados, backoff virtual sem custo real na suíte)
- 27 testes novos (Vitest), totalizando 86 verdes; cobertura 97% lines / 93% branches
Changed
- Versão single-source:
src/version.tslê opackage.jsonem runtime;index.tse o User-Agent do cliente HTTP importam de lá (bump de release agora é em UM lugar) - Registry declarativo de tools em
src/index.ts: arrayTOOLS+ loop de registro no lugar de 10 blocosregisterToolrepetidos
Notes
- A fonte de câmbio NÃO expõe o dia corrente (400
NO_TODAY_DATE, "política de cache"): comdataomitida a tool consulta ontem (a cotação mais recente disponível) e rejeitadata= hoje localmente com explicação. Em data sem pregão (fim de semana, feriado) a própria BrasilAPI devolve os boletins do último dia útil anterior — sem fallback no cliente. consultar_dominio_brexige sufixo.brna validação local: a API aceitagoogle.come responde silenciosamente sobregoogle.com.br; a validação garante que a resposta é sobre o domínio perguntado.- FIPE continua fora — issue #805 da BrasilAPI segue aberta (403 do upstream).