Skip to main content
Glama

アイリ Android

GitHub

A MCP server that allows airi all LLMs to control Android devices. This project is a child project of airi.

Features

Input Control

  • input_tap - Tap on the screen at given coordinates

  • input_swipe - Swipe from one coordinate to another

  • input_text - Input text on the device

  • input_keyevent - Send a key event to the device

  • input_press - Press the current key

  • input_roll - Roll the trackball

Device Information

  • wm_size - Get the physical screen size

  • wm_density - Get the display density

  • cpu_percent - Get CPU usage percentage

  • cpu_count - Get the number of CPU cores

  • battery_level - Get battery level

  • battery_stats - Get detailed battery statistics

UI & Activity

  • ui_get_hierarchy - Get UI hierarchy (XML)

  • utils_top_activity - Get the top activity

  • utils_top_activities - Get all top activities

  • utils_package_version - Get package version info

Device Management

  • device_connect - Connect to a device at specified host and port

  • device_reset - Reset device connection

  • shell_execute - Execute any shell command

Related MCP server: scrcpy-mcp

Usage

docker run --rm -it -p 3000:3000 -e ADB_HOST=host.docker.internal ghcr.io/proj-airi/airi-android:v0.3.4
# or stdio mode
docker run --rm -i -e USE_STDIO=true -e ADB_HOST=host.docker.internal ghcr.io/proj-airi/airi-android:v0.3.4

For agents supporting MCP, you can use the following configuration:

// mcp.json
{
  "mcpServers": {
    // http mode
    "airi-android-http": {
      "url": "http://localhost:3000/mcp"
    },
    // stdio mode
    "airi-android-stdio": {
      "command": "docker",
      "args": [
        "run",
        "--rm",
        "-i",
        "-e",
        "USE_STDIO=true",
        "-e",
        "ADB_HOST",
        "ghcr.io/proj-airi/airi-android:v0.3.4"
      ],
      "env": {
        "ADB_HOST": "host.docker.internal"
      }
    }
  }
}

Run Directly

Requires Bun to be installed.

# Install dependencies
bun install

# Start server (HTTP mode, port 3000)
bun run start

# Or use stdio mode
USE_STDIO=true bun run start

Development Setup

Prerequisites

  1. Install Bun

  2. Install Android Platform Tools

  3. Connect an Android device (via USB or adb connect for emulators)

Commands

# Install dependencies
bun install

# Run tests
bun test

# Start development server
bun run dev

# Build binary
bun run build

# Lint code
bun run lint

# Type check
bun run typecheck

Contributing

See AGENTS.md for code guidelines.

Environment Variables

Variable

Description

Default

USE_STDIO

Set to true to use stdio transport mode

false

ADB_HOST

ADB server host address

localhost

Tech Stack

License

MIT

Related MCP Connectors

Related MCP Servers

  • F
    license
    A
    quality
    D
    maintenance
    A MCP server that enables AI assistants to control Android devices via ADB, supporting device info, screen control, input simulation, app management, shell execution, file transfer, and UI parsing.
    20
    -
  • A
    license
    A
    quality
    A
    maintenance
    MCP server that gives AI agents full vision and control over Android devices via ADB and scrcpy. Supports screenshots, input, apps, UI automation, shell, files, and clipboard.
    38
    231 npm
    93
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    An MCP server for mobile automation that enables LLMs to interact with Android and iOS devices through screenshot, tap, swipe, log analysis, and app lifecycle management.
    13 npm
    3
    MIT