关于 smartest-tv
smartest-tv 是一个命令行工具,可按名称在智能电视上播放 Netflix、YouTube、Spotify 等内容,也可投放链接、控制音量和多房间音频。面向希望从终端或 AI 助手控制电视的用户,未配置电视时会在浏览器中打开内容。
主要功能
- 01按名称搜索并深度链接到流媒体应用
- 02投放任意 URL 并支持播放队列
- 03场景预设与多电视同步播放
- 04通过 21 个 MCP 工具供 AI 客户端调用
- 05支持 LG webOS、Samsung Tizen、Android TV 与 Roku
适用场景
- 01用自然语言让电视播放指定剧集
- 02在多台电视上同步播放同一内容
- 03通过 Home Assistant 自动化控制电视播放
MCP 相关
stv 以 MCP 服务形式运行(stv serve 或 uvx stv),向 Claude、Cursor 等 MCP 客户端提供 21 个工具,涵盖播放、控制、队列、场景和观看统计等功能。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
📺
smartest-tv
你的电视一直在等待的命令行工具。
按名称播放 Netflix / Apple TV+ / YouTube / Spotify。投放 URL。多房间音频。AI 管家。所有操作都能在终端中完成。
한국어 · 中文 · 日本語 · Español · Deutsch · Português · Français
pip install stv && stv play "Frieren"
没有电视?会在浏览器中打开。有电视?运行 stv setup 连接设备。
| 😩 不用 stv | 😎 使用 stv |
|---|---|
约 30 秒 |
约 3 秒 |
没有电视?没关系。 如果没有配置电视,stv 会直接在浏览器中打开内容。 Netflix、YouTube、Spotify、Disney+——只需运行
pip install stv,即可开始使用。
🛋 氛围编程,轻松追剧
凌晨 2 点进行氛围编程。Claude 为你写代码。你让它播放一部剧。它就会照做。
you: play frieren on the living room tv
claude: Playing Frieren s2e8 on Living Room. (3s)
you: bit quieter
claude: Volume → 18.
you: good night
claude: All 3 TVs off.
已经安装 stv?只要告诉 Claude:
# Option 1 — just talk (zero config)
"run stv play netflix Frieren s2e8"
# Option 2 — install the Skill for auto-trigger
clawhub install smartest-tv
# now "play Frieren", "good night", "next episode" just work mid-session
也可作为 MCP 服务使用(21 个工具),支持 Claude Code、Codex、Antigravity 和其他 MCP 客户端。
🎯 只需输入 stv
不带子命令?你会看到“正在播放”卡片,以及根据观看历史提供的三个上下文相关的后续操作——而不是包含 30 条命令的帮助信息。
$ stv "play dark on netflix" # natural language works
$ stv play "Frieren" # auto-detects platform
$ stv next # continue last show
$ stv stats # → insights
输入无法识别?你会得到友好的提示,而不是错误信息。
🎨 像产品一样精致的 CLI
![]() | ![]() |
![]() | ![]() |
![]() | ![]() |
每条命令都会以 Catppuccin Mocha 配色呈现,搭配语义化图标和清晰的视觉层级。想换一种配色?设置 STV_THEME=nord 或 STV_THEME=gruvbox。
需要通过管道传给 jq 时,始终可以使用 --format json。
✨ 功能介绍
🎬 按名称播放
说出名称。stv 会查找 ID、打开应用并开始播放。Netflix 和 Apple TV+ 通过 HTML 解析来查找内容。Disney+、Max、Prime、Hulu、Paramount+、Peacock、Crunchyroll 以及 JustWatch 上的所有平台都通过各自的 API 查找内容——无需登录,也无需 API 密钥。省略平台名称,stv 就会自动检测你所在地区提供该内容的流媒体平台。 |
🔗 投放任意 URL
朋友发来链接。粘贴链接。电视开始播放。 |
🎵 播放队列与派对
每个人都能添加自己的选择。电视按顺序播放。 |
🎭 场景预设
一条命令营造氛围。 |
🔊 多房间音频
关闭屏幕,音乐响彻各处。 |
📺 将电视用作显示屏
仪表板、时钟、标牌。 |
📊 观影洞察
你的 Netflix 值得每月花 $18 吗? |
🌐 同步派对
所有电视,同时播放。远方的朋友也能加入。 |
🤖 AI 礼宾助手
21 个 MCP 工具。一句话就够了。 |
🤖 让 AI 控制你的电视
stv 是一款 MCP 服务。Claude、GPT、Cursor 或任何 MCP 客户端都可以通过自然语言控制你的电视。
|
一行完成设置:
也可以通过 OpenClaw 设置:
|
然后直接对它说:
|
全部 21 个 MCP 工具
| 类别 | 工具 | 功能 |
|---|---|---|
| 播放 | tv_play | 按名称搜索并播放 |
tv_cast | 投放任意 URL | |
tv_next | 继续观看 | |
tv_launch | 使用 ID 启动应用 | |
tv_resolve | 仅获取内容 ID | |
| 发现 | tv_whats_on | 热门内容 |
tv_recommend | 个性化推荐 | |
| 控制 | tv_power | 开/关 |
tv_volume | 获取/设置/调节/静音 | |
tv_screen | 打开/关闭屏幕 | |
tv_notify | Toast 通知 | |
tv_status | 当前状态 | |
| 整理 | tv_queue | 播放队列 |
tv_scene | 场景预设 | |
tv_history | 观看历史 | |
| 智能分析 | tv_insights | 观看统计 |
tv_display | 将电视用作显示屏 | |
tv_audio | 多房间音频 | |
| 多台电视 | tv_sync | 在所有电视上播放 |
tv_list_tvs | 列出电视 | |
tv_groups | 电视分组 |
📅 stv 的一天
| 时间 | 发生的事 |
|---|---|
| 7am | 在厨房电视上运行 stv display dashboard "Weather:18°C" "Meeting:10am" |
| 8am | stv scene kids --tv kids-room -- 播放 Cocomelon,音量设为 15 |
| 12pm | 朋友发来 Netflix 链接 → stv cast <url> |
| 5pm | stv screen-time → 孩子今天看了 2h 15m |
| 6:30pm | stv scene movie-night -- 音量设为 20,影院模式 |
| 7pm | stv recommend --mood chill → 推荐 Ozark |
| 9pm | stv audio play "friday vibes" -p spotify -- 全屋播放音乐 |
| 10pm | stv --group party play netflix "Wednesday" s1e1 -- 同步播放 |
| 11:30pm | stv scene sleep → stv --all off -- 晚安 |
🔥 绝妙组合
|
🌙 睡前自动模式
播放环境音、关闭屏幕、设置自动定时器,并关闭其他所有电视。 |
🎧 免费 Sonos
每台电视都是扬声器。可单独调节每个房间的音量。关闭屏幕。 |
💰 订阅审计
|
⚙️ 工作原理
"Play Dark S1E1"
│
▼
┌─── Resolution ───┐
│ Cache → API → Web │ content_id
│ 0.1s 1s 3s │──────────────▶ 📺 TV plays it
└───────────────────┘ │
Deep link via
LG / Samsung / Roku / Android
说出名称。stv 会将其解析为内容 ID,并通过深层链接在电视上的应用中打开。无需浏览器自动化、API 密钥或云端依赖。结果会缓存,因此再次播放时可立即开始。
📦 安装
pip install stv # LG webOS (default)
pip install "stv[samsung]" # Samsung Tizen
pip install "stv[android]" # Android TV / Fire TV
pip install "stv[all]" # Everything
stv setup # auto-discover + pair your TV
支持 LG webOS · Samsung Tizen · Android TV / Fire TV · Roku
Home Assistant(HACS)
添加为自定义仓库(默认列表正在审核:hacs/default#6907):
HACS → ⋮ (top right) → Custom repositories
URL: https://github.com/Hybirdss/smartest-tv
Category: Integration → Add
Then: Install → Restart HA
Settings → Integrations → Add → "Smartest TV" → auto-discovers your TVs
Android TV / Fire TV:设置流程会在电视上显示 6 位 PIN —
在配对表单中输入即可完成配对。在 HA OS / HA Container 中设置
STV_CONFIG_DIR=/config/smartest-tv,确保容器重建后配对信息仍然保留。参见 docs/integrations/home-assistant.md。
然后在自动化中使用:
service: media_player.play_media
target:
entity_id: media_player.living_room
data:
media_content_type: stv
media_content_id: "netflix:Frieren:s2e8"
这是 HA 内置的 media_player.play_media 无法做到的:按名称解析节目,并通过深层链接在流媒体应用中打开。电源、音量和播放控制也可作为标准 HA 媒体播放器实体使用。
🔌 兼容
| 集成 | 方式 |
|---|---|
| Home Assistant | HACS 自定义集成 → media_player.play_media,支持内容解析 |
| Claude Code / Cursor | 添加 MCP 配置 → "play Dark s1e1" |
| OpenClaw | clawhub install smartest-tv → Telegram 机器人 |
| cron | 0 7 * * * stv display dashboard ... |
| Shell 脚本 | 使用 sleep-mode、party-mode 单行命令 |
| 任意 MCP 客户端 | 21 个工具,支持 stdio 或 HTTP(stv serve) |
📚 文档
| 快速入门 | 适用于任何电视品牌的设置指南 |
| 播放内容 | 播放、投屏、排队、解析 |
| 场景 | movie-night、kids、sleep、自定义 |
| 同步与派对 | 多台电视、远程观影派对 |
| 配方 | 10 个强大的功能组合 |
| AI Agent | 面向 Claude、Cursor、OpenClaw 的 MCP |
| CLI 参考 | 所有命令和选项 |
| MCP 工具 | 全部 21 个工具及其参数 |
🔓 开源
stv 的每一行代码都在 GitHub 上——CLI、解析器(Netflix、Apple TV+、YouTube、Spotify、Disney+、Max、Prime Video、Paramount+、Hulu、Peacock、Crunchyroll,以及通过 JustWatch 提供的更多服务)、全部 4 个电视驱动(LG、Samsung、Roku、Android)、缓存、同步引擎、场景,以及全部 253 项测试。流媒体可用性数据由 JustWatch 提供。
🔒 隐私
stv 在你的本地网络上运行。不收集遥测数据、不做分析、不进行云端
同步,也不会将你观看的内容发送回服务器。没有 posthog、没有
amplitude、没有 sentry、没有 mixpanel——搜索一下源代码即可确认。
一项例外——社区缓存贡献。 当你播放的内容不在本地缓存中时,stv 会解析该内容 (通过网页解析),并将解析出的 ID 提交到共享社区缓存,以便下一位用户 能立即查到。这与 Wikipedia 或软件包镜像的模式相同——许多人各自做出少量贡献,且匿名。
发送的内容(通过 HTTPS 在后台发送,发送后不等待结果,绝不会阻止播放):
- 平台名称(
netflix/youtube/spotify) - 内容别名(例如
frieren) - 解析出的内容 ID(Netflix 标题 ID、YouTube 视频 ID、Spotify URI)
不会发送的内容:
- 你的姓名、电子邮件或任何用户标识符
- 你的 IP 地址(CDN 会像标准 HTTP 请求一样看到连接 IP,但 客户端绝不会读取或传输该地址)
- 你的观看历史或播放时间戳
- 电视的 IP 地址或硬件信息
- 任何有关你使用 stv 的频率或时间的信息
如需完全禁用缓存贡献:
export STV_NO_CONTRIBUTE=1
源代码:src/smartest_tv/cache.py——搜索 _contribute。
🤝 贡献
211 项测试。运行测试无需电视。
pip install -e ".[dev]"
python -m pytest tests/ -v
Samsung、Roku 和 Android TV 驱动需要在实际环境中测试。如果你有其中一款设备,欢迎反馈。
MIT 许可证 · 使用 Python 构建 · 无需云服务
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。





