mcpField
Y
youtube-full

youtube-full

github.com/alphaonedevクリエイティブ・メディア46 回インストール
リポジトリ

youtube-full について

youtube-fullは、スクリプトやアプリでYouTube APIの操作を自動化するスキルです。動画、字幕、チャンネル、コメント、プレイリスト、アップロードを扱う開発者やワークフロー向けです。

主な機能

  1. 01動画の取得、検索、削除
  2. 02動画字幕の抽出
  3. 03チャンネル統計の取得
  4. 04コメントの読み取りと投稿
  5. 05プレイリストの管理
  6. 06動画のアップロード

活用シーン

  1. 01コンテンツ分析用の字幕抽出
  2. 02チャンネル指標の確認
  3. 03メディアアプリでのプレイリスト管理
  4. 04ユーザー作成動画のアップロード

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/alphaonedev/openclaw-graph --skill youtube-full

インストール後、Claude Code で/youtube-fullを入力して読み込まれたか確認します。

詳細

youtube-full

目的

このスキルは、YouTube API と連携して、動画管理、文字起こしの抽出、チャンネル分析、コメント、再生リスト、アップロードに対応するツールを提供し、スクリプトやアプリケーションでの自動化を可能にします。

使用する場面

コンテンツ分析で動画の文字起こしを取得する、ユーザーが作成した動画をアップロードする、レポート作成のためにチャンネルのパフォーマンスを分析する、メディアアプリで再生リストを管理するといった、YouTube データを扱うタスクにこのスキルを使用します。Google API にアクセスでき、リアルタイムでのデータ抽出や操作が必要なタスクに適用してください。

主な機能

  • 動画管理:/youtube/v3/videos などの YouTube Data API v3 エンドポイントを使用して、動画を取得、検索、削除します。
  • 文字起こしの抽出:/youtube/v3/captions エンドポイント経由で動画の字幕を取得し、英語などの言語や自動生成された文字起こしに対応します。
  • チャンネル分析:/youtube/v3/channels から、日付範囲のパラメーターを含む視聴回数や登録者データなどの指標にアクセスします。
  • コメント:スパム処理用のモデレーションフラグを使用して、/youtube/v3/commentThreads 経由でスレッド形式のコメントを読み込んだり投稿したりします。
  • 再生リスト:/youtube/v3/playlists 経由で、動画アイテムの追加を含め、再生リストの作成、更新、削除を行います。
  • アップロード:/youtube/v3/videos へのマルチパート POST で動画のアップロードを処理します。大きなファイルには再開可能なセッションが必要です。

使用パターン

AI エージェントのコードで関数呼び出しを使ってこのスキルを呼び出し、動画 ID や API キーなどの必須パラメーターを渡します。環境変数として $YOUTUBE_API_KEY を設定し、最初に認証を確認してください。たとえば、複数の動画の文字起こしを処理するような一括操作では、リクエストをループで構成します。POST リクエストには JSON ペイロードを、GET リクエストにはクエリパラメーターを使用します。レート制限に対応するには、API 呼び出しの間に遅延を追加します。たとえば、10 回リクエストするごとに 1 秒スリープします。

主なコマンド/API

統合に関する注意事項

AI エージェントのコードベースにこのスキルをインポートし、OAuth または API キー認証のために環境変数に $YOUTUBE_API_KEY が設定されていることを確認して統合します。エンドポイントのデフォルト値の保存には、例として {"base_url": "https://www.googleapis.com/youtube/v3"} のような JSON 設定ファイルを使用します。キーをハードコードせず、Python の google-auth などのライブラリを使用して安全に取り扱ってください。OAuth を使用する場合は、トークン交換のためにユーザーをリダイレクトします。シンプルな API アクセスであれば、$YOUTUBE_API_KEY で十分です。割り当て上限を超えないよう、サンドボックス環境で統合をテストしてください。

エラー処理

レスポンスの HTTP ステータスコードを確認してください。たとえば、status == 403 の場合は「Quota exceeded」と記録し、遅延後に再試行します。無効な動画 ID(エラーコード 404)など、YouTube 固有のエラーには、リクエスト前に入力を検証して対処します。ネットワークの問題に備えて、コードでは try-except ブロックを使用してください。

try:
    response = requests.get(url)
    response.raise_for_status()
except requests.exceptions.HTTPError as err:
    print(f"Error: {err} - Check API key or parameters")

レート制限エラー(たとえば、割り当てに関するメッセージを伴う 403)に対して指数バックオフを実装し、最大 3 回再試行するまで 2^x 秒待機します。使用した API エンドポイントやパラメーターなどのコンテキストとともに、すべてのエラーを記録してください。

使用例

  1. 特定の動画の字幕を抽出します。まず、$YOUTUBE_API_KEY を設定します。次に、GET https://www.googleapis.com/youtube/v3/captions?videoId=VIDEO_ID&key=$YOUTUBE_API_KEY を使用して API を呼び出します。コードでレスポンスを解析し、テキストを抽出します:import json; transcript = [item['text'] for item in response.json()['items']]. 出力をファイルに保存して、以降の処理に使用します。
  2. 動画をチャンネルにアップロードします。$YOUTUBE_API_KEY が設定され、アップロード権限があることを確認します。動画ファイルと、{"snippet": {"title": "Uploaded Video"}} のような JSON メタデータを含むマルチパートデータを使って、POST https://www.googleapis.com/upload/youtube/v3/videos を呼び出します。アップロード後、レスポンスから動画 ID を取得し、必要に応じてステータスを更新します。

グラフの関係

  • 関連先:google-api(認証とエンドポイントを共有)
  • 依存先:authentication-service($YOUTUBE_API_KEY の処理)
  • 接続先:動画処理スキル(抽出後の分析)
  • 統合先:storage-services(アップロードしたファイルの管理)

コメント