mcpField
S
smartest-tv

smartest-tv

ローカル
github.com/Hybirdssゲーム・エンタメ564 週間前に更新

smartest-tv について

smartest-tv は、Netflix、YouTube、Spotify などのコンテンツを名前で指定してスマートテレビで再生できるコマンドラインツールです。URL のキャスト、音量調整、複数部屋のオーディオ制御にも対応しています。ターミナルや AI アシスタントからテレビを操作したい利用者向けで、テレビ未設定時はブラウザで再生されます。

主な機能

  1. 01名前による検索とストリーミングアプリへのディープリンク
  2. 02任意の URL のキャストと再生キュー
  3. 03シーンプリセットと複数テレビの同期再生
  4. 04AI クライアント向けの 21 個の MCP ツール
  5. 05LG webOS、Samsung Tizen、Android TV、Roku への対応

活用シーン

  1. 01アシスタントに特定のエピソードの再生を依頼する
  2. 02複数のテレビで同じコンテンツを同時に再生する
  3. 03Home Assistant からテレビ再生を自動化する

MCP 対応

stv は MCP サーバーとして動作し(stv serve または uvx stv)、Claude や Cursor などの MCP クライアントに再生、操作、キュー、シーン、視聴統計をカバーする 21 個のツールを提供します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"hybirdss-smartest-tv": {
"command": "uvx",
"args": [
"stv"
],
"env": {
"TV_PLATFORM": "<TV_PLATFORM>",
"TV_IP": "<TV_IP>",
"TV_MAC": "<TV_MAC>"
}
}
}
}
起動コマンドuvx stv
設定が必要な環境変数
TV_PLATFORMTV platform: lg, samsung, roku, or android
TV_IPTV IP address on your local network
TV_MACTV MAC address for Wake-on-LAN (optional)

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
pypistv0.4.1

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細


📺
smartest-tv

テレビが待ち望んでいた CLI。

Netflix / Apple TV+ / YouTube / Spotify を名前で再生。URL のキャスト。マルチルームオーディオ。AI コンシェルジュ。すべてターミナルから。

PyPI: stv 合計ダウンロード数 月間ダウンロード数 テスト MIT ライセンス Python MCP ツール Glama スコア Awesome MCP Servers Awesome Smart TV HACS

한국어 · 中文 · 日本語 · Español · Deutsch · Português · Français


pip install stv && stv play "Frieren"

テレビがなくても大丈夫。ブラウザーで開きます。テレビがある場合は、stv setup で接続できます。

テレビ操作の進化



😩 stv がない場合😎 stv がある場合
  1. リモコンを手に取る
  2. Netflix アプリを開く
  3. 番組を検索する
  4. シーズンを選ぶ
  5. エピソードを選ぶ
  6. 再生ボタンを押す

約30秒

stv play netflix "Dark" s1e1

約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

Claude Code、Codex、Antigravity、その他の MCP クライアント向けに、MCP サーバー(21 ツール)としても利用できます。


🎯 stv と入力するだけ

stv のホームダッシュボード

サブコマンドを指定しないと、Now Playing カードと、視聴履歴に基づく状況に応じた次のアクションが3つ表示されます。30個ものコマンドが並ぶヘルプ一覧ではありません。

$ stv "play dark on netflix"     # natural language works
$ stv play "Frieren"             # auto-detects platform
$ stv next                       # continue last show
$ stv stats                      # → insights

認識できない入力には、エラーではなく、わかりやすいヒントが表示されます。


🎨 プロダクトのような見た目の CLI

stv statusstv insights
stv scene liststv multi list
stv doctornatural language

すべてのコマンドで、Catppuccin Mocha のカラー、意味の分かりやすいアイコン、視覚的に整理された階層構造を表示します。別のパレットがお好みですか? STV_THEME=nord または STV_THEME=gruvbox を設定してください。

jq にパイプで渡す場合は、いつでも --format json を使えます。


✨ できること

🎬 名前で再生
stv play netflix "Dark" s1e1
stv play disney "Percy Jackson" s1e1
stv play prime "The Boys" s1e1
stv play "Frieren" s2e8          # auto-detects platform

名前を伝えるだけです。stv が ID を見つけ、アプリを開いて再生を開始します。Netflix と Apple TV+ は HTML の解析によって解決します。Disney+、Max、Prime、Hulu、Paramount+、Peacock、Crunchyroll、およびJustWatch に掲載されているすべてのプラットフォームは API を通じて解決します。ログインも API キーも不要です。プラットフォーム名を省略すると、stv が地域内で配信中のサービスを自動検出します。

🔗 あらゆる URL をキャスト
stv cast https://youtu.be/dQw4w
stv cast https://netflix.com/watch/...
stv cast https://open.spotify.com/...

友人からリンクが届いたら、貼り付けるだけです。テレビで再生されます。

🎵 キューとパーティー
stv queue add youtube "Gangnam Style"
stv queue add spotify "Blinding Lights"
stv queue play

みんなで見たいものを追加します。テレビで順番に再生されます。

🎭 シーンプリセット
stv scene movie-night   # volume 20, cinema
stv scene kids          # volume 15, Cocomelon
stv scene sleep         # rain sounds, auto-off

コマンドひとつで雰囲気を設定できます。

🔊 マルチルームオーディオ
stv audio play "lo-fi beats"
stv audio volume kitchen 30
stv audio stop

画面をオフにして、どこでも音楽を楽しめます。
Sonos を無料で。

