FlyTrap

io.github.FlyTrap-QAPublished by GitHub account FlyTrap-QAv0.1.4Updated Nov 7, 2026

FlyTrap mobile QA results for agents: bugs with evidence, screen graphs, network hosts, SDKs, diffs.

VerifiedSTDIODesktop onlyDeveloper ToolsData & Analytics

Overview

AI-generated overview

Lets a coding agent read FlyTrap mobile QA crawl results: bugs with screenshots and logs, screen graphs, network hosts, SDKs and build diffs.

What you can do
  • Inspect projects and builds: account, projects, builds, build summaries, detected SDKs and permissions
  • Review bugs and evidence: severity-sorted bugs with screenshots, UI XML, logcat windows, failed network calls and performance peaks
  • Map app behavior: screen graph of reached screens and tap edges, plus contacted hosts with call counts, bytes and error rates
  • Compare builds: SDK, permission, deep link, host, bug and screen diffs between two builds
  • Benchmark and competitors: UX benchmark against competitor apps, list, find, pin and unpin competitors
  • Public catalog without a key: look up apps, app profiles, SDKs and permissions
When to use it
Useful when you debug a mobile app with an AI coding agent and want it to reason from real device crawl evidence rather than guesses, or when you need to compare two builds or benchmark your app against competitors.
Requirements
Runs locally via npx as a stdio process and needs Node 20 or newer. Set FLYTRAP_API_KEY (a key from the FlyTrap dashboard) for project tools; public catalog tools work without it. Network access to the FlyTrap API is required. A read-scope key is enough unless the agent should queue crawls.
Before you install
The API key is a credential sent as a Bearer header to the FlyTrap API; prefer a read-scope key and revoke it in the dashboard if exposed. Tools that change state (start_crawl, add_competitor, remove_competitor) need a crawl-scope key and explicit confirmation, and queuing crawls may consume account resources. Tool output originates from crawled apps and is marked untrusted, so treat bug titles, log lines and URLs with care.

Installation

In SourceWeft

  1. Open FlyTrap in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

@flytrap-qa/mcp

MCP server for FlyTrap. It lets the coding agent you already use (Cursor, Claude Code, Codex, Windsurf, Zed, VS Code) read the results of FlyTrap crawls: the bugs FlyTrap found in your app with screenshots, UI XML, logcat and failed network calls, the screen graph, the hosts your build talks to, detected SDKs and permissions, and diffs between two builds.

FlyTrap runs your real Android or iOS build on real devices and records everything. This package only reads those results. It does not run apps, decompile binaries or touch your source tree.

Quick start

  1. Sign in at dashboard.flytrap.dev, open Settings > API keys and create a key. Pick the read scope unless you want the agent to be able to queue new crawls.
  2. Add the server to your agent:
json
{  "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):

toml
[mcp_servers.flytrap]command = "npx"args = ["-y", "@flytrap-qa/mcp@latest"]env = { FLYTRAP_API_KEY = "ft_live_..." }
  1. Ask things like:
  • "Why does onboarding break in my app? Show me the evidence."
  • "Which third-party hosts does build 1184 talk to before the consent screen?"
  • "What changed between build 1180 and 1184: SDKs, permissions, bugs?"
  • "Which SDKs does com.booking ship on Android?" (public catalog, no key needed)

Without FLYTRAP_API_KEY the public catalog tools still work.

Tools

Your projects (need FLYTRAP_API_KEY):

ToolWhat it returns
whoamiThe account the key belongs to
list_projectsProjects the key owner can read, with the selected crawl run
get_projectOne project plus its live crawl status
list_buildsBuilds of a project with binary SHA-256 and provenance
get_build_summaryVersion, size, SDK/permission counts, bug and test counts, screens, network and performance totals
get_sdksDetected SDKs with confidence and evidence sources, declared permissions, deep links
list_bugsBugs from the selected run, sorted by severity
get_bug_evidenceScenario, failed step, screenshots and XML (signed URLs), logcat error window, failed network calls, performance peaks, a ready ai_prompt
get_screen_graphScreens reached and the tap edges between them
get_network_hostsHosts contacted with call counts, bytes and error rates
search_appsDescribe an app in plain language, get the crawled public apps whose observed features cover it, with matched and missing requirements
get_ux_benchmarkYour build's features next to the same feature in competitor and same-genre apps, with screenshots
list_competitorsCompetitors pinned to a project's UX benchmark
find_competitorsSearch crawled public apps and Google Play for apps to pin
add_competitorPin a crawled app, or create a store project from a Google Play package and pin it (crawl scope, confirm: true to create)
remove_competitorUnpin a competitor (crawl scope)
compare_buildsSDK, permission, deep link, host, bug and screen diff between two builds
start_crawlQueues a new crawl of the current build. Needs the crawl scope and confirm: true

Public catalog (no key): lookup_app, get_app_profile, lookup_sdk, lookup_permission.

Agent skill

skills/flytrap/SKILL.md tells an agent when to reach for which tool and how to cite evidence. Copy it into your project's skills folder (for example .claude/skills/flytrap/SKILL.md or .cursor/rules/) or point your agent at it.

Configuration

The only setting is FLYTRAP_API_KEY: your personal key from Settings > API keys (ft_live_...). It is optional for the public catalog tools. The server always talks to https://api.flytrap.dev.

Security

  • The key is sent only to https://api.flytrap.dev as a Bearer header, over https. It is never written to disk or logged.
  • Keys are scoped. A read key cannot start crawls, create keys or change billing, even if the agent asks. Revoke keys any time in the dashboard.
  • Keys inherit the project permissions of the user who created them. A key never sees another account's private projects.
  • Tool output is bounded (log windows, call caps, 4 MiB per response) and marked as untrusted app data, since bug titles, log lines and URLs originate from the crawled app and its traffic.
  • start_crawl, add_competitor and remove_competitor are the only tools that change anything; they need a key created with the crawl scope. Queuing a crawl (start_crawl, or add_competitor with a Google Play package) also requires an explicit confirm: true.

REST instead of MCP

Every tool maps to a REST endpoint, so an agent that can run curl can do the same without this package:

bash
curl -H "Authorization: Bearer $FLYTRAP_API_KEY" https://api.flytrap.dev/project/projectscurl -H "Authorization: Bearer $FLYTRAP_API_KEY" https://api.flytrap.dev/project/projects/1248/bugscurl -H "Authorization: Bearer $FLYTRAP_API_KEY" https://api.flytrap.dev/project/projects/1248/bugs/BUG-102/evidence

API reference: https://api.flytrap.dev/docs

Development

bash
npm installnpm testFLYTRAP_API_KEY=ft_live_... npm run inspect   # MCP Inspector UI

Requires Node 20 or newer. Published from GitHub Actions on tags (v*) with npm provenance.

Source: README.md at commit a4a1ed8

Tools

0
SourceWeft has not started this package in its sandbox yet, so its tools are not known.

Version history

1
  1. v0.1.4LatestNov 7, 2026

Score

50% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts