Pick up remote
Open Netflix app
Search for show
Pick the season
Pick the episode
Press play
~30 seconds
stv play netflix "Dark" s1e1~3 seconds
✨ What it does
🎬 Play by name
stv play netflix "Dark" s1e1
stv play youtube "baby shark"
stv play spotify "chill vibes"Say the name. stv finds the ID, opens the app, starts playback.
🔗 Cast any URL
stv cast https://youtu.be/dQw4w
stv cast https://netflix.com/watch/...
stv cast https://open.spotify.com/...Friend sends a link. Paste it. TV plays it.
🎵 Queue & party
stv queue add youtube "Gangnam Style"
stv queue add spotify "Blinding Lights"
stv queue playEveryone adds their pick. TV plays in order.
🎭 Scene presets
stv scene movie-night # volume 20, cinema
stv scene kids # volume 15, Cocomelon
stv scene sleep # rain sounds, auto-offOne command sets the vibe.
🔊 Multi-room audio
stv audio play "lo-fi beats"
stv audio volume kitchen 30
stv audio stopScreens off. Music everywhere.Free Sonos.
📺 TV as display
stv display message "Dinner!"
stv display clock
stv display dashboard "Temp:22°C"Dashboards, clocks, signage.$0/month.
📊 Watch intelligence
stv insights
stv screen-time
stv sub-value netflix --cost 17.99Is your Netflix worth $18/month?
🌐 Sync party
stv --all play youtube "lo-fi beats"
stv --group party play netflix "Wed..."
stv --all off # good nightEvery TV. At once. Even remote friends.
🤖 AI concierge
"Play something chill"
→ tv_recommend → tv_play
→ Playing The Queen's Gambit21 MCP tools. One sentence is enough.
🤖 Tell your AI to control your TV
stv is an MCP server. Claude, GPT, Cursor, or any MCP client can control your TV with natural language.
Setup (one line):
{
"mcpServers": {
"tv": {
"command": "uvx",
"args": ["stv"]
}
}
}Or via OpenClaw:
clawhub install smartest-tvThen just talk:
You: "I just got home, set up movie night"
Claude: 🎬 Movie night activated.
Volume → 20, cinema mode on.
Based on your history:
1. The Queen's Gambit (Netflix)
2. Ozark (Netflix)
3. Squid Game S2 (Netflix)
You: "Play 1, put a clock on kitchen TV"
Claude: ✓ Playing The Queen's Gambit
✓ Clock on kitchen TVCategory | Tool | What it does |
Play |
| Search + play by name |
| Cast any URL | |
| Continue watching | |
| Launch app with ID | |
| Get content ID only | |
Discover |
| Trending content |
| Personalized picks | |
Control |
| On/off |
| Get/set/step/mute | |
| Screen on/off | |
| Toast notification | |
| Current state | |
Organize |
| Play queue |
| Scene presets | |
| Watch history | |
Intelligence |
| Viewing stats |
| TV as display | |
| Multi-room audio | |
Multi-TV |
| Play on all TVs |
| List TVs | |
| TV groups |
📅 A day with stv
Time | What happens |
7am |
|
8am |
|
12pm | Friend sends Netflix link → |
5pm |
|
6:30pm |
|
7pm |
|
9pm |
|
10pm |
|
11:30pm |
|
🔥 Killer combos
🌙 Bedtime autopilot
stv audio play "rain" --rooms bedroom
stv scene sleep
stv --all offAmbient sound, screen off, auto-timer, every other TV killed.
🎧 Free Sonos
stv audio play "lo-fi beats"
stv audio volume kitchen 40
stv audio volume bedroom 15Every TV is a speaker. Per-room volume. Screens off.
💰 Subscription audit
stv sub-value netflix --cost 17.99
# → $8.50/hr — consider canceling
stv sub-value youtube --cost 13.99
# → $1.20/hr — good value⚙️ How it works
"Play Dark S1E1"
│
▼
┌─── Resolution ───┐
│ Cache → API → Web │ content_id
│ 0.1s 1s 3s │──────────────▶ 📺 TV plays it
└───────────────────┘ │
Deep link via
LG / Samsung / Roku / AndroidSay a name. stv resolves it to a content ID, deep-links into the app on your TV. No browser automation, no API keys, no cloud dependency. Results are cached so repeat plays are instant.
📦 Install
pip install stv # LG webOS (default)
pip install "stv[samsung]" # Samsung Tizen
pip install "stv[android]" # Android TV / Fire TV
pip install "stv[all]" # Everythingstv setup # auto-discover + pair your TVSupports LG webOS · Samsung Tizen · Android TV / Fire TV · Roku
🔌 Works with
Integration | How |
Claude Code / Cursor | Add MCP config → |
OpenClaw |
|
Home Assistant | Shell commands in automations |
cron |
|
Shell scripts |
|
Any MCP client | 21 tools, stdio or HTTP ( |
📚 Docs
Setup for any TV brand | |
play, cast, queue, resolve | |
movie-night, kids, sleep, custom | |
Multi-TV, remote watch party | |
10 powerful feature combos | |
MCP for Claude, Cursor, OpenClaw | |
Every command and option | |
All 21 tools with parameters |
🤝 Contributing
211 tests. No TV needed to run them.
pip install -e ".[dev]"
python -m pytest tests/ -vSamsung, Roku, and Android TV drivers need real-world testing. If you have one, your feedback matters.
Cache Contributions · Driver Development