Phone Control (Android ADB)

Phone Control (Android ADB)

hao-cyber

Controls Android phones remotely through ADB to make calls, send texts, take screenshots, manage apps, and retrieve system information.

211581 views36Local (stdio)

What it does

  • Make and end phone calls
  • Send and receive text messages
  • Record screen activity
  • Launch apps and control media playback
  • Set alarms and manage contacts
  • Retrieve system information and check device status

Best for

Automating phone testing and QA workflowsBuilding remote phone management toolsCreating automated notification and communication systemsDeveloping accessibility or remote assistance applications
Requires ADB setupReal phone hardware control10+ phone functions

Tools (21)

call_number

Make a phone call to the specified number. Initiates a call using Android's dialer app through ADB. The number will be dialed immediately without requiring user confirmation. Args: phone_number (str): The phone number to call. Country code will be automatically added if not provided. Returns: str: Success message with the number being called, or an error message if the call could not be initiated.

end_call

End the current phone call. Terminates any active phone call by sending the end call keycode through ADB. Returns: str: Success message if the call was ended, or an error message if the end call command failed.

check_device_connection

Check if an Android device is connected via ADB. Verifies that an Android device is properly connected and recognized by ADB, which is required for all other functions to work. Returns: str: Status message indicating whether a device is connected and ready, or an error message if no device is found.

send_text_message

Send a text message to the specified number. Uses the phone's messaging app with UI automation to send SMS. Process: Opens messaging app, fills recipient and content, automatically clicks send button, then auto-exits app. Args: phone_number (str): Recipient's phone number. Country code will be automatically added if not included. Example: "13812345678" or "+8613812345678" message (str): SMS content. Supports any text, including emojis. Example: "Hello, this is a test message" Returns: str: String description of the operation result: - Success: "Text message sent to {phone_number}" - Failure: Message containing error reason, like "Failed to open messaging app: {error}" or "Failed to navigate to send button: {error}"

receive_text_messages

Get recent text messages from the phone. Retrieves recent SMS messages from the device's SMS database using ADB and content provider queries to get structured message data. Args: limit (int): Maximum number of messages to retrieve (default: 5) Example: 10 will return the 10 most recent messages Returns: str: JSON string containing messages or an error message: - Success: Formatted JSON string with list of messages, each with fields: - address: Sender's number - body: Message content - date: Timestamp - formatted_date: Human-readable date time (like "2023-07-25 14:30:22") - Failure: Text message describing the error, like "No recent text messages found..."

Alternatives