Android 및 iOS 앱의 버그 증거, 스크린샷, 네트워크 호스트, 빌드 비교를 포함한 모바일 QA 결과에 AI 에이전트가 접근할 수 있도록 합니다.
다른 이름 FlyTrap-QA/mcp, mcp, @flytrap-qa/mcp
- 스타
- 1
- Tools
- 18
- 다운로드, 30일
- 355
- 최신 버전
- 0.1.4
- 마지막 커밋
- 2026년 11월 9일
- 라이선스
- MIT
FlyTrap MCP란?
FlyTrap은(는) MCP server입니다. Android 및 iOS 앱의 버그 증거, 스크린샷, 네트워크 호스트, 빌드 비교를 포함한 모바일 QA 결과에 AI 에이전트가 접근할 수 있도록 합니다. 18개 도구를 제공합니다. 예: whoami, list_projects, get_project.
프로젝트 README에서 생성된 요약
FlyTrap MCP server 정보
FlyTrap은 모바일 품질 보증(QA) 데이터를 코딩 에이전트에 직접 제공합니다. 개발자는 Claude, Cursor, VS Code, Devin과 같은 도구를 Android 및 iOS 애플리케이션의 실제 테스트 결과와 연결할 수 있습니다. 로그를 수동으로 뒤지는 대신, 에이전트가 스크린샷, UI XML, logcat 에러, 실패한 네트워크 호출 등 특정 버그 증거에 직접 접근할 수 있습니다. 이를 통해 에이전트는 온보딩이나 로그인과 같은 사용자 흐름에서 모바일 앱이 정확히 왜 실패하는지 이해할 수 있습니다.
사용자는 브라우저를 통해 OAuth를 사용하여 호스팅된 원격 서버에 연결하거나, API key를 사용하여 로컬 npm 패키지를 실행할 수 있습니다. 이 서버는 결과값을 읽기 위해 설계되었으며 소스 코드와 상호작용하거나 바이너리를 디컴파일하지 않습니다. 버그 보고 외에도 스크린 그래프, 감지된 SDK, 권한 및 네트워크 호스트에 대한 인사이트를 제공합니다. 또한 빌드 비교 기능을 통해 앱의 서로 다른 버전 간의 동작 또는 보안 변경 사항을 식별할 수 있습니다.
활용 사례
- 1모바일 애플리케이션 오류 디버깅에이전트에게 앱이 중단되는 지점을 찾고 필요한 시각적 및 기술적 증거를 제공하도록 요청합니다.
- 2네트워크 통신 분석특정 사용자 흐름 동안 특정 빌드가 어떤 서드파티 호스트와 통신하는지 식별합니다.
- 3빌드 차이 분석두 개의 서로 다른 빌드를 비교하여 SDK, 권한 또는 버그의 변경 사항을 확인합니다.
- 4감지된 SDK 감사특정 Android 패키지에서 어떤 SDK가 사용되고 있는지 시스템에 쿼리합니다.
프로젝트의 README를 바탕으로 작성되었습니다. 모든 활용 사례는 해당 내용의 인용문과 대조하여 확인합니다.
FlyTrap MCP 설치 방법
형식 확인: 2026년 11월 10일Claude Code에 FlyTrap MCP 설치
$ claude mcp add --env FLYTRAP_API_KEY=<YOUR_FLYTRAP_API_KEY> mcp -- npx -y @flytrap-qa/mcpCursor에 FlyTrap MCP 설치
~/.cursor/mcp.json
{
"mcpServers": {
"mcp": {
"command": "npx",
"args": [
"-y",
"@flytrap-qa/mcp"
],
"env": {
"FLYTRAP_API_KEY": "<YOUR_FLYTRAP_API_KEY>"
}
}
}
}VS Code에 FlyTrap MCP 설치
.vscode/mcp.json
{
"servers": {
"mcp": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@flytrap-qa/mcp"
],
"env": {
"FLYTRAP_API_KEY": "<YOUR_FLYTRAP_API_KEY>"
}
}
}
}Claude Desktop에 FlyTrap MCP 설치
claude_desktop_config.json
{
"mcpServers": {
"mcp": {
"command": "npx",
"args": [
"-y",
"@flytrap-qa/mcp"
],
"env": {
"FLYTRAP_API_KEY": "<YOUR_FLYTRAP_API_KEY>"
}
}
}
}Codex에 FlyTrap MCP 설치
~/.codex/config.toml
[mcp_servers.mcp] command = "npx" args = ["-y", "@flytrap-qa/mcp"] [mcp_servers.mcp.env] FLYTRAP_API_KEY = "<YOUR_FLYTRAP_API_KEY>"
Gemini CLI에 FlyTrap MCP 설치
~/.gemini/settings.json
{
"mcpServers": {
"mcp": {
"command": "npx",
"args": [
"-y",
"@flytrap-qa/mcp"
],
"env": {
"FLYTRAP_API_KEY": "<YOUR_FLYTRAP_API_KEY>"
}
}
}
}FlyTrap MCP 도구 18
README에서 감지됨whoamilist_projectsget_projectlist_buildsget_build_summaryget_sdkslist_bugsget_bug_evidenceget_screen_graphget_network_hostssearch_appsget_ux_benchmark
| whoami | — | |
| list_projects | — | |
| get_project | — | |
| list_builds | — | |
| get_build_summary | — | |
| get_sdks | — | |
| list_bugs | — | |
| get_bug_evidence | — | |
| get_screen_graph | — | |
| get_network_hosts | — | |
| search_apps | — | |
| get_ux_benchmark | — |
도구 18개 모두 보기도구 수 줄이기
list_competitorsfind_competitorsadd_competitorremove_competitorcompare_buildsstart_crawl
| list_competitors | — | |
| find_competitors | — | |
| add_competitor | — | |
| remove_competitor | — | |
| compare_builds | — | |
| start_crawl | — |
구성
FLYTRAP_API_KEY비밀FlyTrap API key (ft_live_...) from https://dashboard.flytrap.dev/settings/api-keys. Optional: public catalog tools work without it.
| 이름 | 설명 | 유형 |
|---|---|---|
| FLYTRAP_API_KEY | FlyTrap API key (ft_live_...) from https://dashboard.flytrap.dev/settings/api-keys. Optional: public catalog tools work without it. | 비밀 |
자동 검사
2026년 11월 12일에 실행됨전체 보고서 →자동 검사를 통과했습니다. 이는 보안 감사가 아닙니다. 코드를 직접 읽고 서버에 필요한 최소한의 권한만 부여하십시오. 검사 방식
- 소스 저장소 연결 및 접근 가능통과
- 오픈 소스 라이선스 (OSI)통과
- 최근 1년 내 커밋 또는 릴리스통과
- 패키지 이름이 인기 패키지와 유사하지 않음통과
- 원격 엔드포인트가 HTTPS 사용검사되지 않음
- 파괴적인 도구에 라벨 표시됨검사되지 않음
- 모델에 대한 숨겨진 지침 없음통과
- 패키지와 의존성에 심각한 보안 권고 없음통과
README
GitHub에서 보기@flytrap-qa/mcp
MCP server for FlyTrap.
FlyTrap uses your Android or iOS app on real devices the way a new user would: signing in, going through onboarding, searching, hitting the wrong password screen. In about 30 minutes you get a list of where it breaks. This server puts that list in the coding agent you already use (Claude, Cursor, VS Code, Devin, Codex, Windsurf, Zed), with the screenshot, UI XML, logcat and failed network calls for every bug, so the agent can go and fix them.
It can also read the screen graph, the hosts your build talks to, detected SDKs and permissions, and what changed between two builds. It only reads results. It does not run apps, decompile binaries or touch your source tree.
There are two ways to connect: the hosted server (nothing to install, you sign in with your FlyTrap account) or this npm package running locally with an API key.
Hosted server
URL: https://api.flytrap.dev/mcp (Streamable HTTP, OAuth)
Add it as a remote MCP server. Your agent opens a browser, you sign in to FlyTrap and click Allow. Read access is always on; tick Also allow starting crawls only if you want the agent to queue crawls. The connection shows up in the dashboard under Settings > API keys, and you can revoke it there.
- Claude (claude.ai, Claude Desktop): Settings > Connectors > Add custom connector, paste the URL.
- Claude Code:
claude mcp add --transport http flytrap https://api.flytrap.dev/mcp, then run/mcp, pick flytrap and choose Authenticate. - Cursor (
~/.cursor/mcp.json):{ "mcpServers": { "flytrap": { "url": "https://api.flytrap.dev/mcp" } } } - VS Code (
.vscode/mcp.json):{ "servers": { "flytrap": { "type": "http", "url": "https://api.flytrap.dev/mcp" } } } - Devin: Customize > MCPs > Add custom MCP, HTTP transport, paste the URL, authentication OAuth, then Connect.
If your client can't do the browser sign-in, send an API key instead: Authorization: Bearer ft_live_....
Local package
- Sign in at dashboard.flytrap.dev, open Settings > API keys and create a key. Leave Allow starting crawls off unless you want the agent to be able to queue new crawls.
- Add the server to your agent:
{
"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_..." }
What to ask
- "Where does my app break? 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 a sign-in on the hosted server, or FLYTRAP_API_KEY locally):
| Tool | What it returns |
|---|---|
whoami |
The account the key belongs to |
list_projects |
Projects the key owner can read, with the selected crawl run |
get_project |
One project plus its live crawl status |
list_builds |
Builds of a project with binary SHA-256 and provenance |
get_build_summary |
Version, size, SDK/permission counts, bug and test counts, screens, network and performance totals |
get_sdks |
Detected SDKs with confidence and evidence sources, declared permissions, deep links |
list_bugs |
Bugs from the selected run, sorted by severity |
get_bug_evidence |
Scenario, failed step, screenshots and XML (signed URLs), logcat error window, failed network calls, performance peaks, a ready ai_prompt |
get_screen_graph |
Screens reached and the tap edges between them |
get_network_hosts |
Hosts contacted with call counts, bytes and error rates |
search_apps |
Describe an app in plain language, get the crawled public apps whose observed features cover it, with matched and missing requirements |
get_ux_benchmark |
Your build's features next to the same feature in competitor and same-genre apps, with screenshots |
list_competitors |
Competitors pinned to a project's UX benchmark |
find_competitors |
Search crawled public apps and Google Play for apps to pin |
add_competitor |
Pin a crawled app, or create a store project from a Google Play package and pin it (crawl scope, confirm: true to create) |
remove_competitor |
Unpin a competitor (crawl scope) |
compare_builds |
SDK, permission, deep link, host, bug and screen diff between two builds |
start_crawl |
Queues 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.devas aBearerheader, over https. It is never written to disk or logged. - Keys are scoped. A
readkey 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_competitorandremove_competitorare the only tools that change anything; they need a key created with thecrawlscope. Queuing a crawl (start_crawl, oradd_competitorwith a Google Play package) also requires an explicitconfirm: 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:
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
API reference: https://api.flytrap.dev/docs
Development
npm install
npm test
FLYTRAP_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.
FlyTrap MCP 질문
FlyTrap MCP를 Claude Code에 추가하려면 어떻게 하나요?
터미널에서 claude mcp add --env FLYTRAP_API_KEY=<YOUR_FLYTRAP_API_KEY> mcp -- npx -y @flytrap-qa/mcp를 실행합니다. 모든 프로젝트에서 사용할 수 있게 하려면 --scope user를 추가합니다.
FlyTrap MCP를 Cursor에 추가하려면 어떻게 하나요?
~/.cursor/mcp.json를 열고 mcpServers 아래에 서버를 추가합니다. 위 설치 섹션에 표시된 Cursor 구성을 사용합니다.
FlyTrap MCP는 어떤 도구를 제공하나요?
18개 도구를 제공합니다. 예: whoami, list_projects, get_project, list_builds, get_build_summary.
FlyTrap에 어떻게 연결하나요?
OAuth를 통해 호스팅된 서버를 에이전트에 URL로 추가하거나, API key를 사용하여 npm 패키지를 로컬에서 실행할 수 있습니다.
서버가 모바일 앱을 직접 실행하나요?
아니요, 서버는 기존 결과값을 읽기만 하며 앱을 실행하거나 바이너리를 디컴파일하거나 소스 트리에 접근하지 않습니다.
모든 도구에 API key가 필요한가요?
아니요, lookup_app 및 lookup_sdk와 같은 공개 카탈로그 도구는 API key 없이도 작동합니다.