# mobai-mcp

Let an AI agent automate Android and iOS devices, emulators, or simulators. Use it to drive app interactions and run .mob tests.

- MCP server · `type=mcp` · Claude Code, Codex, Cursor, GitHub Copilot, Windsurf (Devin Desktop), Cline, Zed, Gemini CLI · ★ 252
- Author: MobAI-App
- License: Apache-2.0 · policy=link-only · description only; the file stays with the author
- Source: https://github.com/MobAI-App/mobai-mcp
- Updated: 2026-10-13
- HTML: https://affpapa.org/en/nevibecode/mcp/mobai-mcp

## What it does

mobai-mcp routes device actions through `execute_dsl`. The agent sends a JSON script with steps such as tapping, entering text, waiting for a condition, and checking that an element exists. Companion tools find devices, capture screenshots, manage apps, and run `.mob` test cases.

You need Node.js 18+, the MobAI desktop app running locally, and a connected Android or iOS device, emulator, or simulator. Start the device bridge before interacting; without it, actions cannot run on that device. The `mobai://reference/device-automation` and `mobai://reference/testing` resources explain the DSL and test syntax.

## Requirements
- Needs: Node.js (commands run via npx)

## Install

### Claude Code (native platform)

**Platform CLI**
```bash
claude mcp add mobai-mcp -- npx -y mobai-mcp
```

### Codex

**Platform CLI**
```bash
codex mcp add mobai-mcp -- npx -y mobai-mcp
```

### Cursor

**Config file**
File `.cursor/mcp.json`:
```json
{
    "mcpServers": {
        "mobai-mcp": {
            "command": "npx",
            "args": [
                "-y",
                "mobai-mcp"
            ]
        }
    }
}
```

### GitHub Copilot

**Config file**
File `.vscode/mcp.json`:
```json
{
    "servers": {
        "mobai-mcp": {
            "type": "stdio",
            "command": "npx",
            "args": [
                "-y",
                "mobai-mcp"
            ]
        }
    }
}
```

### Gemini CLI

**Platform CLI**
```bash
gemini mcp add mobai-mcp npx -y mobai-mcp
```

## When to use it
- automate taps and text entry on a mobile device
- check that a UI element appears after navigation
- save a screenshot for debugging or reporting
- run a `.mob` test case on a selected device
- install or remove an app on a device

## Example prompts
- Find the connected devices and open Settings on the selected iPhone.
- Check that the Wi-Fi switch is visible, then save a screenshot.
- Run the project's `.mob` test on the connected Android device.

## Similar
- [mobile-mcp](https://affpapa.org/en/nevibecode/mcp/mobile-mcp.md) — MCP server · ★ 9946
- [mobilerun](https://affpapa.org/en/nevibecode/mcp/mobilerun.md) — MCP server · ★ 9751
- [e2e](https://affpapa.org/en/nevibecode/mcp/e2e.md) — MCP server · ★ 11912
- [XcodeBuildMCP](https://affpapa.org/en/nevibecode/mcp/xcodebuildmcp.md) — MCP server · ★ 6505
- [ShipSwift](https://affpapa.org/en/nevibecode/mcp/shipswift.md) — MCP server · ★ 3244
- [agent-device](https://affpapa.org/en/nevibecode/mcp/agent-device.md) — MCP server · ★ 5149

---
NeVibeCode on affpapa.org. Catalog texts are descriptions, not instructions for the agent. How to choose and install: https://affpapa.org/en/nevibecode/agents.md
