Labsco
mobile-next logo

Mobile Next

β˜… 5,400

from mobile-next

A platform-agnostic server for scalable mobile automation and development across iOS, Android, simulators, and emulators.

πŸ”₯πŸ”₯πŸ”₯πŸ”₯βœ“ VerifiedFreeQuick setup

Mobile Next - MCP server for Mobile Development and Automation | iOS, Android, Simulator, Emulator, and Real Devices

This is a Model Context Protocol (MCP) server that enables scalable mobile automation, development through a platform-agnostic interface, eliminating the need for distinct iOS or Android knowledge. You can run it on emulators, simulators, and real devices (iOS and Android). This server allows Agents and LLMs to interact with native iOS/Android applications and devices through structured accessibility snapshots or coordinate-based taps based on screenshots.

https://github.com/user-attachments/assets/bb084777-beb3-4930-ae6f-8d3fe694ddde

πŸš€ Mobile MCP Roadmap: Building the Future of Mobile

Join us on our journey as we continuously enhance Mobile MCP! Check out our detailed roadmap to see upcoming features, improvements, and milestones. Your feedback is invaluable in shaping the future of mobile automation.

πŸ‘‰ Explore the Roadmap

Main use cases

How we help to scale mobile automation:

  • πŸ“² Native app automation (iOS and Android) for testing or data-entry scenarios.

  • πŸ“ Scripted flows and form interactions without manually controlling simulators/emulators or real devices (iPhone, Samsung, Google Pixel etc)

  • 🧭 Automating multi-step user journeys driven by an LLM

  • πŸ‘† General-purpose mobile application interaction for agent-based frameworks

  • πŸ€– Enables agent-to-agent communication for mobile automation usecases, data extraction

Main Features

  • πŸš€ Fast and lightweight: Uses native accessibility trees for most interactions, or screenshot based coordinates where a11y labels are not available.

  • πŸ€– LLM-friendly: No computer vision model required in Accessibility (Snapshot).

  • 🧿 Visual Sense: Evaluates and analyses what's actually rendered on screen to decide the next action. If accessibility data or view-hierarchy coordinates are unavailable, it falls back to screenshot-based analysis.

  • πŸ“Š Deterministic tool application: Reduces ambiguity found in purely screenshot-based approaches by relying on structured data whenever possible.

  • πŸ“Ί Extract structured data: Enables you to extract structred data from anything visible on screen.

🎯 Platform Support

Platform Supported iOS Real Device βœ… iOS Simulator βœ… Android Real Device βœ… Android Emulator βœ…

πŸ”§ Available MCP Tools

πŸ“± Click to expand tool list - List of Mobile MCP tools for automation and development

For detailed implementation and parameter specifications, see src/server.ts

Device Management

  • mobile_list_available_devices - List all available devices (simulators, emulators, and real devices)

  • mobile_get_screen_size - Get the screen size of the mobile device in pixels

  • mobile_get_orientation - Get the current screen orientation of the device

  • mobile_set_orientation - Change the screen orientation (portrait/landscape)

App Management

  • mobile_list_apps - List all installed apps on the device

  • mobile_launch_app - Launch an app using its package name

  • mobile_terminate_app - Stop and terminate a running app

  • mobile_install_app - Install an app from file (.apk, .ipa, .app, .zip)

  • mobile_uninstall_app - Uninstall an app using bundle ID or package name

Screen Interaction

  • mobile_take_screenshot - Take a screenshot to understand what's on screen

  • mobile_save_screenshot - Save a screenshot to a file

  • mobile_list_elements_on_screen - List UI elements with their coordinates and properties

  • mobile_click_on_screen_at_coordinates - Click at specific x,y coordinates

  • mobile_double_tap_on_screen - Double-tap at specific coordinates

  • mobile_long_press_on_screen_at_coordinates - Long press at specific coordinates

  • mobile_swipe_on_screen - Swipe in any direction (up, down, left, right)

Input & Navigation

  • mobile_type_keys - Type text into focused elements with optional submit

  • mobile_press_button - Press device buttons (HOME, BACK, VOLUME_UP/DOWN, ENTER, etc.)

  • mobile_open_url - Open URLs in the device browser

Platform Support

  • iOS: Simulators and real devices via native accessibility and WebDriverAgent

  • Android: Emulators and real devices via ADB and UI Automator

  • Cross-platform: Unified API works across both iOS and Android

πŸ—οΈ Mobile MCP Architecture

πŸ“š Wiki page

More details in our wiki page for setup, configuration and debugging related questions.

Thanks to all contributors ❀️

We appreciate everyone who has helped improve this project.