Skip to content

Integration · Developer tools

mobilerun.ai

Connect Claude & ChatGPT to Mobilerun

Ask your AI to start a task on one of your Mobilerun cloud phones, check how it went, or look at what is on a device's screen right now. It can control a device directly with taps, swipes, text and deep links, and read the steps and screenshots of past tasks. It also works with flows, triggers, mailboxes and SMS on your numbers.

Connect Mobilerun free

Free plan, no credit card. Takes about a minute.

Try asking

  • “Which of my phones are ready right now?”

    The AI lists your devices filtered to state ready, with their IDs, type and country.

  • “On the first ready phone, open the app store and check for updates to our app.”

    It starts an agent task on that device with your goal in plain language and returns the task ID.

  • “How did that task go, and what did the agent do?”

    It reads the task status, the step-by-step trajectory and the screenshots captured along the way.

What your AI can do

Agent tasks

Start AI agent tasks on a device, send follow-up instructions, follow status, steps and screenshots, and cancel a running task.

Direct device control

Tap, swipe, type text and open deep links, take screenshots, read on-screen elements and list installed apps.

Flows, mail and SMS

List and update flows, fire triggers, read flow runs, and read mailbox messages, verification codes and SMS on your numbers.

  • “What is on the screen of device 12 now?”

    It takes a screenshot and reads the on-screen elements, so it can see what to tap next.

  • “Get the latest verification code sent to our test mailbox.”

    It lists the one-time codes found in emails in that mailbox.

  • “Which flow runs failed yesterday?”

    It lists flow runs filtered by status and date, and reads the steps and errors of each.

197 tools for Mobilerun

