Skip to content

v0.3.0 — Fase 5: câmbio, IBGE, registro.br

Latest

Choose a tag to compare

@alanpcf alanpcf released this 02 Jul 05:19
· 2 commits to main since this release

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/BACEN
    • listar_moedas — moedas com cotação disponível
    • listar_estados — as 27 UFs com código IBGE, nome, região e capital
    • consultar_municipios — municípios de uma UF com código IBGE de 7 dígitos
    • consultar_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.ts lê o package.json em runtime; index.ts e o User-Agent do cliente HTTP importam de lá (bump de release agora é em UM lugar)
  • Registry declarativo de tools em src/index.ts: array TOOLS + loop de registro no lugar de 10 blocos registerTool repetidos

Notes

  • A fonte de câmbio NÃO expõe o dia corrente (400 NO_TODAY_DATE, "política de cache"): com data omitida a tool consulta ontem (a cotação mais recente disponível) e rejeita data = 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_br exige sufixo .br na validação local: a API aceita google.com e responde silenciosamente sobre google.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).