adb-tv-mcp
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@adb-tv-mcptake a screenshot"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
adb-tv-mcp
An MCP server that lets an AI agent control an Android TV or Android device through ADB.
Overview
adb-tv-mcp is a local server for the Model Context Protocol. The server gives an AI agent a set of tools. The agent uses the tools to control an Android device. The device must be reachable through the Android Debug Bridge (ADB).
The agent can do these tasks:
Capture the screen as an image.
Send remote-control and D-pad key presses.
Start, install, and remove applications.
Open a web address.
Type text and touch the screen.
Transfer files.
Read device properties, settings, and logs.
Run shell commands.
Pair with a device that uses Android 11 wireless debugging.
The server sends each request to the adb program. The server does not modify the device firmware.
Related MCP server: Android MCP Server
Demo
Figure 1 shows a status display that the server sent to a TCL C6K television with the adb_open_url tool. The page runs in the television browser.

Features
Screen capture. The
adb_screenshottool returns the screen as a PNG image. Vision-capable agents can see the screen and then act.Remote control. The tools send D-pad keys, media keys, and system keys, and also touch and text input.
Application control. The tools start, list, install, and remove applications, and open web addresses.
Wireless pairing. The
adb_pairtool completes the Android 11 pairing sequence.File transfer. The tools copy files to and from the device.
Diagnostics. The tools read properties, settings, and logs, and record the screen.
Requirements
Node.js version 18 or later.
The Android platform-tools package. This package supplies the
adbprogram.An Android device with developer options and debugging turned on.
Installation
Clone the repository:
git clone https://github.com/mosesmrima/adb-tv-mcp.git cd adb-tv-mcpInstall the dependencies:
npm installBuild the project:
npm run build
Configuration
Add the server to the configuration file of your MCP client.
To use the published package, run it with npx. You do not need to clone the repository.
{
"mcpServers": {
"adb-tv": {
"command": "npx",
"args": ["-y", "adb-tv-mcp"],
"env": { "ADB_PATH": "/path/to/platform-tools/adb" }
}
}
}To use a local build instead, set the command to node and give the absolute path to the built file:
{
"mcpServers": {
"adb-tv": {
"command": "node",
"args": ["/absolute/path/to/adb-tv-mcp/dist/index.js"],
"env": { "ADB_PATH": "/path/to/platform-tools/adb" }
}
}
}Set the ADB_PATH variable only if the adb program is not on the PATH of the client process. Restart the client after you change the configuration.
Connect to a device
Android 11 or later (wireless debugging)
On the device, open Developer options.
Select Wireless debugging.
Select Pair device with pairing code. The device shows a 6-digit code and an address in the form
host:port.Tell the agent to run
adb_pairwith the host, the port, and the code.Tell the agent to run
adb_connectwith the host and the connect port. The device shows the connect port on the main Wireless debugging screen.
Note: The pairing port and the connect port are different. The command adb mdns services also finds these endpoints.
USB or earlier Android
Turn on network ADB on the device.
Tell the agent to run
adb_connectwith the device address and port 5555.
Tools
Tool | Description |
| Lists the connected devices and their state. |
| Pairs with a device that uses Android 11 wireless debugging. |
| Connects to a device endpoint. |
| Disconnects a device, or all devices. |
| Captures the screen and returns a PNG image. |
| Records the screen and saves the video to a local file. |
| Sends a remote-control or D-pad key. |
| Touches the screen at a pixel position. |
| Swipes from one position to another. |
| Types text into the active field. |
| Starts an application by package name. |
| Opens a web address on the device. |
| Sends an Android intent with |
| Lists installed packages. |
| Reports the application in the foreground. |
| Installs an APK file. |
| Removes an application. |
| Copies a file to the device. |
| Copies a file from the device. |
| Reads device properties. |
| Reads or writes an Android setting. |
| Reads recent log lines. |
| Restarts the device. |
| Runs a shell command. |
For the adb_key tool, use one of these key names, or a numeric Android key code:
UP, DOWN, LEFT, RIGHT, ENTER, BACK, HOME, MENU, POWER, VOLUME_UP, VOLUME_DOWN, MUTE, PLAY_PAUSE, NEXT, PREV, FAST_FORWARD, REWIND, SEARCH, ASSIST, SETTINGS, APP_SWITCH, CHANNEL_UP, CHANNEL_DOWN.
Environment variables
Variable | Description |
| The path to the |
Security
Read this section before you use the server.
The server controls real hardware.
The
adb_shelltool runs any shell command. Theadb_rebootandadb_uninstalltools also make changes to the device.Use the server only with devices that you own or that you have permission to control.
Do not connect the server to devices on a network that you do not trust.
Give the agent only the autonomy that the task needs.
To report a security problem, see SECURITY.md.
How it works
The server calls the adb command-line program with execFile. Each MCP tool is a wrapper around one adb operation. The server exposes the tools over the stdio transport of the MCP SDK.
The adb_screenshot tool reads the output of screencap -p and returns it as an MCP image block. An agent that supports images can see the screen and then choose the next action.
Development
npm run dev # run from source with tsx
npm run build # compile TypeScript to dist/
npm start # run the compiled serverContributing
See CONTRIBUTING.md for the contribution process and the coding standards.
License
This project uses the MIT License. See LICENSE.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/mosesmrima/adb-tv-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server