These tools are switched on when you connect. You can switch any of them off, or require your approval before it runs.

  • approve_app_uploadVisible to othersConfirm a app (app id). Has effects visible outside this system. API summary: Confirm successful app upload.
  • approve_documentVisible to othersConfirm a document (file id). Has effects visible outside this system. API summary: Confirm a file upload by server-side HEAD validation.
  • archive_kioskMoves moneyArchive a kiosk (device id). Financial or irreversible action; may require approval. API summary: Disable kiosk (lock-task) mode.
  • attach_taskChanges dataAttach a task (task id). API summary: Attach Task.
  • cancel_phoneDeletesCancel a phone (phone id). Destructive action; may require approval. API summary: Cancel a phone-number purchase or an active rental.
  • cancel_taskDeletesStop a running agent task by `task_id`. The agent stops immediately; this cannot be resumed.
  • create_abortChanges dataCreate a new abort. Required: session id. API summary: Abort the named session's in-flight chat turn.
  • create_actionChanges dataCreate a new action. Required: catalog entry id or name. Search actions first to avoid duplicates. API summary: Create an action.
  • create_app_signed_upload_urlChanges dataCreate a new app. Required: bundle id, display name, files, version code or version name. Search apps first to avoid duplicates. API summary: Create a signed R2 upload URL for an app.
  • create_credential_fieldChanges dataCreate a new field for a credential. Required: field type or value. API summary: Add a credential field.
  • create_deviceChanges dataCreate a new device. Search devices first to avoid duplicates. API summary: Provision a new device.
  • create_device_addressChanges dataCreate a new address for a device. Required: latitude or longitude. API summary: Set device location.
  • create_device_clipboardChanges dataCreate a new clipboard for a device. Required: text. API summary: Set device clipboard.
  • create_device_globalChanges dataCreate a new global for a device. Required: action. API summary: Perform a global action.
  • create_device_languageChanges dataCreate a new language for a device. Required: locale. API summary: Set device language/locale.
  • create_device_overlayChanges dataCreate a new overlay for a device. Required: visible. API summary: Set overlay visibility.
  • create_device_proxyChanges dataCreate a new proxy for a device. API summary: Connect proxy.
  • create_device_rebootChanges dataCreate a new reboot for a device. API summary: Reboot a device.
  • create_device_recordingChanges dataCreate a new recording for a device. API summary: Start a device recording.
  • create_device_resetChanges dataCreate a new reset for a device. API summary: Reset a device to a fresh state.
  • create_device_timezoneChanges dataCreate a new timezone for a device. Required: timezone. API summary: Set device timezone.
  • create_dry_runChanges dataCreate a new dry run. Required: event type. API summary: Simulate event matching (dry run).
  • create_execute_scriptChanges dataCreate a new execute script. Required: script. API summary: Execute JavaScript in the device's Chrome browser (CDP).
  • create_execution_abortChanges dataCreate a new abort for a execution. API summary: Abort a running or pending execution.
  • create_flowChanges dataCreate a new flow. Required: actions, name or trigger id. Search flows first to avoid duplicates. API summary: Create a flow.
  • create_flow_actionChanges dataCreate a new action for a flow. Required: action id or position. Search actions first to avoid duplicates. API summary: Add an action to a flow.
  • create_flow_dry_runChanges dataCreate a new dry run for a flow. API summary: Dry-run a flow.
  • create_flow_unblockChanges dataCreate a new unblock for a flow. API summary: Unblock a flow.
  • create_ingestChanges dataCreate a new ingest. Required: event type. API summary: Ingest an event.
  • create_mailboxChanges dataCreate a new mailbox. Required: client request id. API summary: Claim or rent a mailbox.
  • create_mailbox_restartChanges dataCreate a new restart for a mailbox. API summary: Restart rent on an archived mailbox.
  • create_mailbox_uncancelChanges dataCreate a new uncancel for a mailbox. API summary: Undo a scheduled cancellation.
  • create_messageChanges dataCreate a new message. Required: peer key, up to message id or up to occurred at. API summary: Mark a conversation's inbound messages read up to a cursor.
  • create_packageChanges dataCreate a new package. Required: package name. API summary: Initialize a new package/app.
  • create_permissionDeletesCreate a new permission. Required: permission id or response. Destructive action; may require approval. API summary: Deliver a HITL approval/rejection to the user's active chat session.
  • create_phoneChanges dataCreate a new phone. API summary: Purchase a phone number.
  • create_proxyChanges dataCreate a new proxy. Required: country or type. API summary: Create a proxy.
  • create_questionChanges dataCreate a new question. Required: answers or question id. API summary: Deliver a question answer to the user's active chat session.
  • create_triggerChanges dataCreate a new trigger. Required: activation or name. Search triggers first to avoid duplicates. API summary: Create a trigger.
  • create_userChanges dataCreate a new user. API summary: Create a SOCKS5 user.
  • create_webhookDeletesCreate a new webhook. Required: url. Search webhooks first to avoid duplicates. Destructive action; may require approval. API summary: Register a webhook subscription.
  • create_webhook_rotate_secretDeletesCreate a new rotate secret for a webhook. Destructive action; may require approval. API summary: Rotate signing secret.
  • create_webhook_testDeletesCreate a new test for a webhook. Destructive action; may require approval. API summary: Send a one-shot test delivery.
  • delete_actionDeletesPermanently delete a action by action id. Destructive action; may require approval. API summary: Delete an action.
  • delete_appDeletesPermanently delete a app by app id. Destructive action; may require approval. API summary: Delete uploaded app.
  • delete_app_permissionDeletesPermanently delete a permission by permission. Destructive action; may require approval. API summary: Revoke app permission.
  • delete_credential_fieldDeletesPermanently delete a field by field type. Destructive action; may require approval. API summary: Delete a field from a credential.
  • delete_deviceDeletesPermanently delete a device by device id. Destructive action; may require approval. API summary: Terminate a device.
  • delete_device_addressesMoves moneyPermanently delete a address by device id. Financial or irreversible action; may require approval. API summary: Reset the device location to default.
  • delete_device_appDeletesPermanently delete a app by package name. Destructive action; may require approval. API summary: Delete app.
  • delete_device_documentsMoves moneyPermanently delete a document by device id. Financial or irreversible action; may require approval. API summary: Delete file.
  • delete_device_keyboardsMoves moneyPermanently delete a keyboard by device id. Financial or irreversible action; may require approval. API summary: Clear input.
  • delete_device_proxiesMoves moneyPermanently delete a proxy by device id. Financial or irreversible action; may require approval. API summary: Disconnect proxy.
  • delete_device_recordingDeletesPermanently delete a recording by recording id. Destructive action; may require approval. API summary: Delete a device recording.
  • delete_documentDeletesPermanently delete a document by document id. Destructive action; may require approval. API summary: Hard-delete a file.
  • delete_document_pendingsMoves moneyPermanently delete a pending by file id. Financial or irreversible action; may require approval. API summary: Cancel a pending upload (transitions to expired, deletes the underlying object).
  • delete_flowDeletesPermanently delete a flow by flow id. Destructive action; may require approval. API summary: Archive a flow.
  • delete_flow_actionDeletesPermanently delete a action by flow action id. Destructive action; may require approval. API summary: Remove an action from a flow.
  • delete_mailboxDeletesPermanently delete a mailbox by mailbox id. Destructive action; may require approval. API summary: Cancel or archive a mailbox.
  • delete_package_credentialDeletesPermanently delete a credential by credential name. Destructive action; may require approval. API summary: Delete a credential and all its fields.
  • delete_proxyDeletesPermanently delete a proxy by proxy id. Destructive action; may require approval.
  • delete_triggerDeletesPermanently delete a trigger by trigger id. Destructive action; may require approval.
  • delete_userDeletesPermanently delete a user by user id. Destructive action; may require approval. API summary: Delete a SOCKS5 user.
  • delete_webhookDeletesPermanently delete a webhook by webhook id. Destructive action; may require approval. API summary: Delete a webhook subscription.
  • download_an_owned_fileDownload the document for a document. API summary: Download an owned file.
  • download_documentDownload the document for a document. API summary: Download file.
  • fire_triggerChanges dataFire a trigger by `trigger_id` with a JSON `payload`, which runs every flow attached to it on its devices.
  • get_actionGet one action by action id. API summary: Get an action.
  • get_action_catalogGet one action catalog by catalog entry id. API summary: Get a catalog entry.
  • get_appGet one app by app id. API summary: Get app by ID.
  • get_app_eventGet one app event by app event id. API summary: Get an app event.
  • get_catalogGet one catalog by app event type. API summary: Get one app-event catalog entry by type/name.
  • get_deviceGet one device by `device_id`, with its state, type, country and Android version.
  • get_device_2Get one device. API summary: Count claimed devices.
  • get_device_recordingGet one recording for a device by recording id. API summary: Get a device recording.
  • get_flowGet one automation flow by `flow_id`, with its trigger, devices and settings.
  • get_flow_runGet one flow run by `execution_id`, with its status, steps and errors.
  • get_included_mailbox_capacityList capacities. API summary: Get included mailbox capacity.
  • get_included_phone_number_capacity_for_a_countryList capacities. Optional filters: country. API summary: Get included phone-number capacity for a country.
  • get_mailboxGet one mailbox by mailbox id. API summary: Get a mailbox.
  • get_mailbox_messageGet one message for a mailbox by message id. API summary: Get a mailbox message.
  • get_packageGet one package by package name. API summary: List credentials for a specific package.
  • get_package_credentialGet one credential for a package by credential name. API summary: Get a credential.
  • get_phoneGet one phone by phone id. API summary: Get phone number by id.
  • get_proxyGet one proxy by proxy id. API summary: Get proxy by ID.
  • get_screen_elementsGet the current on-screen UI elements (accessibility tree) of a device by `device_id`, useful for finding what to tap.
  • get_taskGet one agent task by `task_id`, with its goal, device, status and result.
  • get_task_screenshotGet one screenshot for a task by index. API summary: Get Task Screenshot.
  • get_task_statusGet the current status of an agent task by `task_id` (e.g. running, completed, failed).
  • get_task_stepsGet the step-by-step trajectory of what the agent did during a task by `task_id`.
  • get_task_ui_stateGet one ui state for a task by index. API summary: Get Task Ui State.
  • get_triggerGet one trigger by trigger id. API summary: Get a trigger.
  • get_userGet one user by user id. API summary: Get a SOCKS5 user by ID.
  • get_webhookGet one webhook by webhook id. API summary: Get a webhook subscription.
  • get_webhook_shipmentGet one shipment for a webhook by shipment id. API summary: Get a delivery with its attempts.
  • install_appChanges dataInstall an app on a device by `device_id`, identified by `package_name` or `bundle_id`.
  • list_action_catalogsList action catalogs. Optional filters: service. Results are paginated. API summary: List action catalog entries.
  • list_app_eventsList app events. Optional filters: event type, source, device id, from or to. Results are paginated. API summary: List structured app events.
  • list_app_versionsList versions for a app. API summary: List versions for an app.
  • list_available_countriesList countries. Optional filters: type. Results are paginated. API summary: List available countries.
  • list_capacitiesList capacities. API summary: Get workflow agent capacity.
  • list_catalogsList catalogs. API summary: List the app-event catalog.
  • list_countriesList countries. API summary: List dedicated-number countries.
  • list_credentialsList credentials. Results are paginated.
  • list_device_addressesList addresses for a device. API summary: Get device location.
  • list_device_appsList the apps installed on a device by `device_id`.
  • list_device_capabilitiesList capabilities for a device. API summary: Get capabilities for a specific device.
  • list_device_clipboardsList clipboards for a device. API summary: Get device clipboard.
  • list_device_documentsList documents for a device. Optional filters: path. API summary: List files.
  • list_device_fingerprintsList fingerprints for a device. API summary: Device fingerprint snapshot.
  • list_device_languagesList languages for a device. API summary: Get device language/locale.
  • list_device_overlaysList overlays for a device. API summary: Check if overlay is visible.
  • list_device_packagesList packages for a device. Optional filters: include system packages or include protected packages.
  • list_device_proxiesList proxies for a device. API summary: Get proxy connection state.
  • list_device_recordingsList recordings for a device. Optional filters: type or status. API summary: List device recordings.
  • list_device_tasksList the agent tasks that ran on a device by `device_id`.
  • list_device_timesList times for a device. API summary: Device time.
  • list_device_timezonesList timezones for a device. API summary: Get device timezone.
  • list_device_waitsList waits for a device. API summary: Wait for device to be ready.
  • list_devicesList your cloud phones and devices, filtered by `name`, `type`, `state` (e.g. ready, stopped) or `country`. Use this to find a device ID.
  • list_documentsList documents. Optional filters: zone. API summary: List the user's ready files, optionally filtered by zone.
  • list_event_typesList event types. API summary: List subscribable event types per source.
  • list_flow_actionsList actions for a flow.
  • list_flow_repairsList repairs for a flow. API summary: List self-healing repair episodes.
  • list_flow_runsList flow runs (executions), filtered by `flow_id`, `trigger_id`, `status` or a date range.
  • list_flowsList your automation flows, filtered by `search`, `status`, `enabled` or `trigger_id`.
  • list_installsList installs. API summary: List app installs.
  • list_mailbox_codesList one-time verification codes found in emails in a mailbox by `mailbox_id`, optionally from one `sender`.
  • list_mailbox_emailsList emails received in a mailbox by `mailbox_id`, filtered by `sender` or `has_otp`.
  • list_mailboxesList the email inboxes (mailboxes) available to your agents.
  • list_messagesList messages. Optional filters: direction, esim id, number id, status, peer number or peer key. Results are paginated. API summary: List the caller's own SMS inbox/outbox messages.
  • list_messages_for_a_chat_sessionList messages. Results are paginated. API summary: List messages for a chat session.
  • list_messages_list_conversationsList messages. Optional filters: esim id, number id, cursor last occurred at or cursor last message id. Results are paginated. API summary: List the caller's own SMS conversations, one row per thread.
  • list_metricsList metrics. Optional filters: flow id, trigger id, from or to. API summary: Get execution metrics.
  • list_modelsList models.
  • list_notification_event_typesList catalogs. API summary: List notification event types.
  • list_packagesList packages.
  • list_phone_messagesList messages for a phone. Optional filters: direction or since. Results are paginated. API summary: List messages (inbox + outbox) on a number.
  • list_phonesList phones. Results are paginated. API summary: List phone numbers.
  • list_preferencesList preferences. API summary: Get notification preferences.
  • list_proxiesList proxies. Optional filters: country. Results are paginated.
  • list_proxy_connectionsList connections for a proxy. Optional filters: user id, dst host, dst port, protocol, provider or country. Results are paginated. API summary: List Proxy Connections.
  • list_proxy_pingsList pings for a proxy. API summary: Latency check.
  • list_purposesList purposes. API summary: List phone purposes.
  • list_recording_trajectoriesList trajectories for a recording. API summary: Get a device recording trajectory.
  • list_recording_videosList videos for a recording. API summary: Get a device recording video.
  • list_service_methodsList methods for a service. API summary: List allowed methods for a service.
  • list_servicesList services. API summary: List available services.
  • list_shipmentsList shipments. Optional filters: status, since or event id. Results are paginated. API summary: List deliveries across all your webhooks.
  • list_statsList stats. Optional filters: since. API summary: Get delivery statistics.
  • list_storage_usagesList storage usages. API summary: Get the user’s storage usage.
  • list_task_screenshotsList the screenshots captured during an agent task by `task_id`.
  • list_task_ui_statesList ui states for a task. API summary: Get Task Ui States.
  • list_tasksList agent tasks, filtered by `status` or `query`, newest first by default.
  • list_tasks_chat_streamList tasks. API summary: Re-attach to the active turn stream.
  • list_user_connectionsList connections for a user. Optional filters: proxy id, dst host, dst port, protocol, provider or country. Results are paginated. API summary: List connections by SOCKS5 user.
  • list_usersList users. Optional filters: proxy id. Results are paginated. API summary: List SOCKS5 users.
  • list_webhook_shipmentsList shipments for a webhook. Optional filters: event id. Results are paginated. API summary: List deliveries for a webhook.
  • message_taskVisible to othersSend a follow-up instruction or answer to a running agent task by `task_id` with `message`.
  • open_deep_linkChanges dataOpen a deep link or URL on a device (`device_id`, `deep_link`), optionally in a specific app.
  • reject_questionVisible to othersReject a question. Has effects visible outside this system. API summary: Dismiss an outstanding question without answering.
  • restore_kioskVisible to othersRestore a kiosk (device id). Has effects visible outside this system. API summary: Enable kiosk (lock-task) mode.
  • resume_deviceChanges dataResume (unpark) a stopped device by `device_id`.
  • run_streamed_taskChanges dataCreate a new task. Required: device id or task. Search tasks first to avoid duplicates. API summary: Run Streamed Task.
  • search_actionsSearch actions by service, search, order by or order by direction. Use this to find existing actions before creating a new action. Results are paginated. API summary: List actions.
  • search_appsSearch apps by status, platform, query, sort by or order. Use this to find existing apps before creating a new app. Results are paginated. API summary: List apps.
  • search_triggersSearch triggers by activation, event type, search, order by or order by direction. Use this to find existing triggers before creating a new trigger. Results are paginated. API summary: List triggers.
  • search_webhooksSearch webhooks by status, search, mine or created by. Use this to find existing webhooks before creating a new webhook. Results are paginated. API summary: List your webhook subscriptions.
  • send_a_single_user_messageVisible to othersCreate a new message. Required: message or session id. Has effects visible outside this system. API summary: Send a single user message.
  • start_agent_taskChanges dataStart an AI agent task on a device: describe the goal in plain language in `task` and pass `device_id`. The agent operates the phone on its own and can tap, type and submit things in apps.
  • stop_deviceChanges dataStop (park) a device by `device_id`. Resume it later with resume_device.
  • submit_appVisible to othersMark failed a app (app id). Has effects visible outside this system. API summary: Mark app upload as failed.
  • submit_flowVisible to othersClone a flow (flow id). Has effects visible outside this system.
  • submit_flow_verifyVisible to othersVerify a flow (flow id). Has effects visible outside this system.
  • swipe_screenChanges dataSwipe on a device's screen from (`start_x`, `start_y`) to (`end_x`, `end_y`) over `duration` milliseconds, by `device_id`.
  • take_screenshotTake a screenshot of a device's current screen by `device_id`.
  • tap_screenChanges dataTap the device screen at coordinates `x`, `y` on a device by `device_id`.
  • type_textChanges dataType `text` into the focused field on a device by `device_id`; set `clear` to empty the field first.
  • update_actionChanges dataUpdate an existing action identified by action id. Only the fields you pass are changed. API summary: Update an action.
  • update_app_permissionDeletesUpdate an existing permission identified by permission. Destructive action; may require approval. API summary: Grant app permission.
  • update_credential_fieldChanges dataUpdate an existing field identified by field type. Only the fields you pass are changed. API summary: Update the value of a credential field.
  • update_device_appChanges dataUpdate an existing app identified by package name. Only the fields you pass are changed. API summary: Stop app.
  • update_device_keyboardsVisible to othersUpdate an existing keyboard identified by device id. Has effects visible outside this system. API summary: Input key.
  • update_device_namesVisible to othersUpdate an existing name identified by device id. Has effects visible outside this system. API summary: Update device name.
  • update_device_recordingChanges dataUpdate an existing recording identified by recording id. API summary: Stop a device recording.
  • update_documentChanges dataUpdate an existing document identified by document id. Only the fields you pass are changed. API summary: Update file metadata (skills zone only).
  • update_flowChanges dataUpdate a flow by `flow_id`: name, description, devices, trigger, or turn it on or off with `enabled`. Only the fields you pass change.
  • update_flow_actionsVisible to othersUpdate an existing action identified by flow id. Has effects visible outside this system. API summary: Replace all actions for a flow.
  • update_mailboxChanges dataUpdate an existing mailbox identified by mailbox id. Only the fields you pass are changed. API summary: Update a mailbox label.
  • update_packageChanges dataUpdate an existing package identified by package name. API summary: Create a credential.
  • update_phoneChanges dataUpdate an existing phone identified by phone id. Only the fields you pass are changed. API summary: Update a phone number's display label.
  • update_preferencesVisible to othersUpdate an existing preference. Only the fields you pass are changed. Has effects visible outside this system. API summary: Update notification preferences.
  • update_sessionChanges dataUpdate an existing session identified by session id. Only the fields you pass are changed. API summary: Rename, archive, or pin a named chat session.
  • update_triggerChanges dataUpdate an existing trigger identified by trigger id. Only the fields you pass are changed. API summary: Update a trigger.
  • update_userChanges dataUpdate an existing user identified by user id. Only the fields you pass are changed. API summary: Update a SOCKS5 user.
  • update_webhookDeletesUpdate an existing webhook identified by webhook id. Only the fields you pass are changed. Destructive action; may require approval. API summary: Update a webhook subscription.
  • upload_document_urlChanges dataUpload a document. API summary: Mint a presigned PUT URL for a user file upload.

