youtube-transcripts について
youtube-transcriptsは、YouTubeのURLから字幕と動画メタデータを抽出し、構造化JSONで返します。開発者やアシスタントは、タイムスタンプ付き字幕や全文を取得でき、複数動画の一括処理にも対応します。
主な機能
- 01タイムスタンプ付き字幕セグメント
- 02全文のプレーンテキスト
- 03複数URLの一括処理
- 04言語と再生時間のメタデータ
- 05動画ごとのエラー記録
活用シーン
- 01動画プレーヤー用字幕の準備
- 02検索用転記テキストのインデックス作成
- 03複数動画の文字起こし分析
MCP 対応
Apify MCPサーバーを通じてYouTube Transcripts APIをMCPツールとして公開し、MCPクライアントからActorを実行できます。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
https://mcp.apify.com/?tools=johnvc/YoutubeTranscriptsclaude mcp add --transport http johnisanerd-youtube-transcripts https://mcp.apify.com/?tools=johnvc/YoutubeTranscripts{"mcpServers":{"johnisanerd-youtube-transcripts":{"type":"http","url":"https://mcp.apify.com/?tools=johnvc/YoutubeTranscripts"}}}Cursor で開く{"servers":{"johnisanerd-youtube-transcripts":{"type":"http","url":"https://mcp.apify.com/?tools=johnvc/YoutubeTranscripts"}}}VS Code で開く{"mcpServers":{"johnisanerd-youtube-transcripts":{"type":"http","url":"https://mcp.apify.com/?tools=johnvc/YoutubeTranscripts"}}}{"mcpServers":{"johnisanerd-youtube-transcripts":{"serverUrl":"https://mcp.apify.com/?tools=johnvc/YoutubeTranscripts"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
ツール
詳細
🎬 YouTube Transcripts API:字幕をクリーンな JSON で取得
YouTube Transcripts API を効率的かつ確実に、開発者に使いやすい方法で利用できます。
Actor ページ: apify.com/johnvc/YoutubeTranscripts 入力スキーマ: apify.com/johnvc/YoutubeTranscripts/input-schema
YouTube Transcripts API は、1 本以上の YouTube 動画から文字起こしを取得し、クリーンで構造化された JSON を返します。各動画について、タイムスタンプ付きの字幕リスト(テキスト、開始時刻、再生時間)、文字起こし全体のプレーンテキスト版、言語メタデータが返されます。通常の動画、Shorts、youtu.be の短縮リンク、埋め込み URL、モバイル URL に対応し、複数の URL を並列処理します。料金は動画ごとに発生します。
動画での解説
クイックスタート
前提条件
- Python 3.11 以降
- Apify アカウントと API キー(こちらから無料のキーを取得)
-
リポジトリをクローン
git clone https://github.com/johnisanerd/Apify-Youtube-Transcripts-API.git cd Apify-Youtube-Transcripts-API -
UV で依存関係をインストール
# Install UV if you do not have it: curl -LsSf https://astral.sh/uv/install.sh | sh # Install project dependencies: uv sync -
API キーを設定
cp .env.example .env # Edit .env and add your Apify API key # Get your free API key at: https://apify.com?fpr=9n7kx3 -
サンプルを実行
uv run python youtube-transcripts-api.py
代替方法:API キーを直接設定
export APIFY_API_TOKEN="your_api_key_here"
uv run python youtube-transcripts-api.py
この YouTube Transcripts API を使う理由
2 種類の文字起こし形式。 各動画からタイムスタンプ付きの字幕リストとプレーンテキスト版が返されるため、インタラクティブプレーヤーを作成したり、クリーンなテキストをそのまま検索や分析に利用したりできます。
幅広い URL 形式に対応。 通常の動画、Shorts、youtu.be の短縮リンク、埋め込み URL、モバイル URL をすべて利用できます。
複数の動画を並列処理。 URL の配列を渡すと、それぞれが並列処理されます。無効な URL は実行を停止させることなく、データセットにエラーとして記録されます。
言語メタデータ。 各レコードには、文字起こしの言語、言語コード、字幕が自動生成されたかどうかが記録されます。
予測しやすい従量課金。 サブスクリプションは不要で、秒単位ではなく動画単位で課金されるため、単一動画でも一括処理でも低コストに利用できます。
自動化が簡単。 Python から数行で呼び出すことも、MCP ツールとして読み込んで Claude や Cursor などのアシスタントから必要に応じて文字起こしを取得することもできます。
機能
主な機能
- 単一または一括入力:1 つの URL を文字列として、または複数の URL を配列として指定
- 幅広い URL に対応:通常の動画、Shorts、youtu.be、埋め込み、モバイル URL
- タイムスタンプ付き字幕:各セグメントのテキスト、開始時刻、再生時間
- プレーンテキストの文字起こし:1 つの文字列として提供
- 動画ごとのエラー処理:実行を失敗させることなく、無効な URL を記録
データ品質
- 動画ごとに 2 種類の形式:タイムスタンプ付きとプレーンテキスト
- 言語メタデータ:言語名、言語コード、自動生成フラグ
- 動画の長さ:秒単位
- 各レコードに成功フラグ:簡単にフィルタリング可能
- 一貫した JSON 構造:すべての動画で共通
使用例
単一の動画
{
"youtube_url": "https://www.youtube.com/watch?v=aircAruvnKk"
}
複数の動画(一括処理)
{
"youtube_url": [
"https://www.youtube.com/watch?v=aircAruvnKk",
"https://youtu.be/9bZkp7q19f0",
"https://www.youtube.com/shorts/abcdEFGhijk"
]
}
入力パラメーター
| パラメーター | 型 | 必須 | デフォルト | 説明 |
|---|---|---|---|---|
youtube_url | string または array | はい | - | YouTube URL を 1 つ文字列として、または複数を配列として指定します。通常の動画、Shorts、youtu.be、埋め込み、モバイル URL に対応しています。各 URL は並列処理されます。 |
出力形式
動画ごとに 1 項目が出力されます。以下の文字起こしテキストは著作権に配慮したプレースホルダーです。実際に実行すると、字幕のテキストが返されます。
{
"video_id": "aircAruvnKk",
"language": "English",
"language_code": "en",
"is_generated": false,
"total_seconds": 1105.64,
"timestamped": [
{ "text": "<caption segment text>", "start": 4.22, "duration": 1.18 }
],
"non_timestamped": "<full transcript as a single plain-text string>",
"url": "https://www.youtube.com/watch?v=aircAruvnKk",
"timestamp": "2026-05-29T11:58:40",
"success": true
}
timestamped 配列には、各字幕セグメントの text、start、duration(秒単位)が 1 件ずつ格納されます。non_timestamped は文字起こし全体を 1 つの文字列として格納します。言語メタデータ(language、language_code、is_generated)と total_seconds は動画の情報を示し、文字起こしが見つかった場合は success が true になります。無効または利用できない URL は、代わりに success: false とエラーメモ付きで返されます。
MCP ツールとして使用する
YouTube Transcripts API を MCP ツールとして読み込むと、アシスタントから呼び出せるようになります。MCP サーバーの URL には、この Actor だけが事前に読み込まれます。
https://mcp.apify.com/?tools=actors,docs,johnvc/YoutubeTranscripts
案内が表示されたらブラウザーで OAuth 認証を行うか、Apify API トークン(Python の例で使用しているものと同じ APIFY_API_TOKEN)を使用してください。トークンは https://console.apify.com/settings/integrations で取得できます。また、無料の Apify アカウントは https://apify.com?fpr=9n7kx3 で作成できます。
Claude Cowork Desktop にインストールする

