ExecBro: a bridge between an agent and a running React Native app

ExecBro

An MCP server for a running React Native app: logs, network, state, screenshots and taps, so an agent verifies fixes on a device

  • 81 ★ on the repository
  • Last commit
MCP server

Broad access

Why this level

  • The tools run JavaScript in the app, tap the interface and mock network responses
  • Network requests and state are read, which may hold tokens and user data, although output passes a secret filter
All reasons and checks

igorzheludkov/execbro

Install

In your terminal, with SkillFoxx CLI

npx skillfoxx add mcp/execbro

Detects the agents on your machine, shows the access level and pins the version.

Other ways to install

Access and checks

How we review

Broad accessThe tool can change data, run commands or handle secrets.

  • The tools run JavaScript in the app, tap the interface and mock network responses
  • Network requests and state are read, which may hold tokens and user data, although output passes a secret filter

This is third-party code. Review the repository files before installing.

What it does

ExecBro connects a coding agent to a running React Native app. The agent reads console logs and network requests with headers, timing and bodies, inspects Redux, Apollo and Expo Router state, gets Metro errors, runs JavaScript in the app and finds the file and line where an element is rendered. No config is needed, and neither an SDK nor code changes are required. Device control works on the iOS Simulator through simctl and on Android through ADB. A single `tap` runs a chain of fiber tree, accessibility, OCR and coordinates, and `swipe` picks the platform itself. There are screenshots, text input, gestures, mocking of network responses to reach error branches and an offline mode. Secrets are protected: every tool's output passes one filter, a token is replaced with a handle like `[secret:api.acme.io]`, and `http_request` substitutes the value on the host side. The optional `execbro-sdk` wires in stores and the network layer for a full picture from the first request.

Who it is for. React Native developers debugging an app with Claude Code, Codex, Cursor or Windsurf who want fixes verified on a live device.

Good fit when

  • The code points to the wrong fix and you need to see real data and the screen
  • You need to reproduce a network error and walk the handling branch by mocking a response
  • An agent should tap buttons in the simulator and show the result in a screenshot
  • You need to tell where an error comes from: a host request and an in-app request are compared separately

Not a fit when

  • The bug is clear from the code alone: the author says device checks then cost more
  • The app is not on Metro: the server connects to a running Metro and targets React Native
  • You need to check a production build: JavaScript execution and response mocking are for development

Example request

Connect to the simulator, find which request caused the error on the order screen and verify the fix by tapping the button.

MCP

Transport
stdio
Authentication
not required

Limitations

Node.js 20.9 or newer and React Native on Metro are required. For iOS automation use AXe CLI or Facebook IDB, and Android needs ADB. On a cold start logs and network requests before the server connects are missed, and the `execbro-sdk` SDK closes that gap.

Anonymous analytics are collected by default: tool names, success and duration, and an environment variable from the docs turns it off. OCR runs on Google Cloud Vision and screenshots go there. The benchmark results the author claims, for example 14 successful runs of 18 with ExecBro against 9 of 18 without it on Claude Sonnet 5.5, belong to the author.

How to disable. Remove the server with `claude mcp remove execbro` or the entry from `.mcp.json`. The SDK leaves the app with `npm uninstall execbro-sdk` and removal of the `init()` call.

FAQ

How do I install ExecBro in Claude Code?

Run `claude mcp add execbro --scope project -- npx -y execbro@latest` and restart the client fully. The `project` scope writes a `.mcp.json` for the whole team.

Do I need to change my app code?

No, ExecBro works without the SDK. The `execbro-sdk` package is recommended: it adds request bodies, logs from startup and direct references to stores.

What about secrets leaking into the conversation?

Every tool's output passes one filter and tokens are replaced with a handle. `http_request` substitutes the value on the host side.

Which clients are supported?

Claude Code, Claude Desktop, Codex CLI, Cursor, VS Code Copilot, Windsurf, Zed and Gemini CLI, with setup in `docs/setup.md`.

Which device platforms are available?

The iOS Simulator through simctl and Android through ADB. Real multi-touch pinch exists only on the Android emulator.

Discussion

No questions or reviews yet.

Empryo is a coding agent for desktop, terminal and CI that maps your repository, edits code by symbol name and runs its own checks

CLIBroad access1.6KRepository stars

An MCP server that lets an agent read files, search code and run commands in a workspace

MCP serverBroad access1.2KRepository stars

Gives the agent an understanding of your repository: it indexes the code and answers questions about it in Claude Code, Cursor, Codex, Windsurf and more

PluginExtended access1.4KRepository stars

A debugger with no IDE: an agent sets breakpoints, steps through code and inspects variables in ten languages

MCP serverBroad access188Repository stars

An MCP server for the Node.js debugger: breakpoints, stepping, variable inspection and expression evaluation at a pause

MCP serverBroad access350Repository stars

Comparison with similar tools

Cards that share the main search query, and how they differ.

ToolOfficialAuthenticationRepository starsMain difference
ExecBro: a bridge between an agent and a running React Native app (this card)nonot required81
Mobile MCPnonot required10,529controls a device at the UI level without access to the JS runtime
Appium MCPyesnot required517runs Appium scenarios without reading app logs and state

README in short

The README opens with the author's measurement, then gives six setup steps, a section on the dashboard on the site and a list of capabilities: runtime interaction, device control, credential safety and multi-device debugging. Requirements, SDK setup, telemetry and privacy follow.

README badge

Report a problem