Skip to main content
Glama
Anjos2

mcp-android-emulator

by Anjos2

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
ADB_PATHNoPath to ADB executableadb
SCREENSHOT_DIRNoDirectory for temporary screenshots/tmp/android-screenshots

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
screenshotA

Take a screenshot of the Android device/emulator and return it as a base64 image

get_ui_treeA

Get the UI element tree of the device (like DOM but for Android). Returns clickable elements with their coordinates.

tapB

Tap at the specified coordinates on the screen

tap_textA

Find an element by its text content and tap on it

type_textA

Type text into the currently focused input field. Unicode is supported via URL-encoding. Shell metacharacters (; & | ` $ ( ) < > \ quotes) are rejected.

swipeC

Perform a swipe gesture on the screen

scrollB

Scroll the screen in a direction

press_keyA

Press a system key (BACK, HOME, ENTER, etc)

launch_appA

Launch an application by its package name (e.g., com.android.chrome). Package name is validated against the Android package naming convention.

install_apkA

Install an APK file on the device. Path must end in .apk and contain no shell metacharacters.

list_packagesA

List installed packages on the device. Optional filter is applied in-process (JavaScript), never on the device shell.

get_logsB

Get device logs (logcat). Filtering is applied in-process, never on the device shell.

device_infoC

Get information about the connected device

clear_app_dataC

Clear all data for an application

force_stopB

Force stop an application

get_current_activityB

Get the currently focused activity/screen

wait_for_elementB

Wait for a UI element with specific text to appear

long_pressA

Perform a long press at the specified coordinates (useful for context menus)

clear_inputA

Clear the currently focused text input field

select_allA

Select all text in the currently focused input field

set_textA

Clear the current input field and type new text. Unicode is supported via URL-encoding. Shell metacharacters are rejected.

dragA

Perform a drag gesture from one point to another (slower than swipe, for drag & drop)

double_tapC

Perform a double tap at the specified coordinates

get_screen_sizeA

Get the screen dimensions and density of the device

is_element_visibleB

Check if an element with specific text or resource-id is visible on screen

get_element_boundsA

Get the exact bounds and center coordinates of an element

scroll_to_textA

Scroll the screen until an element with specific text is visible

wait_for_ui_stableA

Wait for the UI to stop changing (useful after animations)

wait_for_element_goneB

Wait for an element to disappear from the screen

multi_tapB

Perform multiple rapid taps at the same position

pinch_zoomA

Perform a pinch zoom gesture (requires Android 8+)

set_clipboardA

Set text to the device clipboard. Text is transferred via adb push (binary transfer, no shell involvement, full Unicode support).

get_clipboardA

Get the current device clipboard content

rotate_deviceA

Rotate the device to portrait or landscape orientation

tap_safeA

Tap at coordinates while avoiding system navigation bars

tap_elementA

Find and tap an element by text or resource-id (more reliable than tap_text)

get_focused_elementB

Get information about the currently focused UI element

assert_screen_containsC

Assert that specific text is visible on screen (useful for testing)

get_all_textA

Get all visible text elements on screen (useful for debugging and verification)

get_clickable_elementsA

Get all clickable elements on screen with their text, resource-id, and coordinates (useful when tap_text fails)

is_keyboard_visibleA

Check if the soft keyboard is currently visible on screen

get_focused_input_valueA

Get the current text value of the focused input field

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Anjos2/mcp-android-emulator'

If you have feedback or need assistance with the MCP directory API, please join our Discord server