Unwatched について
Unwatchedは、YouTube動画をエージェント向けの検証済み構造化ランブックに変換するMCPサーバー兼コマンドラインツールです。Markdown、YAML、JSONで出力でき、動画のデコードや結果取得のツールを備えています。
主な機能
- 01YouTube動画をランブックに変換
- 02検証済みのMarkdown、YAML、JSON出力
- 03デコードとジョブ状態確認のCLI
- 04過去のデコード結果の一覧と絞り込み
- 05MCPツールによるジョブとランブックの取得
活用シーン
- 01チュートリアル動画から実行手順を作成
- 02以前にデコードしたランブックの取得
- 03MCP経由でエージェントに動画を処理させる
MCP 対応
stdioのMCPサーバーは、動画デコードの開始、ジョブの待機、成果物の確認、ランブックの取得、過去のデコード一覧のツールを提供します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
unwatched-mcp
動画 URL を入力すると、検証済みのランブックが出力されます。 UNWATCHED の MCP サーバーと CLI です。 あらゆる AI エージェント(Claude Code、Cursor、任意の MCP クライアント)が、UNWATCHED API を呼び出して動画を検証済みの構造化されたランブックに変換できます。
Node.js ≥ 18 と、 https://unwatched.cloud/app/settings → API Keys で取得した API キーが必要です。
60 秒でできるクイックスタート
# 1. Install
npm i -g unwatched-mcp # or use npx below without installing
# 2. Set your key
export UNWATCHED_API_KEY=uk_live_... # or: ~/.config/unwatched/config
# 3. Decode a video (starts the job, waits, writes the runbook)
unwatched decode "https://www.youtube.com/watch?v=VIDEO_ID" --format yaml -o runbook.yaml
これで完了です。検証済みのランブックが runbook.yaml に保存されています。
CLI
unwatched decode <url> [--profile agent] [--format md|yaml|json] [-o file] [--timeout 600]
unwatched library [query] [--json]
unwatched status <job_id> [--wait] [--timeout 600]
decodeはジョブを開始し、完了するまでポーリングして、ランブックを取得し、-o <file>(または標準出力)に書き込みます。libraryはテナントの過去のデコード結果を一覧表示します。queryはクライアント側で絞り込みます。statusはジョブのステータスとアーティファクトの一覧を表示します。
API キーの解決
UNWATCHED_API_KEY環境変数~/.config/unwatched/config—UNWATCHED_API_KEY=uk_live_...またはキーのみを 1 行に記載したファイル
UNWATCHED_BASE_URL で API のベース URL を上書きできます(デフォルトは https://unwatched.cloud/api/v1 です)。
MCP サーバー
このパッケージには、次のツールを備えた MCP サーバー(stdio トランスポート)が含まれています。
| ツール | 説明 |
|---|---|
decode_video(url, profiles?) | デコードジョブを開始 → job_id を返します |
get_job(job_id) | ステータスとアーティファクトの一覧 |
get_runbook(job_id, video_id, format: md|yaml|json) | ランブックの内容 |
list_library(query?) | テナントの過去のデコード結果 |
wait_for_job(job_id, timeout_s=600) | 完了/一部完了/失敗するまでポーリングします |
一般的なエージェントのフロー:decode_video → wait_for_job → get_job(video_id を確認)→ get_runbook。
エラーは対処方法がわかるメッセージに変換されます。401 → API キーを確認、402 → クォータ超過。https://unwatched.cloud/app/settings でアップグレードしてください。429 → レート制限(Retry-After に従います)。
Claude Code
claude mcp add unwatched --env UNWATCHED_API_KEY=uk_live_... -- npx -y unwatched-mcp
Claude Desktop
claude_desktop_config.json に追加します。
{
"mcpServers": {
"unwatched": {
"command": "npx",
"args": ["-y", "unwatched-mcp"],
"env": { "UNWATCHED_API_KEY": "uk_live_..." }
}
}
}
Cursor
プロジェクトの .cursor/mcp.json またはグローバルの ~/.cursor/mcp.json に追加します。
{
"mcpServers": {
"unwatched": {
"command": "npx",
"args": ["-y", "unwatched-mcp"],
"env": { "UNWATCHED_API_KEY": "uk_live_..." }
}
}
}
その他の MCP クライアント
サーバーを stdio 経由で直接実行します。
UNWATCHED_API_KEY=uk_live_... npx -y unwatched-mcp
# or, when installed globally:
unwatched-mcp
開発
npm install
npm run build
npm test # smoke tests of the API client with mocked HTTP
構成:src/api-client.ts(REST ラッパーとエラーマッピング)、
src/cli.ts(commander CLI)、src/mcp-server.ts(stdio MCP サーバー)、
src/config.ts(キー/ベース URL の解決)。
ライセンス
MIT
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。