ExecBro
← back to docs

Available Tools

Complete reference for all MCP tools provided by React Native AI DevTools.

Usage Guide

ToolDescription
get_usage_guideGet recommended workflows for all tools. Call without params for overview, with a topic (setup, inspect, layout, interact, logs, network, state, bundle) for the full guide

Connection & Logs

ToolDescription
scan_metroScan for Metro servers and auto-connect. Called automatically by the agent at session start
connect_metroConnect to a specific Metro port. Usually called automatically — use manually only for non-standard ports
disconnect_metroDisconnect from all Metro servers. Frees the CDP slot. Reconnect with scan_metro
get_appsList connected apps. Run scan_metro first if none connected
get_connection_statusGet detailed connection health, uptime, and recent disconnects
ensure_connectionVerify/establish connection with health checks
get_logsRetrieve console logs (filtering, truncation, summary, TONL format)
search_logsSearch logs for specific text (truncation, TONL format)
clear_logsClear the log buffer

Network Tracking

ToolDescription
get_network_requestsRetrieve network requests (filtering, summary, TONL format)
search_networkSearch requests by URL pattern (TONL format)
get_request_detailsGet full details of a request (headers, body with truncation)
get_network_statsGet statistics: counts by method, status code, domain
clear_networkClear the network request buffer

App Inspection & Execution

ToolDescription
execute_in_appExecute simple JS expressions using globals discovered via list_debug_globals
list_debug_globalsDiscover available debug objects (Apollo, Redux, Expo Router, etc.)
inspect_globalInspect a global object to see its properties and callable methods
reload_appReload the app (auto-connects if needed). Use sparingly — Fast Refresh handles most changes

Tip: Install the optional SDK for full network capture from app startup, enhanced log collection, and access to global variables for navigation and state management.

Layout & Component Inspection

ToolDescription
get_screen_layoutScreen map of visible components with positions, sizes, and text content. Use extended=true for layout styles
get_component_treeFull React fiber tree. Use structureOnly=true for compact output
find_componentsFind components by name pattern. Use includeLayout=true for styles
inspect_componentInspect a component's props, state (hooks), and children
inspect_at_pointInspect component at (x, y) coordinates — frame, props, styles
get_inspector_selectionIdentify component at screen location with file paths and hierarchy
toggle_element_inspectorToggle RN's built-in Element Inspector overlay
get_imagesAccess shared image buffer (screenshots, tap verification frames)

Bundle Tools

ToolDescription
get_bundle_statusGet Metro bundler status and build state
get_bundle_errorsGet compilation errors with file locations
clear_bundle_errorsClear the bundle error buffer

UI Interaction (Cross-Platform)

ToolDescription
tapUnified tap— auto-detects platform, tries fiber tree → accessibility → OCR → coordinates. Accepts text, testID, component name, or pixel coordinates
ios_swipe / android_swipeSwipe gesture with start/end coordinates (scroll, navigate, pull-to-refresh)
ocr_screenshotExtract all visible text with tap-ready coordinates (works on iOS/Android)
Examples
tap with text="Submit"                  # Finds and taps by visible text
tap with testID="login-btn"             # Finds by testID prop
tap with component="HamburgerIcon"      # Finds by React component name
tap with x=300 y=600                    # Taps at pixel coordinates
tap with text="Menu" strategy="ocr"     # Forces OCR strategy only
tap with x=300 y=600 native=true        # Taps directly via ADB/simctl

iOS (Simulator)

ToolDescription
list_ios_simulatorsList available iOS simulators
ios_screenshotTake a screenshot from an iOS simulator
ios_install_appInstall an app bundle (.app) on a simulator
ios_launch_appLaunch an app by bundle ID
ios_open_urlOpen a URL (deep links or web URLs)
ios_terminate_appTerminate a running app
ios_boot_simulatorBoot a simulator by UDID
ios_swipeSwipe gesture (requires IDB/AXe)
ios_input_textType text into active field (requires IDB/AXe)
ios_buttonPress hardware button: HOME, LOCK, SIRI (requires IDB)
ios_key_eventSend key event by keycode (requires IDB)
ios_key_sequenceSend sequence of key events (requires IDB)
ios_describe_allGet full accessibility tree (requires IDB/AXe)
ios_describe_pointGet element at point (requires IDB/AXe)
ios_find_elementFind element by label/value (requires IDB/AXe, no screenshot)
ios_wait_for_elementWait for element to appear (requires IDB/AXe)

Android (ADB)

ToolDescription
list_android_devicesList connected Android devices and emulators via ADB
android_screenshotTake a screenshot from an Android device/emulator
android_install_appInstall an APK on an Android device/emulator
android_launch_appLaunch an app by package name
android_list_packagesList installed packages (with optional filter)
android_long_pressLong press at specific coordinates
android_swipeSwipe from one point to another
android_input_textType text at current focus point
android_key_eventSend key events (HOME, BACK, ENTER, etc.)
android_get_screen_sizeGet device screen resolution
android_describe_allGet full UI accessibility tree via uiautomator
android_describe_pointGet UI element info at specific coordinates
android_find_elementFind element by text/contentDesc/resourceId (no screenshot)
android_wait_for_elementWait for element to appear (useful for screen transitions)