Mobai MCP logo

Mobai MCP

Automates Android and iOS devices through MobAI using batched DSL actions, app controls, screenshots, and .mob test runs.

Install Mobai MCP

Pick your client, then add it in one click or paste the config.

STDIONode.js
~/Library/Application Support/Claude/claude_desktop_config.json
claude_desktop_config.json
{
  "mcpServers": {
    "mobai-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "mobai-mcp"
      ]
    }
  }
}

Settings → Developer → Edit Config, merge this into mcpServers, then fully quit and reopen Claude Desktop.

Automated check passed— started and listed 22 tools correctly (16d ago).

Overview

The mobai-mcp MCP server connects AI assistants to the local MobAI desktop app for controlling Android and iOS devices, emulators, and simulators. It uses a stdio MCP process and sends device operations to MobAI over its local HTTP API at 127.0.0.1:8686. Most interaction goes through execute_dsl, which batches taps, text entry, swipes, waits, assertions, observations, web automation, metrics, and recording steps. Use it for mobile UI automation, app debugging, screenshots, or running existing .mob test cases when the MobAI desktop app and a device are available.

Use cases

  • Automate mobile UI flows across Android and iOS targets
  • Run DSL-based interaction and assertion batches
  • Install, launch, debug, and remove mobile apps
  • Capture screenshots for testing and debugging
  • Run parameterized .mob test cases on selected devices

Key features

  • Android and iOS device discovery
  • Batched DSL-first mobile automation
  • App installation and debugging
  • Fast and full-quality screenshots
  • Device bridge and lease management
  • .mob test discovery and execution

Tools22

What Mobai MCP lets your agent do. Expand a tool for its parameters.

Verified live~4.8k tokens of context

Security & health

What it can reach and how reliably it runs — from our own checks, not the maintainer’s claims.

ActiveLast checked 1d ago

Recent health check succeeded.

24/26 checks healthy over the last 91d

What it can do

From the 22 tools this server returned when we ran it.

Runs commands · 2Can delete or modify data · 4Handles credentials · 1Makes network requests · 2Read-only tools · 16
Network at startup3 connections
Files written at startupNone
Install scriptsNone
npm provenanceNot published
Package age290 days
Maintainers1

Observed 2026-10-24 in an isolated sandbox. A description of reach, not a security audit.

Supply-chain signal

No high-severity advisories surfaced by our automated scan.

Critical 0High 0Medium 0Low 0

Scanned 2d ago via OSV.dev · mobai-mcp (npm)

Adoption & maintenance

Factual signals from GitHub, npm, and our automated checks — not a rating.

GitHub stars254Stargazers on the source repository.
npm downloads987Package downloads in the last 30 days.
Last commit2d agoMost recent push to the default branch.
Availability100%Our rolling endpoint + install checks that succeeded.
Install checkPassedOur sandbox started it and listed its tools.
Tools exposed22Callable tools this server registers over MCP.
Directory activity4 viewsConfig copies, upvotes, and views on AllMCPs.

How Mobai MCP works

What mobai-mcp MCP server does

The mobai-mcp MCP server exposes MobAI mobile automation through MCP. It can discover connected Android and iOS devices, start and stop the device automation bridge, manage exclusive device leases, inspect screens, and operate installed applications. Supported targets include physical devices, emulators, and simulators.

The main automation entry point is execute_dsl. An assistant sends a JSON script containing ordered steps rather than calling separate MCP tools for every tap or swipe. The DSL supports interaction actions such as tapping, typing, and swiping, along with waits, predicates, assertions, conditional behavior, web automation, metrics, screen recording, and observation.

How it works

The MCP process communicates with the MobAI desktop application, which must be running locally. The desktop app provides an HTTP API at http://127.0.0.1:8686. A typical workflow is to list devices, start the bridge for the selected device, and pass its identifier to execute_dsl. Calling an interaction on an unclaimed device normally claims it automatically, although claim_device can be used when explicit session ownership is needed.

Before attempting device interaction, read the server resources at mobai://reference/device-automation and mobai://reference/testing. They describe the DSL schema, actions, predicates, failure strategies, and .mob file syntax.

Test cases are stored as .mob files in project directories. The assistant can discover the active project or list known projects, then run a selected case with test_run. Project files are read, written, and edited through filesystem tools; MCP provides discovery and execution rather than file editing.

Setup and configuration

The mobai-mcp MCP server requires Node.js 18 or newer, the MobAI desktop app, and a connected Android or iOS device, emulator, or simulator. Install it through an MCP client's stdio configuration with npx -y mobai-mcp. Claude Code, Cursor, Claude Desktop, Windsurf, and Cline are documented configuration targets; other clients can use the same command if they support stdio MCP servers.

No environment variables are documented as required. If the server reports a connection refusal, verify that the MobAI desktop app is installed and running and that the local API is reachable. A bridge must be started before device interaction, and the iOS bridge may take up to a minute to become available.

Tools and capabilities

  • Discover devices and retrieve details with list_devices and get_device.
  • Control bridge state and device leases with start_bridge, stop_bridge, claim_device, and release_device.
  • Inspect the display with get_screenshot for fast, potentially downscaled analysis or save_screenshot for a full-quality PNG.
  • List, install, remove, and debug applications with list_apps, install_app, uninstall_app, and debug_app. Installation accepts local .apk or .ipa paths.
  • Run batched automation scripts with execute_dsl.
  • Find test projects and cases with test_get_active and test_list_projects, then execute a .mob case with test_run, including optional ${name} parameter substitution.

Limitations and notes

The server depends on the MobAI desktop app and does not operate devices independently. It also requires a connected or running target device and an available automation bridge. get_screenshot favors speed over image quality and may downscale its result; it returns a scale factor. Screenshots are saved under /tmp/mobai/screenshots/ by default, including screenshots extracted from DSL observations.

Device interaction is intended to be batched through the DSL, so scripts should include suitable predicates, waits, assertions, and failure handling. The iOS bridge startup can be slower than Android. The project documentation identifies Apache 2.0 as the license.

Reviews

No reviews yet — be the first to share how it worked for you.

Frequently Asked Questions about Mobai MCP

mobai-mcp is an MCP server that connects AI assistants to the local MobAI desktop app and its Android and iOS automation targets. Its main tools discover devices, start bridges, capture screenshots, manage apps, execute batched DSL actions, and run .mob test cases on devices, emulators, or simulators.

Install it with the stdio command `npx -y mobai-mcp` in your MCP client configuration. The documented examples cover Claude Code, Cursor, Claude Desktop, Windsurf, and Cline. Node.js 18 or newer and the MobAI desktop app are also required.

Yes, mobai-mcp works with Cursor through a `.cursor/mcp.json` stdio configuration. Set the server command to `npx` and pass `-y` and `mobai-mcp` as arguments, then make sure the MobAI desktop app is running locally.

Call `start_bridge` for the target device before attempting interaction. The bridge is required for device operations, and the iOS bridge may take up to a minute to start. Also confirm that the device is connected and that the MobAI desktop app is running.

Related MCP servers

Add a badge to your READMEShow it’s listed — live SVG, Markdown or HTML.

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewMobai MCP AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/mobai-mcp?style=directory)](https://allmcps.com/mcp/mobai-mcp)
HTML Embed
<a href="https://allmcps.com/mcp/mobai-mcp"><img src="https://allmcps.com/api/badge/mobai-mcp?style=directory" alt="Mobai MCP on AllMCPs" /></a>