home / mcp / remote control mcp server
Provides MCP-based control of Roku TVs via the External Control Protocol, enabling voice and automation-driven TV actions.
Configuration
View docs{
"mcpServers": {
"aarongoldsmith-mcp-remote-control": {
"command": "uvx",
"args": [
"mcp-remote-control"
],
"env": {
"HOST_IP": "192.168.1.100"
}
}
}
}You can control Roku TVs on your local network using MCP, a model context protocol that lets AI assistants issue natural language commands to your TV. This server exposes TV controls as MCP tools, enabling hands-free power, navigation, app launching, and information queries through compatible MCP clients.
Connect your MCP client (for example, Claude Desktop, Claude Code, or another MCP-enabled tool) to the TV control server using a local stdio configuration. You can run the server locally and point your MCP client to it, then ask your assistant to turn on the TV, launch an app, or adjust the volume.
Prerequisites: ensure you have Python 3.12 or higher and that your TV and computer are on the same local network.
Install the server package. You can run the server directly via uvx without a separate install step, or install the package globally with pip.
Install via uvx (recommended):
uvx mcp-remote-controlInstall globally with pip (alternative):
pip install mcp-remote-controlSet the TV IP address so the server can reach your Roku. You will provide this IP to the client environments where you run the server.
Example: run the server and configure the client to use the local process. You can also configure your client to pass the TV IP as an environment variable when starting the server.
Claude Desktop configuration examples show how to connect to the local MCP server by specifying the command to run and the HOST_IP environment variable.
{
"mcpServers": {
"tv-control": {
"command": "uvx",
"args": ["mcp-remote-control"],
"env": {
"HOST_IP": "192.168.1.100"
}
}
}
}Once connected, you can instruct your assistant to perform actions such as turning on the TV, launching apps, or adjusting volume.
User: "Turn on my TV and launch Netflix"
Assistant: powers on the TV and launches NetflixSimulates remote control button presses such as navigation, playback, volume, and power.
Launches a TV app by name (case-insensitive). Examples: Netflix, YouTube, Disney+.
Lists all available apps and their channel IDs.
Retrieves device information in XML format.
Powers on the TV.