FlyTrap MCP
Permite que agentes de codificação leiam resultados de rastreamento de QA mobile do FlyTrap: bugs com capturas de tela e logs, gráficos de telas, hosts de rede, SDKs, permissões e diffs de build para apps Android e iOS.
Documentação
@flytrap-qa/mcp
Servidor MCP para FlyTrap. Ele permite que o agente de codificação que você já usa (Cursor, Claude Code, Codex, Windsurf, Zed, VS Code) leia os resultados dos crawls do FlyTrap: os bugs que o FlyTrap encontrou no seu aplicativo com capturas de tela, XML da interface, logcat e chamadas de rede com falha, o grafo de telas, os hosts com os quais seu build se comunica, SDKs e permissões detectados, e diffs entre dois builds.
O FlyTrap executa seu build real de Android ou iOS em dispositivos reais e registra tudo. Este pacote apenas lê esses resultados. Ele não executa aplicativos, descompila binários nem toca na sua árvore de código-fonte.
Início rápido
- Entre em dashboard.flytrap.dev, abra Configurações > Chaves de API e crie uma chave. Escolha o escopo
reada menos que você queira que o agente possa enfileirar novos crawls. - Adicione o servidor ao seu agente:
{
"mcpServers": {
"flytrap": {
"command": "npx",
"args": ["-y", "@flytrap-qa/mcp@latest"],
"env": {
"FLYTRAP_API_KEY": "ft_live_..."
}
}
}
}
Claude Code: claude mcp add flytrap -e FLYTRAP_API_KEY=ft_live_... -- npx -y @flytrap-qa/mcp@latest
Codex CLI (~/.codex/config.toml):
[mcp_servers.flytrap]
command = "npx"
args = ["-y", "@flytrap-qa/mcp@latest"]
env = { FLYTRAP_API_KEY = "ft_live_..." }
- Faça perguntas como:
- "Por que a integração quebra no meu aplicativo? Mostre as evidências."
- "Com quais hosts de terceiros o build 1184 se comunica antes da tela de consentimento?"
- "O que mudou entre o build 1180 e o 1184: SDKs, permissões, bugs?"
- "Quais SDKs o com.booking distribui no Android?" (catálogo público, sem necessidade de chave)
Sem FLYTRAP_API_KEY, as ferramentas do catálogo público ainda funcionam.
Ferramentas
Seus projetos (precisam de FLYTRAP_API_KEY):
| Ferramenta | O que retorna |
|---|---|
whoami | A conta à qual a chave pertence |
list_projects | Projetos que o dono da chave pode ler, com a execução de crawl selecionada |
get_project | Um projeto mais seu status de crawl ao vivo |
list_builds | Builds de um projeto com SHA-256 do binário e proveniência |
get_build_summary | Versão, tamanho, contagens de SDK/permissões, contagens de bugs e testes, telas, totais de rede e desempenho |
get_sdks | SDKs detectados com confiança e fontes de evidência, permissões declaradas, deep links |
list_bugs | Bugs da execução selecionada, ordenados por severidade |
get_bug_evidence | Cenário, etapa com falha, capturas de tela e XML (URLs assinadas), janela de erro do logcat, chamadas de rede com falha, picos de desempenho, um ai_prompt pronto |
get_screen_graph | Telas alcançadas e as bordas de toque entre elas |
get_network_hosts | Hosts contatados com contagens de chamadas, bytes e taxas de erro |
search_apps | Descreva um aplicativo em linguagem simples e obtenha os aplicativos públicos rastreados cujos recursos observados o cobrem, com requisitos correspondentes e ausentes |
get_ux_benchmark | Os recursos do seu build ao lado dos mesmos recursos em aplicativos concorrentes e do mesmo gênero, com capturas de tela |
list_competitors | Concorrentes fixados no benchmark de UX de um projeto |
find_competitors | Pesquise aplicativos públicos rastreados e o Google Play para aplicativos a fixar |
add_competitor | Fixe um aplicativo rastreado, ou crie um projeto de loja a partir de um pacote do Google Play e fixe-o (escopo crawl, confirm: true para criar) |
remove_competitor | Desfixe um concorrente (escopo crawl) |
compare_builds | Diff de SDK, permissão, deep link, host, bug e tela entre dois builds |
start_crawl | Enfileira um novo crawl do build atual. Precisa do escopo crawl e confirm: true |
Catálogo público (sem chave): lookup_app, get_app_profile, lookup_sdk, lookup_permission.
Habilidade do agente
skills/flytrap/SKILL.md diz a um agente quando usar qual ferramenta e como citar evidências. Copie-o para a pasta de habilidades do seu projeto (por exemplo, .claude/skills/flytrap/SKILL.md ou .cursor/rules/) ou aponte seu agente para ele.
Configuração
A única configuração é FLYTRAP_API_KEY: sua chave pessoal de Configurações > Chaves de API (ft_live_...). É opcional para as ferramentas do catálogo público. O servidor sempre fala com https://api.flytrap.dev.
Segurança
- A chave é enviada apenas para
https://api.flytrap.devcomo um cabeçalhoBearer, via https. Ela nunca é gravada em disco nem registrada em logs. - As chaves têm escopo. Uma chave
readnão pode iniciar crawls, criar chaves ou alterar cobrança, mesmo que o agente peça. Revogue chaves a qualquer momento no painel. - As chaves herdam as permissões de projeto do usuário que as criou. Uma chave nunca vê os projetos privados de outra conta.
- A saída das ferramentas é limitada (janelas de log, limites de chamadas, 4 MiB por resposta) e marcada como dados de aplicativo não confiáveis, pois títulos de bugs, linhas de log e URLs se originam do aplicativo rastreado e de seu tráfego.
start_crawl,add_competitoreremove_competitorsão as únicas ferramentas que alteram algo; elas precisam de uma chave criada com o escopocrawl. Enfileirar um crawl (start_crawl, ouadd_competitorcom um pacote do Google Play) também exige umconfirm: trueexplícito.
REST em vez de MCP
Cada ferramenta mapeia para um endpoint REST, então um agente que pode executar curl pode fazer o mesmo sem este pacote:
curl -H "Authorization: Bearer $FLYTRAP_API_KEY" https://api.flytrap.dev/project/projects
curl -H "Authorization: Bearer $FLYTRAP_API_KEY" https://api.flytrap.dev/project/projects/1248/bugs
curl -H "Authorization: Bearer $FLYTRAP_API_KEY" https://api.flytrap.dev/project/projects/1248/bugs/BUG-102/evidence
Referência da API: https://api.flytrap.dev/docs
Desenvolvimento
npm install
npm test
FLYTRAP_API_KEY=ft_live_... npm run inspect # MCP Inspector UI
Requer Node 20 ou mais recente. Publicado a partir do GitHub Actions em tags (v*) com proveniência npm.