mcpField
Y
youtube-data

youtube-data

github.com/zeropointrepoデータ・データベース1.1k721 回インストール5 週間前に更新
リポジトリ

youtube-data について

youtube-dataは、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-data

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

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

詳細

YouTube データ

TranscriptAPI.com 経由で YouTube データにアクセスします。Google の YouTube Data API に代わる軽量な選択肢です。

セットアップ

$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。最新のパラメーターとスキーマについては、こちらを参照してください。

動画データ(文字起こし+メタデータ)— 1 クレジット

GET https://transcriptapi.com/api/v2/youtube/transcript?video_url=VIDEO_URL&format=json&include_timestamp=true&send_metadata=true
Authorization: Bearer $TRANSCRIPT_API_KEY
User-Agent: YourAgent/1.0

レスポンス:

{
  "video_id": "dQw4w9WgXcQ",
  "language": "en",
  "transcript": [
    { "text": "We're no strangers to love", "start": 18.0, "duration": 3.5 }
  ],
  "metadata": {
    "title": "Rick Astley - Never Gonna Give You Up",
    "author_name": "Rick Astley",
    "author_url": "https://www.youtube.com/@RickAstley",
    "thumbnail_url": "https://i.ytimg.com/vi/dQw4w9WgXcQ/maxresdefault.jpg"
  }
}

動画情報と詳細なメタデータ

文字起こしのクレジットを消費する前に言語を確認する(無料)、または視聴回数/高評価数、公開日、説明、再生時間、タグを取得します(1 クレジット)。

GET https://transcriptapi.com/api/v2/youtube/info?video_url=VIDEO_URL
Authorization: Bearer $TRANSCRIPT_API_KEY
User-Agent: YourAgent/1.0
GET https://transcriptapi.com/api/v2/youtube/video/metadata?video_url=VIDEO_URL&include=details,related
Authorization: Bearer $TRANSCRIPT_API_KEY
User-Agent: YourAgent/1.0

video/metadata は、title、viewCountText、likeCountText、publishDate、description、descriptionLinks、channel、thumbnails に加えて、details(再生時間、カテゴリ、タグ、字幕トラック)と、include で指定した場合の関連動画 related を返します。

名称: /video/metadata は以前 /video/info でした。古いパスも引き続き動作しますが、非推奨です。

検索データ — 1 ページあたり 1 クレジット

GET https://transcriptapi.com/api/v2/youtube/search?q=QUERY&type=video&limit=20
Authorization: Bearer $TRANSCRIPT_API_KEY
User-Agent: YourAgent/1.0

type には playlist と movie も指定できます。最初のページのみを対象とし、sort(relevance/views)、upload_date(hour/today/week/month/year)、duration(short/medium/long)、features(例:hd,subtitles,cc)を追加できます。

動画の結果フィールド: videoId、title、channelId、channelTitle、channelHandle、channelVerified、lengthText、viewCountText、publishedTimeText、hasCaptions、thumbnails

チャンネルの結果フィールド(type=channel):channelId、title、handle、url、description、subscriberCount、verified、rssUrl、thumbnails

チャンネルデータ

チャンネルのエンドポイントは channel を受け付けます。@handle、チャンネル URL、または UC... ID を指定してください。事前に解決する必要はありません。

ハンドルを ID に解決(無料):

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

返される値:{"channel_id": "UCsT0YIqwnpJCM-mx7-gSA4Q", "resolved_from": "@TED"}

最新の動画 15 件と正確な統計情報(無料):

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

返される値:channel 情報、videoId、title、published(ISO)、viewCount(正確な数値)、description、thumbnail を含む results 配列

チャンネルのすべての動画(ページネーション、1 ページあたり 1 クレジット):

GET https://transcriptapi.com/api/v2/youtube/channel/videos?channel=@NASA&tab=videos
Authorization: Bearer $TRANSCRIPT_API_KEY
User-Agent: YourAgent/1.0

