使用说明
🎮 MCP 服务器
韩语
用于Roku设备开发、测试和认证 模型上下文协议(MCP)服务器是。
AI代理(Gemini、Claude、Copilot等)可以直接控制和测试Roku设备。
主要功能
- 📦 应用程序分发 -部署侧加载并捕获屏幕截图
- 🖥️ 验证分辨率 -自动检查HD/FHD兼容性
- ⌨️ 遥控器控制 -输入键击、序列和文本
- 📱 管理应用程序 -查看、运行已安装的应用程序,测试深度链接
- 📋 收集日志 -BrightScript控制台实时日志
- 🔍 SceneGraph检查 -节点树、内存、焦点元素
- 🎥 流监控 -播放状态、缓冲、带宽
- 🛡️ 验证 -DRM、辅助功能(音频指南/字幕)、RAF广告
- 🧪 集成测试 -自动按顺序执行多个动作
📋 工具列表(25个)
| 类别 | 工具 | 说明 |
|---|---|---|
| 分发 | roku_deploy |
应用程序侧加载分发 |
roku_screenshot |
屏幕截图(base64图像) | |
| 显示 | roku_device_info |
装置信息(型号、分辨率、固件) |
roku_check_resolution 验证HD/FHD分辨率兼容性 |
||
| 输入 | roku_keypress |
输入遥控器键 |
roku_keypress_sequence 发送密钥序列 |
||
roku_input |
自定义事件/深度链接参数 | |
| 应用程序管理 | roku_apps |
已安装的应用程序列表 |
roku_active_app |
当前正在运行的应用程序 | |
roku_launch |
运行/重新启动应用程序 | |
roku_deep_link |
测试深度链接认证 | |
roku_registry |
查看应用程序注册表数据 | |
roku_app_state |
跟踪应用程序生命周期 | |
| 日志 | roku_log |
BrightScript控制台日志 |
| 场景图 | roku_sg_nodes 检查SG节点树 |
|
roku_perf |
CPU/内存使用情况 | |
roku_graphics_fps |
图形FPS | |
roku_element |
搜索UI元素(WebDriver) | |
roku_focused_element |
查看焦点元素 | |
| 流媒体 | roku_media_player |
媒体播放状态 |
roku_server_check |
服务器健康检查 | |
| 认证 | roku_check_drm |
DRM内容保护状态 |
roku_check_accessibility |
接近性合规性检查 | |
roku_check_raf 验证RAF广告框架 |
||
| 测试 | roku_run_test |
运行集成测试 |
🛠️ 安装
git clone https://github.com/maskelog/roku-mcp.git
cd roku-mcp
npm install
npm run build
设置⚙ENT
.env.example的 .env复制到并设置:
ROKU_DEV_HOST=192.168.0.100 # Roku 기기 IP (설정 > 네트워크 > 정보)
ROKU_DEV_PASSWORD=your_password # Developer Mode 비밀번호
ROKU_PROJECT_ROOT= # 프로젝트 루트 (기본: 상위 디렉토리)
ROKU_APP_SERVER_URL= # 앱 서버 URL (선택)
您需要启用Roku Developer Mode。
🔌 MCP客户端连接
添加到AI代理的MCP设置:
{
"mcpServers": {
"roku-dev": {
"command": "node",
"args": ["/path/to/roku-mcp/dist/index.js"],
"env": {
"ROKU_DEV_HOST": "192.168.0.100",
"ROKU_DEV_PASSWORD": "your_password"
}
}
}
}
💡 使用示例
用自然语言向AI代理请求:
- “告诉我Roku设备的信息” →
roku_device_info - “请分发应用程序并截屏” →
roku_deploy→roku_screenshot - “看看广告设置怎么样” →
roku_check_raf - “看看HD/FHD分辨率是否兼容” →
roku_check_resolution - “把综合测试还给我” →
roku_run_test
英语
MCP(模型上下文协议)服务器 Roku设备开发、测试和认证.
使AI代理(Gemini、Claude、Copilot等)能够直接控制和测试Roku设备。
✨ 特性
- 📦 应用程序部署 --侧载应用程序并捕获屏幕截图
- 🖥️ 分辨率验证 --自动检查HD/FHD兼容性
- ⌨️ 遥控器 --按键、序列、文本输入
- 📱 应用程序管理 --列出应用程序、启动、深度链接测试
- 📋 日志收集 --实时BrightScript控制台日志
- 🔍 风景图检查 --节点树、内存、聚焦元素
- 🎥 流媒体监控 --播放状态、缓冲、带宽
- 🛡️ 认证检查 --DRM、可访问性(音频指南/字幕)、RAF广告
- 🧪 集成测试 --自动化多步骤测试序列
📋 工具(25)
| 类别 | 工具 | 描述 |
|---|---|---|
| 部署 | roku_deploy |
将应用程序侧载到设备 |
roku_screenshot |
捕获屏幕(base64图像) | |
| 显示器 | roku_device_info |
设备信息(型号、分辨率、固件) |
roku_check_resolution |
验证HD/FHD分辨率支持 | |
| 输入 | roku_keypress |
发送遥控按键 |
roku_keypress_sequence |
发送密钥序列 | |
roku_input |
自定义事件/深度链接参数 | |
| 应用程序 | roku_apps |
列出已安装的应用程序 |
roku_active_app |
当前正在运行的应用程序 | |
roku_launch |
启动/重新启动应用程序 | |
roku_deep_link |
测试深度链接(需要认证) | |
roku_registry |
读取应用程序注册表数据 | |
roku_app_state |
跟踪应用程序生命周期 | |
| 日志记录 | roku_log |
BrightScript控制台日志 |
| 场景图 | roku_sg_nodes |
检查SG节点树 |
roku_perf |
CPU/内存使用率 | |
roku_graphics_fps |
图形帧率 | |
roku_element |
查找UI元素(WebDriver) | |
roku_focused_element |
获得专注元素 | |
| 流媒体 | roku_media_player |
媒体播放状态 |
roku_server_check |
服务器健康检查 | |
| 认证证书 | roku_check_drm |
DRM内容保护状态 |
roku_check_accessibility |
无障碍合规性 | |
roku_check_raf |
RAF广告框架验证 | |
| 测试 | roku_run_test |
运行集成测试序列 |
🛠️ 安装
git clone https://github.com/maskelog/roku-mcp.git
cd roku-mcp
npm install
npm run build
⚙️ 配置
复制 .env.example 到 .env 并配置:
ROKU_DEV_HOST=192.168.0.100 # Roku device IP (Settings > Network > About)
ROKU_DEV_PASSWORD=your_password # Developer Mode password
ROKU_PROJECT_ROOT= # Project root (default: parent directory)
ROKU_APP_SERVER_URL= # App server URL (optional)
⚠️ 必须在目标设备上启用Roku开发人员模式。
🔌 MCP客户端设置
添加到AI代理的MCP配置中:
{
"mcpServers": {
"roku-dev": {
"command": "node",
"args": ["/path/to/roku-mcp/dist/index.js"],
"env": {
"ROKU_DEV_HOST": "192.168.0.100",
"ROKU_DEV_PASSWORD": "your_password"
}
}
}
}
💡 使用示例
用自然语言询问你的AI代理:
- “显示Roku设备信息” →
roku_device_info - “部署应用程序并截图” →
roku_deploy→roku_screenshot - “检查广告框架是否设置正确” →
roku_check_raf - “验证HD/FHD分辨率支持” →
roku_check_resolution - “运行完整集成测试” →
roku_run_test
🏗️ 建筑学
roku-mcp/
├── src/
│ ├── index.ts # MCP server entry (25 tools + 2 resources)
│ ├── roku-client.ts # ECP + Dev Web Server client
│ ├── log-client.ts # BrightScript console (Telnet :8085)
│ ├── webdriver-client.ts # Roku WebDriver (port 9000)
│ └── test-runner.ts # Integration test orchestrator
├── dist/ # Compiled output
├── package.json
├── tsconfig.json
└── .env.example
📡 使用的Roku API
| API | 端口 | 用途 |
|---|---|---|
| ECP(外部控制协议) | 8060 | 设备控制、查询、按键 |
| 开发人员Web服务器 | 80 | 应用程序侧载,截图 |
| BrightScript控制台 | 8085 | 运行时日志,调试 |
| SceneGraph调试 | 8080 | SG专用调试 |
| WebDriver | 9000 | UI元素自动化 |
📝 自我记录
每个工具在其描述中都包含内联Roku API文档-API端点、端口、参数、预期响应和官方文档链接。AI代理可以在不查阅外部文档的情况下使用这些工具。
许可证
麻省理工学院