Documentação
Use o AppSafe na sua ferramenta de programação com IA
Conecte o AppSafe ao Claude Code, ao Cursor ou a qualquer outro cliente MCP, ou chame a REST API a partir dos seus próprios scripts. Seu agente pode escanear um site verificado, ler o prompt de correção de cada achado, aplicar a correção e verificar de novo, tudo em um único ciclo.
A API, o servidor MCP e as exportações de relatórios estão incluídos nos planos Pro, Agency e Team.
1. Crie uma chave de API
Acesse Painel → Conta → Chaves de API, dê um nome para a chave e copie-a. Ela é exibida só uma vez, e o AppSafe guarda apenas um hash. As chaves começam com appsafe_ e só funcionam nos seus próprios sites.
2. Conecte o servidor MCP
O servidor usa Streamable HTTP na URL abaixo e autentica com sua chave de API como token bearer. Substitua YOUR_KEY pela sua chave.
https://appsafe.dev/api/mcpClaude Code
Execute isto uma vez, ou adicione o JSON ao .mcp.json do seu projeto:
claude mcp add --transport http appsafe https://appsafe.dev/api/mcp \
--header "Authorization: Bearer YOUR_KEY"{
"mcpServers": {
"appsafe": {
"type": "http",
"url": "https://appsafe.dev/api/mcp",
"headers": {
"Authorization": "Bearer YOUR_KEY"
}
}
}
}Cursor
Adicione isto ao ~/.cursor/mcp.json, ou ao .cursor/mcp.json do seu projeto:
{
"mcpServers": {
"appsafe": {
"url": "https://appsafe.dev/api/mcp",
"headers": {
"Authorization": "Bearer YOUR_KEY"
}
}
}
}Outros clientes MCP: use a mesma URL e o mesmo cabeçalho Authorization.
Ferramentas
list_sites: Seus sites, se estão verificados e o último escaneamento de cada um.start_scan: Inicia um escaneamento completo de um site verificado, pela URL. Sites não verificados são recusados, com instruções de como verificá-los.get_scan_status: Em andamento, concluído ou com falha, com pontuação, nota e contagem por severidade.get_report: O relatório em Markdown (escrito para agentes), JSON ou SARIF.recheck_finding: Depois que você faz o deploy de uma correção, executa de novo só as verificações de um achado: corrigido, ainda presente ou inconclusivo.
O ciclo
- Peça ao seu agente para escanear seu site com o AppSafe.
- Ele lê o relatório em Markdown e aplica cada prompt de correção, começando pelos mais graves.
- Você faz o deploy das mudanças, porque o AppSafe escaneia o site em produção.
- O agente verifica cada achado de novo até que esteja corrigido.
Prompt de exemplo: “Escaneie myapp.com com o AppSafe, corrija os achados críticos e altos e verifique-os de novo depois que eu fizer o deploy.”
REST API
URL base: https://appsafe.dev/api/v1. Envie sua chave no cabeçalho Authorization como Bearer YOUR_KEY. A especificação OpenAPI descreve todos os endpoints.
| Endpoint | O que faz |
|---|---|
| GET /sites | Lista seus sites |
| POST /scans | Inicia um escaneamento completo de um site verificado (siteId ou url) |
| POST /sites/{id}/scans | Escaneia um site de novo |
| GET /scans/{id} | Status do escaneamento, pontuação, nota e contagem por severidade |
| GET /scans/{id}/findings | Achados com evidência, prompt de correção e ref para nova verificação |
| GET /scans/{id}/report?format=markdown | Relatório em markdown, json ou sarif |
| POST /findings/recheck | Verifica de novo um achado pela sua ref |
Exemplo
curl -X POST https://appsafe.dev/api/v1/scans \
-H "Authorization: Bearer YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{"url":"https://myapp.com"}'
curl "https://appsafe.dev/api/v1/scans/SCAN_ID/report?format=markdown" \
-H "Authorization: Bearer YOUR_KEY"Exportação de relatórios
Todo escaneamento concluído pode ser exportado em Markdown escrito para agentes de IA (evidência, URL afetada, prompt de correção e como verificar cada achado) ou em SARIF 2.1.0 para ferramentas de análise de código. Baixe-os a partir do escaneamento no seu painel ou use o endpoint de relatório.
Limites e segurança
- 120 requisições à API a cada 15 minutos por conta (30 novas verificações), além dos limites diários e de escaneamentos simultâneos do seu plano.
- Escaneamentos completos e novas verificações só rodam em sites que você verificou que são seus.
- Segredos são ocultados em todas as respostas, e achados de banco de dados listam apenas nomes de tabelas e campos, nunca os seus dados.
- Você pode revogar uma chave a qualquer momento na sua conta. Ela para de funcionar imediatamente.