# Most-viewed first (channel Videos tab, ~30 per page)
GET https://transcriptapi.com/api/v2/youtube/channel/videos?channel=@NASA&sort=popular
Authorization: Bearer $TRANSCRIPT_API_KEY
User-Agent: YourAgent/1.0

1 ページあたり約 100 件の動画と、ページネーション用の continuation_token が返されます。tab は shorts または streams も受け付けます。ページネーションでは、同じ tab を繰り返し指定してください。

並べ替え。 channel/videos に sort=latest、popular、または oldest を追加すると、チャンネルの動画を希望する順序で取得できます。たとえば、人気の高い動画を先に表示できます。並べ替えたページでは約 30 件の動画が返されます(並べ替えなしのページでは約 100 件)。ページごとのクレジット消費量はどちらも同じ 1 クレジットです。

ページネーションでは、各リクエストで同じ sort を指定してください。

項目のフィールド。 各項目には members_only が含まれます。この値は YouTube で「メンバー限定」と表示されている場合にのみ true になり、該当する項目には viewCountText がありません。tab=streams の項目には lengthText と publishedTimeText(例:Streamed 2 years ago)が含まれます。tab=shorts では、YouTube の Shorts グリッドにはどちらも表示されないため、両方とも null になります。チャンネルタブのフィード(sort を指定した tab=videos、tab=shorts、tab=streams)では、channelId、channelTitle、channelHandle、index は null になります。

チャンネル内を検索(1 クレジット):

GET https://transcriptapi.com/api/v2/youtube/channel/search?channel=@TED&q=QUERY&limit=30
Authorization: Bearer $TRANSCRIPT_API_KEY
User-Agent: YourAgent/1.0

チャンネルのプロフィール(1 クレジット):

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

返される値:title、handle、verified、subscriberCountText、videoCountText、description、tags、thumbnails、banners、availableTabs

チャンネルの再生リスト(1 ページあたり 1 クレジット):

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

返される値:results(playlistId、title、url、videoCountText、thumbnails)、continuation_token、has_more

チャンネルのコミュニティ投稿(1 ページあたり 1 クレジット):

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

返される値:results(postId、authorName、text、publishedTimeText、voteCountText、attachment)、continuation_token、has_more

チャンネルのキュレーション済みセクション(1 クレジット):

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

チャンネル独自の順序で、動画/再生リスト/ショート動画/おすすめチャンネルの棚が返されます。tab は podcasts または releases も受け付けます。

再生リストデータ — 1 ページあたり 1 クレジット

playlist には、YouTube の再生リスト URL または再生リスト ID を指定します。

GET https://transcriptapi.com/api/v2/youtube/playlist/videos?playlist=PL_ID
Authorization: Bearer $TRANSCRIPT_API_KEY
User-Agent: YourAgent/1.0

返される値:results(動画)、playlist_info(title、numVideos、ownerName、viewCount)、continuation_token、has_more

クレジット消費量

エンドポイント消費量返されるデータ
transcript1字幕全文+メタデータ
info無料基本的なメタデータ+言語
video/metadata1詳細なメタデータ(詳細/関連情報を含む)
search1/ページ動画/チャンネル/再生リスト/映画の詳細
channel/resolve無料チャンネル ID の対応情報
channel/info1チャンネルのプロフィール
channel/latest無料動画 15 件+正確な統計情報
channel/videos1/ページ並べ替えなしで約 100 件/ページ、並べ替えありで約 30 件/ページ
channel/search1検索クエリに一致する動画
channel/playlists1/ページチャンネルの再生リスト
channel/posts1/ページコミュニティタブのコンテンツ
channel/sections1キュレーション済みのホームページの棚
playlist/videos1/ページ1 ページあたり 100 件の動画

エラー

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

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

コピー&ペースト用の例

このファイル内のすべてのリクエストを、すぐに実行できる 1 行形式で掲載しています:references/curl-examples.md

コメント