appletv-mcp
appletv-mcp
Un servidor MCP que le da a un agente de IA control total sobre un Apple TV en la red local — sin mando, sin Siri.
Construido sobre pyatv (protocolos Companion + AirPlay). Un proyecto hermano, appletv-remote, ofrece las mismas capacidades como una habilidad de Claude Code / opencode en lugar de un servidor.
Qué puede hacer
Herramienta | Capacidad |
| "Pon Severance" — búsqueda en JustWatch → enlace profundo directo al título (Apple TV+, Disney+, Max, Hulu, Prime, Peacock, …) |
| Reproduce cualquier video de YouTube por URL o términos de búsqueda simples, en pantalla completa vía AirPlay (opcionalmente dentro de la app de YouTube) |
| Abre cualquier enlace profundo; tvOS lo enruta a la app correcta |
| Lanza apps por nombre amigable; lista las apps instaladas |
| Mando completo: navegación, seleccionar, menú, inicio, reproducir/pausar, detener, siguiente/anterior, volumen, suspender/activar |
| Escribe en campos de pantalla enfocados (cuadros de búsqueda) |
| Qué se está reproduciendo: título, estado, posición |
| Suspender/activar, incluido el encendido de TV por HDMI-CEC |
| Gestiona TVs emparejadas y la predeterminada; descubre TVs en la red |
Las herramientas de control aceptan un nombre de device opcional para apuntar a una TV no predeterminada (atv_scan, atv_devices y atv_use son las excepciones — se aplican a la configuración de emparejamiento en sí).
Configuración
Requisito previo: uv (brew install uv).
Empareja una vez por TV (interactivo; la TV muestra un PIN de 4 dígitos dos veces):
uv run python scripts/pair.pyLas credenciales se almacenan solo para el propietario en ~/.config/appletv-remote/devices.json (compartido con la habilidad appletv-remote). Mantén ese archivo privado — otorga control total de la TV.
No interactivo (impulsado por agente): establece ATV_PIN_FILE=/tmp/atv_pin.txt, ejecuta pair.py <name-filter> y escribe cada PIN en ese archivo.
Registra el servidor con tu cliente MCP. Ejemplo para opencode (
~/.config/opencode/opencode.json):
"mcp": {
"appletv": {
"type": "local",
"command": ["uv", "run", "--directory", "/path/to/appletv-mcp", "python", "server.py"],
"enabled": true
}
}Para Claude Code: claude mcp add appletv -- uv run --directory /path/to/appletv-mcp python server.py
Notas y advertencias
pyatv está fijado a un commit exacto de un fork sin fusionar que corrige
play_urlen tvOS 26 (PR #2846, problemas #2821/#2774). Una vez fusionado y publicado, vuelve a usar elpyatvestándar.Los enlaces profundos de Netflix no son fiables desde su actualización de la app de tvOS de septiembre de 2025;
atv_watchrecurre con elegancia, y siempre puedes usaratv_launch_app("netflix")+atv_type(...).Las búsquedas de JustWatch usan por defecto EE. UU./en; anula con
ATV_JW_COUNTRY/ATV_JW_LANGUAGE.Los streams de YouTube se envían como HLS vía AirPlay 2: la reproducción se pone en cola en la TV y continúa después de que la herramienta regrese. Las URLs expiran después de ~6h.
Una advertencia de
FetchAttentionState failedal conectar es inofensiva (peculiaridad del fork); los comandos siguen funcionando.Probado en tvOS 26 (Apple TV 4K gen 3). tvOS 13+ debería funcionar.
Licencia
MIT
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.
Related MCP Connectors
Control Android TV from any AI. 38 MCP tools: playback, recap, recommend, smart-home, schedules.
Control Unreal Engine to browse assets, import content, and manage levels and sequences. Automate…
Create and manage short links, track clicks, and automate URL management
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/slandau3/appletv-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server