Tráfego outbound. Validado.Redes privadas. Inalcançáveis.
Cada pedido outbound é DNS-resolved, IP-validated e pinned antes de sair. Redes privadas são fisicamente inalcançáveis — enforced por padrão, em cada deploy.
Duas entradas. O mesmo checkpoint na saída.
Ambos os caminhos de deploy canalizam o tráfego outbound pelo mesmo proxy safeFetch — as regras de egress ficam consistentes independentemente de como seu MCP server roda.
Traga sua REST API
Cole seu OpenAPI URL. A plataforma faz parse do spec, gera MCP tools, e faz proxy de cada chamada API através do safeFetch.
Seu backend fica intacto. Cada invocação de tool se torna uma chamada HTTP ao seu endpoint. A AI fala com o proxy, o proxy fala com sua API.
Deploy de handlers custom
Escreva handlers JavaScript e faça deploy do seu MCP server no edge. Roda dentro de um V8 isolate — zero acesso direto a sockets de rede.
O host bridge interceta chamadas fetch e liga um AbortController à conexão SSE. Se o SSE cair, cada pedido pendente morre.
Três verificações. Depois passas.
safeFetch é uma função de 53 linhas em SsrfGuard.ts entre seu MCP server e a rede. Não é uma firewall, não é um WAF, não é uma cadeia de proxies.
Resolução DNS
Antes do pedido ser feito, o hostname é resolvido para um endereço IP. O IP — não o hostname — é o que é inspecionado a seguir.
Portão de IP Privado
O IP resolvido é comparado contra 9 padrões regex cobrindo loopback, Class A/B/C privado, link-local e ranges IPv6. Match encontrado → SSRF_BLOCKED.
IP Pinning
Um undici Agent custom com o IP resolvido hardcoded no callback de DNS lookup — prevenindo DNS rebinding. TLS/SNI funciona corretamente.
Limites rígidos.
Não diretrizes.Cada hostname resolvido antes da conexão. O IP resolvido é o que é validado — não o hostname. DNS rebinding é impossível.
Redes privadas inalcançáveis. Endpoints de metadata cloud selados. Apenas IPs públicos passam pelo checkpoint.
Conexão SSE cai — cada pedido outbound pendente morre. Cascata de AbortController. Zero conexões órfãs.
"O proxy é o teto. Excede-o, e o pedido morre."
Egress não é só sobre endereços IP.
Bloquear IPs privados resolve SSRF ao nível de rede. Mas e os dados sensíveis que saem do seu MCP server por respostas válidas? A camada Presenter funciona como uma firewall de egress em compile-time para seus dados.
Schemas Zod definem o que sai. Campos não declarados são removidos em RAM antes da serialização. @vurb.hide remove campos ao nível da definição do schema — nunca existem no tipo de output.
Lê cada linha.
Antes de confiares em nós.
Toda a camada de proteção egress do seu MCP server — open source, auditável, forkável.
Construído sobre undici
Cliente HTTP nativo do Node.js. API Agent para override de DNS lookup e IP pinning. Zero dependências externas.
Validação determinística
9 padrões regex contra o IP resolvido. Mesmo input, mesmo output. Sem heurísticas ML, sem bloqueio probabilístico.
Totalmente open source
safeFetch, schemas Presenter, validação Zod, regras de governance. Apache 2.0. Fork, audita, corre localmente.
Cole seu API URL. O egress está tratado.
safeFetch é injetado no momento do deploy. Ambos os caminhos — API proxy e handlers custom — recebem o mesmo checkpoint. Nada para instalar, nada para configurar.
Plano gratuito · Sem cartão de crédito
