mcpField
Y
youtube-search

youtube-search

github.com/zeropointrepo生産性1.1k993 回インストール5 週間前に更新
リポジトリ

youtube-search について

youtube-searchは、TranscriptAPI.com経由でYouTubeを検索し、選んだ動画の字幕を取得するエージェントスキルです。動画、チャンネル、再生リスト、映画の横断検索と、チャンネル内検索に対応します。

主な機能

  1. 01動画、チャンネル、再生リスト、映画の検索
  2. 02日付、長さ、機能による結果の絞り込み
  3. 03関連度または再生回数による動画の並べ替え
  4. 04チャンネル内の動画検索
  5. 05検索結果から動画の字幕を取得

活用シーン

  1. 01テーマに関する最近の動画を探す
  2. 02検索語から再生リストやチャンネルを見つける
  3. 03チャンネル内で特定テーマの動画を探す
  4. 04選んだ検索結果の字幕を取得する

インストール

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

$npx skills add https://github.com/zeropointrepo/youtube-skills --skill youtube-search

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

同梱ファイルreferences/auth-setup.mdreferences/curl-examples.md

詳細

YouTube 検索

TranscriptAPI.com 経由で YouTube を検索し、文字起こしを取得します。

セットアップ

$TRANSCRIPT_API_KEY が設定されていない場合は、references/auth-setup.md を読み、キーを取得して保存するための手順に従ってください。

必須ヘッダー

すべてのリクエストに、次の 2 つのヘッダーが必要です。

  • Authorization: Bearer $TRANSCRIPT_API_KEY
  • User-Agent: わかる場合は、エージェントの名前とバージョン(例:HermesAgent/0.11.0、ClaudeCode/1.0)。バージョンは省略可能です。エージェント名だけでもかまいません。このヘッダーを省略したり、デフォルト値のまま送信したりしないでください。Cloudflare が 403(エラーコード 1010)を返し、リクエストをブロックします。

API リファレンス

OpenAPI 仕様の全文:transcriptapi.com/openapi.json — 最新のパラメーターとスキーマについては、こちらを参照してください。

GET /api/v2/youtube/search — 1 クレジット/ページ

YouTube 全体を検索し、動画、チャンネル、再生リスト、映画を探します。

GET https://transcriptapi.com/api/v2/youtube/search?q=QUERY&type=video&limit=20
Authorization: Bearer $TRANSCRIPT_API_KEY
User-Agent: YourAgent/1.0
ParamRequiredDefaultValidation
q条件付き—1~200 文字(前後の空白を除去)、最初のページ
typeいいえvideovideo、channel、playlist、movie(最初のページ)
sortいいえrelevancerelevance または views(最初のページ)
upload_dateいいえ—hour、today、week、month、year — 動画、最初のページ
durationいいえ—short(<4m)、medium(4-20m)、long(>20m) — 動画、最初のページ
featuresいいえ—カンマ区切り:hd、subtitles、cc、live、4k、hdr など
limitいいえ201~50
continuation条件付き—前のレスポンスから取得したトークン(後続ページ)

q(最初のページ)または continuation(次のページ)のいずれか一方だけを指定してください。トークンにはフィルターがすでに含まれています。sort/upload_date/duration/features が適用されるのは最初のページのみです。

最近の再生回数が最も多い動画を検索する:

GET https://transcriptapi.com/api/v2/youtube/search?q=innovation&sort=views&duration=long&upload_date=month
Authorization: Bearer $TRANSCRIPT_API_KEY
User-Agent: YourAgent/1.0

あるトピックの再生リストを検索する:

GET https://transcriptapi.com/api/v2/youtube/search?q=react+tutorial&type=playlist
Authorization: Bearer $TRANSCRIPT_API_KEY
User-Agent: YourAgent/1.0

動画検索のレスポンス:

{
  "results": [
    {
      "type": "video",
      "videoId": "dQw4w9WgXcQ",
      "title": "Rick Astley - Never Gonna Give You Up",
      "channelId": "UCuAXFkgsw1L7xaCfnd5JJOw",
      "channelTitle": "Rick Astley",
      "channelHandle": "@RickAstley",
      "channelVerified": true,
      "lengthText": "3:33",
      "viewCountText": "1.5B views",
      "publishedTimeText": "14 years ago",
      "hasCaptions": true,
      "thumbnails": [{ "url": "...", "width": 120, "height": 90 }]
    }
  ],
  "result_count": 20
}

チャンネル検索のレスポンス(type=channel):

{
  "results": [{
    "type": "channel",
    "channelId": "UCuAXFkgsw1L7xaCfnd5JJOw",
    "title": "Rick Astley",
    "handle": "@RickAstley",
    "url": "https://www.youtube.com/@RickAstley",
    "description": "Official channel...",
    "subscriberCount": "4.2M subscribers",
    "verified": true,
    "rssUrl": "https://www.youtube.com/feeds/videos.xml?channel_id=UC...",
    "thumbnails": [...]
  }],
  "result_count": 5
}

GET /api/v2/youtube/channel/search — 1 クレジット

特定のチャンネル内の動画を検索します。channel には @handle、チャンネル URL、または UC... ID を指定します。

GET https://transcriptapi.com/api/v2/youtube/channel/search?channel=@TED&q=climate+change&limit=30
Authorization: Bearer $TRANSCRIPT_API_KEY
User-Agent: YourAgent/1.0
ParamRequiredValidation
channelはい@handle、チャンネル URL、または UC... ID
qはい1~200 文字
limitいいえ1~50(デフォルトは 30)

最大約 30 件の結果を返します(YouTube の上限)。動画検索のレスポンスと同じ形式です。

GET /api/v2/youtube/channel/resolve — 無料

@handle をチャンネル ID に変換します。

GET https://transcriptapi.com/api/v2/youtube/channel/resolve?input=@TED
Authorization: Bearer $TRANSCRIPT_API_KEY
User-Agent: YourAgent/1.0

ワークフロー:検索 → 文字起こし

# 1. Search for videos
GET https://transcriptapi.com/api/v2/youtube/search?q=python+web+scraping&type=video&limit=5
Authorization: Bearer $TRANSCRIPT_API_KEY
User-Agent: YourAgent/1.0

# 2. Get transcript from result
GET https://transcriptapi.com/api/v2/youtube/transcript?video_url=VIDEO_ID&format=text&include_timestamp=true&send_metadata=true
Authorization: Bearer $TRANSCRIPT_API_KEY
User-Agent: YourAgent/1.0

エラー

CodeMeaningAction
401API キーが無効ですキーを確認してください
402クレジットがありませんtranscriptapi.com/billing
403/1010Cloudflare にブロックされましたUser-Agent ヘッダーを追加するか、修正してください
404見つかりませんリソースが存在しません
408タイムアウトしました1 回再試行してください
422無効なパラメーターパラメーターの形式を確認してください

無料プラン:100 クレジット、300 リクエスト/分。

コピー&ペースト用の例

このファイルのすべてのリクエストを、すぐに実行できるワンライナーとして掲載しています:references/curl-examples.md

コメント