📺 テレビをディスプレイとして活用
stv display message "Dinner!"
stv display clock
stv display dashboard "Temp:22°C"

ダッシュボード、時計、サイネージに。
月額 $0。

📊 視聴インテリジェンス
stv insights
stv screen-time
stv sub-value netflix --cost 17.99

Netflix に月額 18 ドルの価値はありますか?

🌐 同期パーティー
stv --all play youtube "lo-fi beats"
stv --group party play netflix "Wed..."
stv --all off   # good night

すべてのテレビで同時に再生します。離れた場所にいる友人とも楽しめます。

🤖 AI コンシェルジュ
"Play something chill"
→ tv_recommend → tv_play
→ Playing The Queen's Gambit

21 個の MCP ツール。ひと言伝えるだけで十分です。


🤖 AI にテレビの操作を頼む

stv は MCP サーバーです。Claude、GPT、Cursor など、あらゆる MCP クライアントから自然言語でテレビを操作できます。

セットアップ(1 行):

{
  "mcpServers": {
    "tv": {
      "command": "uvx",
      "args": ["stv"]
    }
  }
}

または OpenClaw 経由で:

clawhub install smartest-tv

あとは話しかけるだけです:

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 TV
21 個すべての MCP ツール
カテゴリツール機能
再生tv_play名前で検索して再生
tv_castあらゆる URL をキャスト
tv_next視聴を続ける
tv_launchID を指定してアプリを起動
tv_resolveコンテンツ ID のみを取得
検索tv_whats_onトレンドのコンテンツ
tv_recommendパーソナライズされたおすすめ
操作tv_power電源のオン/オフ
tv_volume音量の取得/設定/調整/ミュート
tv_screen画面のオン/オフ
tv_notifyトースト通知
tv_status現在の状態
整理tv_queue再生キュー
tv_sceneシーンプリセット
tv_history視聴履歴
インテリジェンスtv_insights視聴統計
tv_displayテレビをディスプレイとして活用
tv_audioマルチルームオーディオ
複数のテレビtv_syncすべてのテレビで再生
tv_list_tvsテレビの一覧
tv_groupsテレビグループ

📅 stv のある一日

時刻内容
7amstv display dashboard "Weather:18°C" "Meeting:10am" をキッチンのテレビで実行
8amstv scene kids --tv kids-room -- Cocomelon、音量 15
12pm友人から Netflix のリンクが届く → stv cast <url>
5pmstv screen-time → 子どもたちの今日の視聴時間は 2 時間 15 分
6:30pmstv scene movie-night -- 音量 20、シネマモード
7pmstv recommend --mood chill → Ozark をおすすめ
9pmstv audio play "friday vibes" -p spotify -- 家中で音楽を再生
10pmstv --group party play netflix "Wednesday" s1e1 -- 同期再生
11:30pmstv scene sleep → stv --all off -- おやすみなさい

🔥 便利な組み合わせ

🌙 おやすみ自動モード

stv audio play "rain" --rooms bedroom
stv scene sleep
stv --all off

環境音を流し、画面を消し、自動タイマーを設定して、ほかのテレビをすべてオフにします。

🎧 Sonos を無料で

stv audio play "lo-fi beats"
stv audio volume kitchen 40
stv audio volume bedroom 15

すべてのテレビをスピーカーとして使用できます。部屋ごとに音量を調整でき、画面はオフになります。

💰 サブスクリプションの確認

stv sub-value netflix --cost 17.99
# → $8.50/hr — consider canceling

stv sub-value youtube --cost 13.99
# → $1.20/hr — good value

ほかのレシピを 10 件見る →


smartest-tv のデモ
▲ クリックしてデモ全編を見る


⚙️ 仕組み

  "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 キーも、クラウドへの依存もありません。結果はキャッシュされるため、2 回目以降はすぐに再生できます。


📦 インストール

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_badge

カスタムリポジトリとして追加します(デフォルトリストへの登録は審査中です: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 AssistantHACS カスタム連携 → コンテンツの特定に対応した media_player.play_media
Claude Code / CursorMCP 設定を追加 → "play Dark s1e1"
OpenClawclawhub install smartest-tv → Telegram ボット
cron0 7 * * * stv display dashboard ...
シェルスクリプトsleep-mode、party-mode のワンライナー
任意の MCP クライアント21 個のツール。stdio または HTTP(stv serve)

📚 ドキュメント

はじめにあらゆるテレビブランドのセットアップ
コンテンツの再生再生、キャスト、キュー、特定
シーンmovie-night、kids、sleep、カスタム
同期とパーティー複数のテレビ、リモート視聴パーティー
レシピ機能を組み合わせた強力なレシピ 10 件
AI エージェント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 種類すべての TV ドライバー(LG、Samsung、Roku、Android)、キャッシュ、同期エンジン、シーン、253 件すべてのテストが含まれます。ストリーミング配信状況データは JustWatch によって提供されています。


🔒 プライバシー

stv はローカルネットワーク上で動作します。テレメトリー、アナリティクス、クラウド同期、視聴内容の外部送信はありません。posthog も、amplitude も、sentry も、mixpanel もありません。ソースを grep して確認できます。

例外が 1 つあります。コミュニティキャッシュへの貢献です。 ローカルキャッシュにないコンテンツを再生すると、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 のドライバーには実環境でのテストが必要です。お持ちの場合は、ぜひフィードバックをお寄せください。

キャッシュへの貢献 · ドライバーの開発


smartest-tv のマスコット

MIT ライセンス · Python で開発 · クラウド不要

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。