Cowork はデスクトップアプリの自動化モードです。YouTube Transcripts API をツールとして使用できるようにするには、Apify MCP サーバーをコネクターとして追加します。
- Claude デスクトップアプリを開き、Settings → Connectors に移動します(または、Settings → Developer → Edit Config を選択して
claude_desktop_config.jsonを直接編集します)。- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
- macOS:
- この Actor だけを事前に読み込んだ Apify MCP サーバーを追加します。
{
"mcpServers": {
"apify": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://mcp.apify.com/?tools=actors,docs,johnvc/YoutubeTranscripts"
]
}
}
}
- アプリを再起動します。Cowork が初めてツールを呼び出すときに、ブラウザーで OAuth プロンプトを完了するか、コネクターの設定に Apify API トークンを追加して OAuth を省略します。
- Cowork のチャットでツールが利用可能であることを確認し、YouTube Transcripts API を実行するよう依頼します。
デスクトップアプリをダウンロードして無料トライアルを開始する:https://claude.ai/referral/uIlpa7nPLg 詳細:https://docs.apify.com/platform/integrations/claude-desktop
Claude Code にインストールする

Claude Code はコマンドラインツールです。次のコマンドで Actor の MCP サーバーを追加します。
claude mcp add --transport http apify \
"https://mcp.apify.com/?tools=actors,docs,johnvc/YoutubeTranscripts"
ブラウザーの OAuth の代わりにトークンを使用するには、次のようにします。
claude mcp add --transport http apify \
"https://mcp.apify.com/?tools=actors,docs,johnvc/YoutubeTranscripts" \
--header "Authorization: Bearer YOUR_APIFY_TOKEN"
次に、claude mcp list で確認するか、セッション内で /mcp を実行します。YouTube Transcripts API を呼び出すよう Claude Code に依頼してください。
Claude Code を無料で試す:https://claude.ai/referral/uIlpa7nPLg Claude Code の MCP ドキュメント:https://code.claude.com/docs/en/mcp
Claude(ウェブサイト)にインストールする

