MCPサーバ - YouTube

提供: MochiuWiki : SUSE, EC, PCB

概要

YouTube MCPサーバは、Model Context Protocol (MCP) を通じて、AIアシスタントがYouTube動画の字幕・トランスクリプトを取得するための機能を提供するサーバである。
YouTube動画のURLを指定するだけで、AIアシスタントが動画の内容を分析・要約できるようになる。

YouTube Data APIキーは不要で、手軽に導入可能である。
Claude Desktop、Claude Code、VS Code等の主要なMCPクライアントに対応し、Windows、MacOS、Linuxの主要なOSで動作する。

代表的な実装として以下の2つが存在する。

YouTube文字起こしMCPサーバー実装比較
実装名 説明
mcp-youtube
(@anaisbetts/mcp-youtube)
Ani Betts氏が開発した実装であり、yt-dlpを使用して字幕を取得する。
単純な構成で導入が容易であり、YouTube Data APIキーは不要である。
mcp-server-youtube-transcript
(@kimtaeyoon83/mcp-server-youtube-transcript)
Kim Taeyoon氏が開発した実装であり、
多言語対応、広告フィルタリング、タイムスタンプ制御等の高度な機能を提供する。
外部ツールへの依存がなく、Node.jsのみで動作する。


主な活用シーンを以下に示す。

  • 動画コンテンツの要約と分析
  • 技術動画から情報抽出
  • ポッドキャスト形式コンテンツの分析
  • 言語学習における多言語字幕の取得



2つのサーバの比較

下表に、mcp-youtubeとmcp-server-youtube-transcriptの主要な違いを示す。

YouTube MCPサーバ比較
項目 mcp-youtube mcp-server-youtube-transcript
開発元 Ani Betts Kim Taeyoon
npmパッケージ @anaisbetts/mcp-youtube @kimtaeyoon83/mcp-server-youtube-transcript
バージョン 0.6.0 0.1.1
ライセンス MIT MIT
GitHub スター数 506 503
外部依存 yt-dlp 必須 なし
多言語対応 限定的 対応 (自動フォールバック)
広告フィルタリング なし 対応 (デフォルト有効)
タイムスタンプ制御 タイムスタンプ除去 表示 / 非表示を選択可能
YouTube Shorts対応 不明 対応
YouTube API キー 不要 不要



動作要件

mcp-youtubeの要件

  • Node.js
    MCPサーバの実行環境として必要
  • yt-dlp
    字幕取得のために必要な外部ツール
    MacOS: brew install yt-dlp
    Python環境: pip install yt-dlp
    Windows (WinGet): winget install yt-dlp


mcp-server-youtube-transcriptの要件

  • Node.js 18以上
    MCPサーバの実行環境として必要
    外部ツールへの依存はなし



インストール

yt-dlpのインストール (mcp-youtubeを使用する場合)

mcp-youtubeはyt-dlpに依存するため、事前にインストールが必要である。

MacOSの場合

Homebrewを使用する場合は、以下に示すコマンドを実行する。

brew install yt-dlp


Linux / MacOSの場合 (pip経由)

pipを使用する場合は、以下に示すコマンドを実行する。

pip install yt-dlp


Windowsの場合

WinGetを使用する場合は、以下に示すコマンドを実行する。

winget install yt-dlp


インストール後、yt-dlpコマンドがPATHに含まれていることを確認する。

yt-dlp --version



MCPクライアントの設定

設定ファイルの場所

各MCPクライアントの設定ファイルの場所は、以下の通りである。

Claude Desktopの設定ファイルを以下に示す。

  • Linux
    ~/.config/Claude/claude_desktop_config.json
  • MacOS
    ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows
    %APPDATA%\Claude\claude_desktop_config.json


Claude Codeの設定ファイルを以下に示す。

  • ローカルスコープ
    .mcp.json (プロジェクトルート) : claude mcp add コマンドで生成される。
  • ユーザスコープ
    ~/.claude.json (ホームディレクトリ)


mcp-youtubeの設定

Claude Desktopでの設定

claude_desktop_config.json ファイルに以下に示す内容を設定する。

 {
   "mcpServers": {
     "youtube": {
       "command": "npx",
       "args": ["-y", "@anaisbetts/mcp-youtube"]
     }
   }
 }


設定ファイルを保存した後、Claude Desktopを再起動して設定を反映する。

Claude Codeでの設定

Claude Codeでは、claude mcp add コマンドを使用してMCPサーバを追加できる。

claude mcp add youtube -- npx -y @anaisbetts/mcp-youtube


プロジェクトスコープで設定する場合は、--scope project オプションを追加する。

claude mcp add --scope project youtube -- npx -y @anaisbetts/mcp-youtube


VS Code / Cursorでの設定

.vscode/mcp.json または .cursor/mcp.json ファイルに以下に示す内容を設定する。

 {
   "mcpServers": {
     "youtube": {
       "command": "npx",
       "args": ["-y", "@anaisbetts/mcp-youtube"]
     }
   }
 }


Windowsでの設定

Windowsでは npx を使用するMCPサーバの場合、cmd /c ラッパーが必要である。

 {
   "mcpServers": {
     "youtube": {
       "command": "cmd",
       "args": ["/c", "npx", "-y", "@anaisbetts/mcp-youtube"]
     }
   }
 }


