Roku Dev Studio MCP Server
This server provides a Model Context Protocol (MCP) interface for AI agents to control, debug, and develop on Roku devices through the Roku Dev Studio application.
Device Management
Discover and scan for Roku devices (SSDP + subnet scan), list known devices with details (IP, serial, model, status)
Connect/focus a device tab in Dev Studio, test connectivity, and probe the bridge status
Remote Control
Send keypresses (Up, Down, Left, Right, Select, Home, Back, Play, etc.), input text, launch apps by ID, and deep link into apps with contentId/mediaType
Fetch app icons (returned as base64 data URLs)
Sideloading
Upload a channel package (.zip) via local file path or base64 content, and delete the sideloaded dev channel
BrightScript Debug Console (Telnet)
Connect to, read logs from (with cursor-based incremental fetching), and disconnect from the BrightScript debug console (port 8085)
ECP Queries & Commands
Run read-only ECP GET queries (device info, active app, media player state, installed apps, SceneGraph nodes, etc.)
Run ECP POST commands to arbitrary endpoints
App Connector / RALE
List channel-exported functions with parameter metadata, call channel functions, read SceneGraph node fields, run RALE built-in commands (node lookup, registry editor, update node, etc.)
Screenshots
Capture a screenshot of the current device screen, returned as an inline JPEG (base64)
Network Inspector
Check inspector status (enabled, capturing, MITM state), list and filter captured network events, retrieve full event details (headers + body), analyze traffic patterns (top hosts, content types, largest responses), and get HTTPS MITM CA info for decryption setup
Action Script Automation
List supported action types and their schemas, validate multi-step Action Scripts, and send them to the Dev Studio Builder for human review — supporting keypresses, text input, ECP queries/posts, launch, sideload, RALE commands, screenshots, performance capture, waits, conditionals, and variables
Allows AI agents to control and develop on Roku devices over local network or via remote server using ECP, including keypress, app launch, queries, sideloading, and more.
Roku Developer Tools for macOS, Windows, and Linux — Remote Control, App Side-loading, ECP automation, RALE / App Connector, Network Inspector, Action Scripts, MCP server for AI agents (Cursor, Claude, VS Code), and a rds CLI. Supports both local network and internet-bridged devices.
A comprehensive cross-platform desktop application for controlling and developing on Roku devices over your local network or via remote server using the External Control Protocol (ECP).
This repository is an npm workspace monorepo. Run npm install and npm start from the repository root so workspaces link correctly. Installing runs a postinstall (npm run build:libs) that compiles the shared roku-dev-studio-platform and roku-dev-studio-api packages to their dist/ outputs, which the app and remote server import. Use npm run typecheck for a full TypeScript check across every workspace and npm test to run unit tests. CI runs these plus per-package build/syntax smoke checks on each push and pull request. Setup, scripts, and distributable builds are documented in INSTALLATION.md.
Repository layout
Location | What it is |
Electron desktop app (main process, renderer, packaging). Dev and distributable builds: INSTALLATION.md. | |
Shared Node library + | |
MCP server that lets AI agents (Cursor, Claude Desktop, VS Code) drive a Roku through this app — package README. | |
Network Inspector engine: hotspot packet capture (DNS/SNI/HTTP) + local MITM proxy, transport-agnostic so it runs in both the desktop app and the remote server — package README. | |
HTTP/WebSocket relay to control Rokus over the internet — package README. | |
Shared host-platform helpers (OS identity, modifier keys, | |
BrightScript-side artifacts: |
Author: Hareendra Donapati
Related MCP server: Roku MCP Server
Glossary
Term | One-line meaning |
ECP | External Control Protocol — Roku's HTTP API on port |
Telnet 8085 / 8080 | The BrightScript debug console ( |
RALE | Roku Advanced Layout Editor — Roku's SceneGraph inspection protocol over a TCP socket (default port |
TrackerTask | The BrightScript component channel developers add to their app to make it reachable from RALE / App Connector — see |
App Connector | The Dev Studio tab that talks RALE: list / call your channel's |
Network Inspector | The Dev Studio tab / engine that inspects a dev channel's HTTP(S) traffic through a local MITM proxy, with optional hotspot packet capture. |
Sideload | Uploading and installing a |
Sideload Relay | RDS advertising itself as a Roku so one sideload from your IDE / browser fans out (install → launch → console) to many targeted devices. |
Action Script | JSON-described automation that chains keypresses, queries, sideload, App Connector calls, screenshots, conditionals, waits, and variables. Built and run from the Action Scripts tab; also runnable headless via |
MCP server | Roku Dev Studio's Model Context Protocol server — lets Cursor / Claude Desktop / VS Code drive a real device through this app while it's open. Toggle clients in Settings → MCP Server. |
Fiddle | The BrightScript scratch editor (Monaco + brighterscript lint) that wraps your snippet into a temporary channel and runs it on a selected device. |
| The terminal CLI shipped by |
Supported Platforms
Roku Dev Studio is available for:
Platform | Options |
macOS | DMG installer, Portable ZIP archive |
Windows | NSIS installer, Portable executable |
Linux | DEB package, AppImage |
Home |
|
Features
See FEATURES.md for the full tour with screenshots. Quick index:
Remote Control (Floating Remote) · Device Performance · Device Discovery · App Launcher & Management · Device Queries · Dev App Management · Sideload Relay · Console & Debugging · BrightScript Debugger · App Connector (RALE) · Network Inspector · Network Session Viewer · Action Scripts · AI Agents (MCP Server) · BrightScript Fiddle · Log File Viewer · Static Channel Analysis · rds CLI · Remote Server Support · Settings · Developer Features
Remote Server Setup
Roku Dev Studio can control devices over the internet using a remote server bridge, so you can manage devices in Remote Locations without being on the same network as the desktop app. Run the relay (npm run remote-server from this repo, or npm install -g roku-dev-studio-remote-server), then add its URL via Add Remote Location in the device selector.
Full setup (running the server as a service, network/firewall configuration, the HTTP/WebSocket API, and Swagger docs) lives in the remote server package README.
Project structure
.
├── apps/
│ └── roku-dev-studio/ # Electron desktop app (see INSTALLATION.md)
├── packages/
│ ├── roku-dev-studio-api/ # Shared API + `rds` CLI (npm: roku-dev-studio-api)
│ ├── roku-dev-studio-mcp/ # MCP server bundled into the desktop app
│ ├── roku-dev-studio-network-inspector/ # Network capture + MITM proxy engine
│ ├── roku-dev-studio-platform/ # Shared platform helpers (path-safe, OS identity)
│ └── roku-dev-studio-remote-server/ # HTTP/WS relay (npm: roku-dev-studio-remote-server)
├── roku-components/ # TrackerTask + Fiddle SceneGraph assets
├── package.json # Workspace root (workspaces: apps/*, packages/*)
├── INSTALLATION.md
└── README.mdThe Electron app’s own tree (TypeScript main.ts / preload.ts bundled to main.bundled.cjs / preload.bundled.cjs, renderer/, build assets) lives under apps/roku-dev-studio/.
Requirements
For Running the App:
Node.js 24.17+
npm (bundled with Node.js)
Roku device on local network (or remote server for remote access)
For Building:
All of the above
Platform-specific build tools:
macOS: Xcode Command Line Tools
Windows: Windows SDK (for NSIS installer)
Linux: Standard build tools (gcc, make, etc.)
See Installation for setup and build instructions.
License
This project is licensed under the MIT License.
Third-party components used in this software and their licences:
Library | Purpose | Licence |
Virtualized list rendering (telnet console, large script results) | ||
Building sideload | ||
BrightScript linting in the Fiddle editor | ||
| ||
Desktop app runtime | ||
Packaging & installers | ||
HTTP multipart uploads | ||
DOM-to-image capture for chart cards / PDF export | ||
Code editor (Fiddle, action-script step editors) | ||
PDF generation | ||
Image processing (icons/build) | ||
Reactive framework powering the new renderer | ||
WebSocket client |
Their dependencies are used under the terms declared in package-lock.json and each package’s repository.
Maintenance
Related MCP Servers
- FlicenseAqualityDmaintenanceAn MCP server that enables AI assistants to control TVs on a local network through natural language commands. It currently supports Roku devices, allowing users to launch apps, manage playback, and navigate menus.5
- Flicense-qualityDmaintenanceEnables AI agents to develop, test, and certify Roku applications by providing direct control over device functions like app deployment, remote input, and SceneGraph inspection. It supports automated workflows including real-time log collection, media monitoring, and certification verification.1
- Flicense-qualityBmaintenanceMCP server for Roku BrightScript documentation and device control, enabling doc search, device introspection, keypress/keysequence input, app launch, and sideloading.
- Alicense-qualityDmaintenanceEnables AI agents to inspect and control Roku devices—query UI elements, send remote input, launch channels, and run tests—using the Model Context Protocol or a CLI.474MIT
Related MCP Connectors
MCP server for Appcircle mobile CI/CD platform.
A MCP server built for developers enabling Git based project management with project and personal…
The MCP server for Azure DevOps, bringing the power of Azure DevOps directly to your agents.
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/paramount-engineering/roku-dev-studio'
If you have feedback or need assistance with the MCP directory API, please join our Discord server
