Mobile Automation with Mobile MCP
Tools for driving real phones, emulators and simulators. All tools are
prefixed mobile_.
Workflow
- Pick a device. Call
mobile_list_available_devicesand use one of the returned devices for every subsequent call. If no device is available, ask the user to connect one (Android:adb devicesmust show it; iOS: simulator booted or device paired). - See the screen. Prefer
mobile_list_elements_on_screen— it returns the accessibility tree with element labels and coordinates. It is faster, cheaper, and more reliable than screenshots. Fall back tomobile_take_screenshotonly when elements are missing or you need visual confirmation (games, canvas-drawn UI, image content). - Act.
mobile_click_on_screen_at_coordinates,mobile_swipe_on_screen,mobile_type_keys,mobile_press_button(HOME, BACK, VOLUME, ENTER),mobile_launch_app/mobile_terminate_app/mobile_list_apps,mobile_open_url. - Verify after every action. Re-list elements (or re-screenshot) to confirm the UI changed as expected before the next step. Mobile UIs animate; if the expected element is not there yet, wait briefly and check again rather than tapping blind.
Tips
- Click the center of an element's bounds, not its top-left corner.
- To type, first tap the input field, confirm it is focused, then
mobile_type_keys. - Use
mobile_save_screenshotwhen the user wants the image as a file;mobile_start_screen_recording/mobile_stop_screen_recordingfor videos. - App crashed?
mobile_list_crashesandmobile_get_crashfetch crash logs. - Screen size from
mobile_get_screen_size; coordinates are in that space. - Real devices in the cloud (no local hardware):
mobile_login_to_cloud_provider, thenmobile_list_remote_devices/mobile_allocate_remote_device, and release withmobile_release_remote_devicewhen done. See https://mobilenext.ai/docs for details.