Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault

No arguments

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
list_devicesA

List all connected Android devices and emulators, including their serial numbers, connection status, and details (product, model, device, transport).

connect_deviceA

Connect to an Android device over TCP/IP (Wi-Fi) using its IP address and optional port.

disconnect_deviceA

Disconnect from a previously connected TCP/IP (Wi-Fi) device.

get_device_stateB

Get the current state of a connected device (e.g. offline, bootloader, device).

reboot_deviceA

Reboot the connected device into different modes: system, bootloader, recovery, or sideload.

root_deviceA

Restart the adbd daemon on the device with root permissions. Note: Only works on userdebug/eng builds or rooted devices.

unroot_deviceA

Restart the adbd daemon on the device without root permissions (restores non-root privileges).

forward_portB

Forward socket connections from a local host port to a port on the connected device.

reverse_portA

Reverse socket connections from a port on the device to a port on the local host (critical for React Native bundler reverse tcp:8081).

list_forwardsA

List all active port forwarding connections from host to device.

list_reversesA

List all active reverse port connections from device to host.

install_appB

Install an APK from the host machine onto the connected device.

uninstall_appB

Uninstall an application package from the connected device.

list_packagesA

List all installed application packages on the device, with options to filter by name or package type.

clear_app_dataA

Delete all data associated with a package (resets app to clean state, clears cache).

force_stop_appB

Force stop all processes associated with the application package.

start_app_activityA

Launch an app or a specific activity on the device. If activity is not provided, launches the default launcher activity.

grant_permissionB

Grant a runtime permission to an application package on the device.

revoke_permissionA

Revoke a runtime permission from an application package on the device.

push_fileA

Copy a file or directory from the host machine to the connected device.

pull_fileA

Copy a file or directory from the connected device to the host machine.

get_logcatA

Dump a snapshot of recent system logs (logcat) with custom line limits and filter criteria.

clear_logcatA

Clear (flush) all current logcat buffers. Useful to run before a test to discard old irrelevant logs.

take_screenshotA

Capture the device screen. If savePath is provided, saves to the host machine. Otherwise, returns the image directly to the client as a renderable PNG image.

record_screenA

Record the device screen as an MP4 video for a given duration and save it to the host computer.

get_dumpsysB

Retrieve system diagnostic details (dumpsys) for a service or package.

get_propertiesA

Retrieve system property values (getprop) from the Android device.

set_mock_locationA

Set a mock GPS location (latitude and longitude) on the device. For emulators, this works directly. For physical devices, you must configure a Mock Location App in Developer Options first.

get_app_usageC

Retrieve app usage and screen time statistics from the device using the usagestats or batterystats services.

dump_ui_hierarchyA

Dump the current layout tree (UI hierarchy XML) of the screen using uiautomator. Highly useful for AI agents to inspect what UI elements are currently visible.

get_app_memoryB

Dump detailed RAM memory statistics (meminfo) for an app package name.

get_cpu_usageA

Retrieve current CPU load statistics from the device shell using dumpsys cpuinfo.

get_dbinfoA

Retrieve SQLite database statistics and diagnostics for running apps using dumpsys dbinfo. Optionally filter by application package.

query_sqliteA

Execute a SQL query/command on a SQLite database within an app's sandboxed data directory. Note: Only works on debuggable apps or rooted devices/emulators.

list_shared_preferencesA

List all Shared SharedPreferences (preferences XML files) inside an application sandbox. Requires a debuggable app or root.

get_shared_preferencesA

Retrieve and read the XML contents of a specific Shared Preferences file inside an app's sandbox. Requires a debuggable app or root.

send_keyeventA

Send a keyevent (hardware/system key simulation) to the device (e.g. BACK=4, HOME=3, POWER=26, APP_SWITCH=187).

tap_screenB

Tap the screen at specific X and Y coordinates.

swipe_screenA

Swipe from starting coordinates to ending coordinates, with an optional duration parameter to simulate drag actions.

type_textA

Type text into the currently focused input field. Automatically formats space characters for compatibility with the adb shell.

execute_raw_adbB

Execute an arbitrary ADB command by passing raw command-line arguments. Safe from shell injection on the host machine because arguments are passed as an array.

execute_shell_commandB

Execute an arbitrary shell command directly on the connected Android device. Allows full access to Android shell utilities (e.g., 'input keyevent 26', 'settings get global airplane_mode_on').

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/abhinav7895/adb-mcp-server'

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