一个模型上下文协议(MCP)服务器,提供Android TV遥控器功能给AI助手和其他MCP客户端。
AndroidTVMCP将Android TV遥控器能力与模型上下文协议连接起来,使Android TV控制能够无缝集成到由AI驱动的工作流程和自动化系统中。
# 创建虚拟环境
python -m venv androidtvmcp-env
# 激活虚拟环境
# 在Linux/macOS上:
source androidtvmcp-env/bin/activate
# 在Windows上:
# androidtvmcp-env\Scripts\activate
# 安装包
pip install androidtvmcp
pip install androidtvmcp
androidtvmcp --host localhost --port 8080
配置您的MCP客户端以连接到服务器
通过您的AI助手使用Android TV控制工具
创建配置文件config.json:
{
"devices": {
"discovery": {
"enabled": true,
"timeout": 10
},
"connection": {
"timeout": 5,
"retry_attempts": 3
}
},
"mcp": {
"host": "localhost",
"port": 8080,
"transport": "stdio"
},
"logging": {
"level": "INFO",
"file": "androidtvmcp.log"
}
}
atv_navigate:导航Android TV界面(上、下、左、右、选择、菜单、返回、主页)atv_input_text:向Android TV发送文本输入atv_playback:控制媒体播放(播放、暂停、停止、快进、快退)atv_volume:调整音量(增加、减少、静音)atv_launch_app:启动特定的应用程序atv_get_apps:列出可用的应用程序atv_switch_app:在运行的应用程序之间切换atv_get_devices:列出已发现的Android TV设备atv_get_status:获取当前设备状态和状态atv_power:电源控制(开、关、睡眠)device://[device_id]/info:设备能力和信息device://[device_id]/status:当前设备状态device://[device_id]/apps:可用的应用程序state://current_app:当前激活的应用程序state://playback:当前播放状态state://volume:当前音量级别# 克隆仓库
git clone https://github.com/pigeek/androidtvmcp.git
cd androidtvmcp
# 创建并激活虚拟环境
python -m venv venv
# 激活虚拟环境
# 在Linux/macOS上:
source venv/bin/activate
# 在Windows上:
# venv\Scripts\activate
# 以开发模式安装依赖
pip install -e ".[dev]"
git clone https://github.com/pigeek/androidtvmcp.git
cd androidtvmcp
pip install -e ".[dev]"
pytest
devtools/目录包含用于手动测试和验证的独立脚本:
cd devtools
python test_command_processor.py # 测试命令处理器功能
python test_mcp_client.py # 测试MCP客户端-服务器通信
python test_mcp_integration.py # 测试MCP服务器集成
参见devtools/README.md了解每个脚本的详细信息。
black src/ tests/
isort src/ tests/
mypy src/
┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐
│ MCP客户端 │◄──►│ AndroidTVMCP │◄──►│ Android TV │
│ (AI助手) │ │ 服务器 │ │ 设备 │
└─────────────────┘ └─────────────────┘ └─────────────────┘
未找到设备
连接失败
命令不起作用
启用调试日志:
androidtvmcp --log-level DEBUG
MIT许可证 - 详情见LICENSE文件。