claude.ai では、Apify をコネクターとして追加した後、この Actor のツールだけを有効にします。
- Settings → Connectors → Browse connectors に移動し、Apify MCP server を検索します。インストールします(プロンプトが表示された場合は、有効化または更新します)。
- 接続時に Apify API トークンで認証し、ツール
johnvc/YoutubeTranscriptsを有効にします。 - 任意のチャットで + → Connectors を開き、Apify をオンにします。
- または、Add custom connector を選択して、MCP URL 全体
https://mcp.apify.com/?tools=actors,docs,johnvc/YoutubeTranscriptsを貼り付けます。プロンプトが表示されたら OAuth を使用します。 - YouTube Transcripts API を実行するよう Claude に依頼します。
ウェブで Claude を開く:https://claude.ai/referral/uIlpa7nPLg
Cursor にインストールする

Cursor はプロジェクトファイル .cursor/mcp.json から MCP サーバーを読み込みます。
- プロジェクト内に
.cursor/mcp.jsonを作成します。
{
"mcpServers": {
"apify": {
"url": "https://mcp.apify.com/?tools=actors,docs,johnvc/YoutubeTranscripts"
}
}
}
- ブラウザーの OAuth よりトークン認証を使用する場合は、ヘッダーを追加します。
{
"mcpServers": {
"apify": {
"url": "https://mcp.apify.com/?tools=actors,docs,johnvc/YoutubeTranscripts",
"headers": { "Authorization": "Bearer YOUR_APIFY_TOKEN" }
}
}
}
- Cursor → Settings → MCP を開き、apify サーバーが接続されていること(緑色の点)を確認します。
- Composer または Chat で、YouTube Transcripts API を呼び出すよう Cursor に依頼します。
Cursor を初めて使う方はこちら:https://cursor.com/referral?code=XQP4VBLI3NNX
ChatGPT にインストール

ChatGPT は Developer mode を通じて Apify MCP サーバーに接続します(ChatGPT Pro、Plus、Business、Enterprise、Education プランで利用できます)。
- プロフィールアイコンをクリックし、Settings > Apps に移動します。Create app ボタンが表示されない場合は、Advanced settings を開いて Developer mode を有効にします。
- Create app をクリックし、フォームに入力します。
- Name: Apify
- MCP Server URL:
https://mcp.apify.com/?tools=actors,docs,johnvc/YoutubeTranscripts - Authentication: OAuth
- Create をクリックし、Apify との接続を認証します。
- 会話でアプリを使用するには、チャットで + をクリックし、Developer mode を選択してから Apify を選択します。
詳しくはこちら:https://docs.apify.com/platform/integrations/mcp
YouTube Transcripts API を活用して、コンテンツの再利用、検索インデックス作成、調査に、信頼性の高い構造化された字幕を利用できます。
🤖 この Actor について AI アシスタントに質問する
お好みの AI で YouTube Transcripts API についてすぐに送信できるプロンプトを開きます。
- 💬 ChatGPT
- 🧠 Claude
- 🔍 Perplexity
- 🅒 Copilot
最終更新日:2026.10.27
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。
