Skip to content
Agentmart
Submit a tool

Mobai MCP

AI-powered mobile device automation for Android and iOS devices, emulators, and simulators

Connector by MobAI-App · GitHub account verified by the MCP Registry

IndexedApache-2.0Local (stdio)★ 252
Write a review

Install

Works with Claude Code, Codex, VS Code, Cursor, Windsurf, Claude Desktop. Read the repository before you give any tool access to your data.

npx agentmarket install connector/mobai-app-mobai-mcp

Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

AI-powered mobile device automation for Android and iOS devices, emulators, and simulators

Use cases: testing, mobile-development

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this server can do and what it asks for, from its tool list and install config. Checked Oct 25, 2026.

Tools
8 read · 9 write · 2 delete · 3 not yet classified
Secrets
None asked for
Install scripts
None found
Runs as
Node.js package

Tools by what they do 22

Read from the source code; the running server may list different tools.

Read 8 · Look things up without changing anything.

  • debug_eval
  • debug_state
  • get_device
  • get_screenshot
  • list_apps
  • list_devices
  • test_get_active
  • test_list_projects

Write 9 · Create, change, send or run things.

  • debug_attach
  • debug_detach
  • execute_dsl
  • install_app
  • release_device
  • save_screenshot
  • start_bridge
  • stop_bridge
  • test_run

Delete 2 · Delete, drop, revoke or wipe things.

  • debug_breakpoint
  • uninstall_app

Not yet classified 3 · We could not tell from the name and description.

  • claim_device
  • debug_app
  • debug_step

Files it touches

  • Any path the agent passes to its tools

Tools (22)

Read from the source code; the running server may differ. Descriptions are the server’s own words; hidden characters are shown as [U+…].

  • claim_device

    Claim exclusive use of a device for this session. You rarely need this: a host that requires claims auto-claims on your first action, and a host that does not require them needs no claim at all. Do not call it to fix a device that is missing, still connecting, or busy - none of those are lease problems. Use it only to reserve a device up front or to set a custom holder label. A session can hold several devices at once; each lease is attached automatically to subsequent calls targeting its device and auto-renews on every action, expiring only after the app's configured idle timeout. Call releas…

  • debug_app

    Launch an app in debug mode and write logs to a file. Returns the log file path — use Read/Grep to inspect logs. Use kill_app to stop.

  • debug_attach

    Start a debug session for an iOS app. Provide either bundle_id (launches and attaches) or pid (attaches to a running process). Optional breakpoints[] are armed before the target resumes. Read mobai://reference/debugging first.

  • debug_breakpoint

    Add or remove a breakpoint in the active debug session. For action=add provide spec; for action=remove provide id.

  • debug_detach

    End the debug session. Pass kill=true to terminate the debuggee; otherwise it keeps running.

  • debug_eval

    Evaluate a Swift/ObjC expression at the current pause. Session must be paused. Examples: "p defaultPrivate", "po self.viewModel.user.email", "frame variable".

  • debug_state

    Query the current debug session. Returns {state, breakpoints} by default. Set include_stack=true to also fetch the stack of the stopped thread; include_vars=true to also fetch frame[0] locals; include_threads=true to enumerate all threads.

  • debug_step

    Advance the target. "in" — step into next call (blocks ~ms, returns {state, breakpoints, stack, frame0_locals}) "over" — step over next call (same shape) "out" — run until current frame returns (same shape) "continue" — resume until next breakpoint (fire-and-forget; returns just {state, breakpoints} — poll debug_state for next stop)

  • execute_dsl

    Three rules that decide whether this tool is fast or slow, plus how to recover from the most common failure. They live here, not only in the reference, because agents that never open the reference default to the slow shape (measured: one step per call and 4x the screenshots): 1. BATCH. Pack every step you can confidently predict into ONE call, and end the script with wait_for plus observe to see the result. Split only when the next step depends on screen content you have not seen yet. 2. Prefer observe with "ui_tree" over screenshots. The tree is faster and far cheaper in context; use a screen…

  • get_device

    Get details about a specific device

  • get_screenshot

    Capture a fast, low-quality screenshot for LLM visual analysis. Returns the file path to the saved image. The image may be downscaled by an integer factor so its long edge stays ≤ 2000px; when that happens the response includes a scale factor — multiply any coordinates you read off the image by that factor before using them in device actions (tap, swipe, drag, long-press, etc.). UI tree coordinates are already in device pixels, do not scale those. Use this for AI/LLM processing only — for full-quality screenshots use save_screenshot instead. For tap coordinates of what is on screen (OCR text +…

  • install_app

    Install an app on the device from a local file path (.apk for Android, .ipa for iOS). For cloud devices nothing is installed directly: the build is uploaded to the provider's app storage and the response returns an appRef - pass it to start_bridge as "app" (restart the bridge if a session is already running).

  • list_apps

    List installed apps on the device

  • list_devices

    List all connected Android and iOS devices. Devices with "remote": true are physically attached to ANOTHER machine (a peer MobAI node, hostname in "node") and devices with "cloud": true live in a cloud device farm - all MobAI tools (tap, observe, DSL, screenshots, recording) work on them transparently, but host-local tooling (ffmpeg, simctl, adb, xcodebuild) cannot reach them; stay within MobAI tools for those devices. Devices with "inUse": true are claimed by the holder named in "inUseBy" - claim a different device or wait for the lease to expire.

  • release_device

    Release device lease(s) held by this session. With device_id, releases that device's lease; without, releases every lease this session holds. Succeeds quietly if nothing is held.

Show 7 more tools
  • save_screenshot

    Save a full-quality PNG screenshot to disk. Use this when you need a high-quality image for reporting, debugging, or sharing — not for LLM processing (use get_screenshot instead).

  • start_bridge

    Start the automation bridge on a device. Required before interacting with the device. For cloud devices this allocates the provider session; pass "app" to pick the app under test (e.g. the appRef returned by install_app).

  • stop_bridge

    Stop the automation bridge on a device

  • test_get_active

    Get the currently active test project directory and its .mob test cases. Use this to discover the project path and available tests. The agent can then read/write/create/delete .mob files directly in the returned directory.

  • test_list_projects

    List all known test project directories with their .mob test cases. Each project is a directory containing .mob script files.

  • test_run

    Run a .mob test case on a device. The case_path is relative to the project directory. Pass params to supply values for ${name} substitution in the script.

  • uninstall_app

    Uninstall an app from the device

Compare and alternatives

    Featured in

    Signals

    Stars
    252
    Forks
    22
    Open issues
    0
    Contributors
    1
    Last commit
    Oct 13, 2026 (15 days ago)
    Last release
    Jan 29, 2026 (9 months ago)

    From GitHub (fetched Oct 24, 2026).

    Details

    Registry name
    io.github.MobAI-App/mobai-mcp
    Version
    1.2.1
    Auth
    No auth
    Packages
    npm mobai-mcp
    License
    Apache-2.0
    First seen
    Oct 24, 2026
    Last checked
    Oct 24, 2026
    Cite this page

    Mobai MCP. Agent Mart. https://agentmart.dev/connectors/mobai-app-mobai-mcp (last updated 2026-10-24)