mcp-server-youtube-transcriptの設定

Claude Desktopでの設定

claude_desktop_config.json ファイルに以下に示す内容を設定する。

 {
   "mcpServers": {
     "youtube-transcript": {
       "command": "npx",
       "args": ["-y", "@kimtaeyoon83/mcp-server-youtube-transcript"]
     }
   }
 }


設定ファイルを保存した後、Claude Desktopを再起動して設定を反映する。

Claude Codeでの設定
claude mcp add youtube-transcript -- npx -y @kimtaeyoon83/mcp-server-youtube-transcript


プロジェクトスコープで設定する場合は、--scope project オプションを追加する。

claude mcp add --scope project youtube-transcript -- npx -y @kimtaeyoon83/mcp-server-youtube-transcript


VS Code / Cursorでの設定

.vscode/mcp.json または .cursor/mcp.json ファイルに以下に示す内容を設定する。

 {
   "mcpServers": {
     "youtube-transcript": {
       "command": "npx",
       "args": ["-y", "@kimtaeyoon83/mcp-server-youtube-transcript"]
     }
   }
 }


Windowsでの設定

Windowsでは cmd /c ラッパーを使用する。

 {
   "mcpServers": {
     "youtube-transcript": {
       "command": "cmd",
       "args": ["/c", "npx", "-y", "@kimtaeyoon83/mcp-server-youtube-transcript"]
     }
   }
 }



ツール仕様

mcp-youtubeのツール

下表に、mcp-youtubeが提供するツールを示す。

mcp-youtube ツール一覧
ツール名 説明
get_transcript YouTube URLを指定して字幕テキストを取得する。
yt-dlpを使用して字幕データを取得し、テキスト形式で返す。


mcp-server-youtube-transcriptのツール

下表に、mcp-server-youtube-transcriptが提供するツールとパラメータを示す。

mcp-server-youtube-transcript ツール一覧
ツール名 パラメータ 説明
get_transcript url (必須) YouTube動画URL、Shorts URL、動画IDを指定する。
get_transcript lang (オプション、デフォルト: "en") 取得する字幕の言語コードを指定する。
例: ja (日本語)、en (英語)、ko (韓国語)
get_transcript include_timestamps (オプション、デフォルト: false) タイムスタンプを字幕テキストに含めるかどうかを指定する。
get_transcript strip_ads (オプション、デフォルト: true) 広告・スポンサーシップに関する文字列を除去するかどうかを指定する。


対応URL形式 (mcp-server-youtube-transcript)

mcp-server-youtube-transcriptは、以下に示すURL形式に対応している。



使用方法

MCPサーバを設定後、AIアシスタントに自然言語で指示するだけで、対応するツールが自動的に呼び出される。

動画の要約

YouTube動画の内容を要約する場合の操作例を以下に示す。

  • 動画全体を要約する場合
     # プロンプト例 :
     
     このYouTube動画を要約してください: https://www.youtube.com/watch?v=xxxxx
    

  • キーポイントを抽出する場合
     # プロンプト例 :
     
     この動画のキーポイントを5つ教えてください: https://www.youtube.com/watch?v=xxxxx
    


多言語字幕の取得

特定の言語で字幕を取得する場合の操作例を以下に示す。
mcp-server-youtube-transcriptを使用する場合に有効である。

  • 日本語字幕を取得する場合
     # プロンプト例 :
     
     この動画の日本語字幕を取得してください: https://www.youtube.com/watch?v=xxxxx
    


技術情報の抽出

技術動画から特定の情報を抽出する場合の操作例を以下に示す。

  • 動画で紹介されているツールを一覧化する場合
     # プロンプト例 :
     
     この技術動画で紹介されているツールを一覧にしてください: https://www.youtube.com/watch?v=xxxxx
    



トラブルシューティング

下表に、一般的なエラーと対処法を示す。

トラブルシューティング一覧
問題 原因 対処法
yt-dlpが見つからない (mcp-youtube) yt-dlpがインストールされていない。
または、PATHに含まれていない。
yt-dlpをインストールして、PATHに追加する。
yt-dlp --version コマンドで動作確認する。
字幕が取得できない 動画に字幕が存在しない。
または、字幕が無効化されている。
字幕が存在する動画を指定する。
動画のYouTubeページで字幕の有無を確認する。
指定した言語の字幕が取得できない 指定した言語コードの字幕が動画に存在しない。 別の言語コードを試す。
mcp-server-youtube-transcriptは自動フォールバックを試みるが、
全言語で字幕がない場合はエラーとなる。
npxコマンドエラーが発生する (Windows) Windowsでは npx を直接実行できない場合がある。 設定ファイルで cmd /c ラッパーを使用する。
Node.jsバージョンエラーが発生する インストールされているNode.jsが要件を満たしていない。 mcp-server-youtube-transcriptの場合、
Node.js v18以降にアップグレードする。
MCPサーバが起動しない 設定ファイルの記述に誤りがある。
または、Node.jsがインストールされていない。
MCPクライアントを再起動する。
設定ファイルのJSON構文を確認する。
Node.jsのインストール状態を確認する。