mcpField
Y
YouTube Transcript MCP Server

YouTube Transcript MCP Server

ローカル
github.com/jkawamotoメディア・デザイン494今日更新

YouTube Transcript MCP Server について

YouTube Transcript MCP Serverは、動画を使うLLMワークフロー向けに字幕とメタデータを取得します。タイムスタンプ付きセグメント、言語一覧、長い字幕のページ分割、プロキシ設定に対応します。

主な機能

  1. 01テキスト字幕とタイムスタンプ付き字幕の取得
  2. 02動画メタデータの取得
  3. 03利用可能な字幕言語の一覧
  4. 04長い動画字幕の分割とページ取得
  5. 05住宅プロキシとHTTP/HTTPSプロキシの利用

活用シーン

  1. 01講義やポッドキャストの字幕取得
  2. 02長い動画字幕のページ取得
  3. 03利用可能な字幕言語の選択
  4. 04動画タイトルとチャンネル情報の取得

MCP 対応

字幕のテキスト取得やタイムスタンプ付き取得、言語一覧、動画メタデータ取得のツールをMCPクライアントに公開します。長い字幕はカーソルを使って分割取得できます。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

インストール方法は未掲載です

このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。

リポジトリ
パッケージ
mcpbmcp-youtube-transcript.mcpb0.8.3

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

YouTube Transcript MCP Server

uv Python Application pre-commit GitHub License Dockerhub

YouTube 動画のトランスクリプトとメタデータを取得し、LLM のワークフローに直接取り込む Model Context Protocol(MCP) サーバーです。

AI エージェント向けに特化して設計されており、自動ページネーションで長時間の動画にもシームレスに対応します。 また、YouTube のレート制限や IP ブロックを回避するための、堅牢なプロキシサポートも備えています。

主な機能

  • 充実したトランスクリプト取得:複数の言語で、テキスト、タイムスタンプ付きセグメント、動画メタデータを取得します。
  • スマートなチャンク分割とページネーション:長いトランスクリプトを自動的にチャンクに分割し(デフォルト:50,000 文字)、コンテキストウィンドウの 超過を防ぎます。モデルは何時間もの動画も簡単にページ送りしながら確認できます。
  • 堅牢なプロキシサポート:IP ブロックを防ぐため、住宅用プロキシ(Webshare、ScrapingAnt)と標準の HTTP/HTTPS プロキシを 標準でサポートしています。
  • 幅広い互換性:Claude Desktop、Cursor、LM Studio、Goose、および標準的な MCP クライアントで動作します。

クイックスタートとインストール

メモ

uvx コマンドを使用するには、システムに uv をインストールする必要があります。

このサーバーは標準の stdio を介して通信します。 ほとんどの MCP クライアントでは、uvx(Astral uv に含まれる)を使って直接実行できます。

一般的な設定(標準 MCP JSON)

クライアントの MCP 設定ファイル(通常は mcpServers の下)に、次のエントリーを追加します。

{
  "mcpServers": {
    "youtube-transcript": {
      "command": "uvx",
      "args": [
        "--from",
        "git+https://github.com/jkawamoto/mcp-youtube-transcript",
        "mcp-youtube-transcript"
      ]
    }
  }
}
クライアント別セットアップガイド(クリックして展開)
Claude Desktop
  • GUI(ドラッグ&ドロップ):Releases ページ から .mcpb バンドルをダウンロードし、Claude Desktop の設定画面にドロップします。
  • 手動設定:上記の JSON を claude_desktop_config.json に追加します(保存後、Claude Desktop を再起動してください)。
    • macOS:~/Library/Application Support/Claude/claude_desktop_config.json
    • Windows:%APPDATA%\Claude\claude_desktop_config.json
Cursor
  1. Cursor Settings > Features > MCP Servers に移動します。
  2. + Add New MCP Server をクリックします。
  3. 名前:youtube-transcript、タイプ:command。
  4. コマンド:uvx --from git+https://github.com/jkawamoto/mcp-youtube-transcript mcp-youtube-transcript
Goose

詳しいインストール手順については、次のチュートリアルを参照してください。 YouTube Transcript Extension。

LM Studio

LM Studio 用にこのサーバーを設定するには、下のボタンをクリックします。

LM Studio に MCP サーバー youtube-transcript を追加

Docker の使用

このサーバーの Docker イメージは Docker Hub で入手できます。 詳しい使用方法とドキュメントについては、Docker Hub のページを参照してください。

利用可能なツール

サーバーは、LLM エージェント向けに以下の MCP ツールを登録します。