Set up in three steps

  1. 1

    Pick the app

    Create a free HeyMyApps account and choose Mobilerun from the app list.

  2. 2

    Paste your key

    Paste your Mobilerun API key (it starts with dr_sk_). In the Mobilerun cloud dashboard open the API Keys tab, click Create API Key, give it a name and copy the key. It is shown only once.

  3. 3

    Add the link to your AI

    You get a personal MCP link. Add it to Claude, ChatGPT or Cursor:

    1. Click your name, then Settings › Connectors › Add custom connector.
    2. Paste your link as the Remote MCP server URL.
    3. Switch it on from the + menu in a chat.

Questions

What can the AI do in Mobilerun?

The AI can list and read devices, installed apps, screenshots, on-screen elements, agent tasks with their steps and screenshots, flows, flow runs, triggers, mailboxes, verification codes and SMS messages. It can start and cancel agent tasks, send messages to a running task, tap, swipe, type and open deep links on a device, fire triggers and update flows.

Does the AI see my Mobilerun credentials?

No. Your Mobilerun API key is encrypted at rest and never shown to the AI. After you save it, it is not shown again, not even to you. The AI only sees the results of the tools it calls.

Can I control what the AI is allowed to do?

Yes. You choose which tools are switched on, so you can start read-only. An agent task operates the phone on its own and can tap, type and submit in apps, and a cancelled task cannot be resumed. Starting tasks, firing triggers and direct device control can require your approval before they run. Every tool call is logged.

Does it work with ChatGPT?

Yes. In ChatGPT go to Settings › Apps & Connectors › Advanced and turn on Developer mode, then add your HeyMyApps link. Developer mode needs a paid ChatGPT plan: Plus, Pro, Business or Enterprise. The same link also works in Claude (Settings › Connectors › Add custom connector), Cursor and other MCP clients.

What does it cost?

HeyMyApps has a free plan with no credit card required. Paid plans bill per completed task. You also need your own Mobilerun account.

What is the difference between an agent task and direct control?

With run_agent_task you describe a goal in plain language and Mobilerun's agent works the phone on its own until it is done. With tap_screen, swipe_screen, type_text and open_deep_link your AI does each step itself, often after reading a screenshot or the on-screen elements.

Let your AI work in Mobilerun today.

Start free. Your key stays encrypted, and you decide what the AI may do.

Connect Mobilerun free

HeyMyApps is not affiliated with Mobilerun. Product names are trademarks of their owners.