ツール説明
get_transcriptYouTube 動画 URL のプレーンテキストの文字起こしを取得します。
get_timed_transcript開始時間と再生時間を含む文字起こしのセグメントを取得します。
get_available_languages利用可能な文字起こし言語(手動生成および自動生成)の一覧を取得します。
get_video_infoタイトルやチャンネル情報など、動画のメタデータを取得します。
ツールのパラメーターとスキーマ
  • get_transcript

    • url (string, required): YouTube 動画の完全な URL です。
    • lang (string, optional): 優先する言語コードです(デフォルトは "en")。
    • next_cursor (integer, optional): 長い動画の次のチャンクを取得するためのカーソルです。
  • get_timed_transcript

    • url (string, required): YouTube 動画の完全な URL です。
    • lang (string, optional): 優先する言語コードです(デフォルトは "en")。
    • next_cursor (integer, optional): 次のチャンクを取得するためのカーソルです。
  • get_available_languages

    • url (string, required): YouTube 動画の完全な URL です。
  • get_video_info

    • url (string, required): YouTube 動画の完全な URL です。

高度な設定

長い動画への対応(ページネーション)

長い動画(講義、カンファレンス、ポッドキャストのエピソードなど)は、LLM のトークンコンテキスト上限をすぐに超えることがあります。 デフォルトでは、50,000 characters を超える文字起こしはチャンクに分割されます。応答が分割された場合は、 next_cursor が提供されるため、LLM エージェントは残りの部分を自動的に取得できます。

チャンクの文字数上限を変更するには、--response-limit を指定します。 ページネーションを無効にして文字起こし全体を一度に取得するには、--response-limit に負の値(例:-1)を設定します。

{
  "mcpServers": {
    "youtube-transcript": {
      "command": "uvx",
      "args": [
        "--from",
        "git+https://github.com/jkawamoto/mcp-youtube-transcript",
        "mcp-youtube-transcript",
        "--response-limit",
        "15000"
      ]
    }
  }
}
IP ブロックの回避(プロキシの設定)

YouTube は、クラウドプロバイダーやデータセンターの IP アドレスからの自動文字起こしリクエストを積極的にブロックします。 住宅用プロキシまたはローテーションプロキシを使用すると、アクセスを中断せずに利用できます。

1. Webshare 住宅用プロキシ

環境変数またはコマンドラインフラグを使って認証情報を設定します。

{
  "mcpServers": {
    "youtube-transcript": {
      "command": "uvx",
      "args": [
        "--from",
        "git+https://github.com/jkawamoto/mcp-youtube-transcript",
        "mcp-youtube-transcript"
      ],
      "env": {
        "WEBSHARE_PROXY_USERNAME": "your_username",
        "WEBSHARE_PROXY_PASSWORD": "your_password"
      }
    }
  }
}

(CLI での同等のオプション:--webshare-proxy-username および --webshare-proxy-password)

2. ScrapingAnt

ScrapingAnt を使用する場合は、API トークンを指定します。

{
  "mcpServers": {
    "youtube-transcript": {
      "command": "uvx",
      "args": [
        "--from",
        "git+https://github.com/jkawamoto/mcp-youtube-transcript",
        "mcp-youtube-transcript"
      ],
      "env": {
        "SCRAPINGANT_API_TOKEN": "your_api_token"
      }
    }
  }
}

(CLI での同等のオプション:--scrapingant-api-token)

YouTube にアクセスするには、有料の ScrapingAnt Web Scraping API サブスクリプションが必要です。 YouTube へのアクセスには住宅用プロキシが必要で、標準的なプロキシリクエストよりも多くの ScrapingAnt クレジットを消費します。 詳細は、ScrapingAnt のクレジット費用に関するドキュメントをご覧ください。

3. 標準/汎用 HTTP・HTTPS プロキシ

HTTP_PROXY/HTTPS_PROXY(または --http-proxy/--https-proxy)を使って、カスタムプロキシエンドポイントを指定します。

{
  "mcpServers": {
    "youtube-transcript": {
      "command": "uvx",
      "args": [
        "--from",
        "git+https://github.com/jkawamoto/mcp-youtube-transcript",
        "mcp-youtube-transcript"
      ],
      "env": {
        "HTTPS_PROXY": "http://username:[email protected]:8080"
      }
    }
  }
}

詳細については、以下をご覧ください。 IP ブロックの回避 - YouTube Transcript API。

ライセンス

このアプリケーションは MIT License の下でライセンスされています。詳細は LICENSE ファイルをご覧ください。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。