YouTube-MCP について
YouTube-MCPは、Java MCP SDKとSpring AIで構築されたYouTube向けMCPサーバーです。MCP経由で動画を検索し、チャンネル、再生リスト、動画の情報を取得したい用途に向いており、字幕も抽出できます。
主な機能
- 01クエリによるYouTube動画検索
- 02動画字幕の抽出
- 03動画の詳細、サムネイル、公開コメントの取得
- 04チャンネル情報、セクション、再生リストの確認
- 05チャンネルの公開アクティビティの表示
- 06地域別動画カテゴリの一覧
活用シーン
- 01テーマに関連する動画の検索
- 02動画字幕の抽出と確認
- 03チャンネルの再生リストと公開アクティビティの取得
MCP 対応
MCPサーバーは、YouTube検索、字幕抽出、動画およびチャンネル情報の取得ツールをMCPクライアントに公開します。SSEまたはstdioで接続できます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
YouTube-MCP
Java MCP SDK と Spring AI を使用して構築された、YouTube の検索、文字起こしなどを行う MCP(Model Context Protocol)サーバーです。文字起こしの抽出には JavaScript のみを使用します。
MCP Review による認定を受けています:youtube-mcp-server
公開されているツール
- youtube_search:検索クエリを使用して YouTube 動画を検索します。
- youtube_transcript:動画 ID を指定して YouTube 動画の文字起こしを取得します。
- youtube_video_details:動画 ID を使用して YouTube 動画の詳細を取得します。
- youtube_video_thumbnails:動画 ID を指定して YouTube 動画のサムネイル URL を取得します。
- youtube_video_comments:動画 ID を指定して YouTube 動画のコメントを一覧表示します。(公開コメントのみ)
- youtube_channel_info:チャンネル ID を指定して YouTube チャンネルの情報を取得します。
- youtube_channel_playlists:チャンネル ID を指定して YouTube チャンネルの再生リストを一覧表示します。
- youtube_channel_sections:チャンネル ID を指定して YouTube チャンネルのセクション(棚)を一覧表示します。
- youtube_playlist_items:再生リスト ID を指定して YouTube 再生リスト内の動画を一覧表示します。
- youtube_activities:チャンネル ID を指定して YouTube チャンネルのアクティビティを一覧表示します。(公開アクティビティのみ)
- youtube_video_categories:地域で利用できる動画カテゴリを一覧表示します。
動画
ブログ
YouTube-MCP:YouTube 用 Model Context Protocol サーバー
MCP サーバーの実行と、MCP ホストからの接続
Docker コンテナとして MCP サーバーを実行する
Docker イメージは Docker Hub で利用できます - https://hub.docker.com/r/codewizard01/youtube-mcp
前提条件
- Docker
docker run -e YOUTUBE_API_KEY=<your_api_key_here> -p 8085:8080 codewizard01/youtube-mcp:latest
これにより、ポート 8085 で MCP サーバーが起動します。
SSE 経由でやり取りするには、MCP 設定ファイルに以下を追加してください。
{
"youtube": {
"mcp_server": "http://localhost:8085"
}
}
IDE から MCP サーバーを実行する
前提条件
- Java 24
- Maven 3.8.1
- Node
- リポジトリをクローンします
- IDE でプロジェクトを開きます
- 次のコマンドを実行してプロジェクトをビルドします
mvn clean install
npm install
- 次のコマンドを実行してサーバーを起動します
mvn spring-boot:run
- サーバーはデフォルトでポート 8080 で起動します。ポートは application.properties ファイルで変更できます。
標準入力/出力による MCP サーバーとのやり取り
標準入力/出力を有効にするには、application.properties ファイル内の以下のコメントアウトされたプロパティを有効にします。
# For integration using stdio enable the below
#spring.ai.mcp.server.stdio=true
#spring.main.banner-mode=off
#spring.main.web-application-type=none
#logging.pattern.console=
#logging.file.name=youtube-mcp-spring.log
mvn package を実行して jar ファイルをビルドします。jar ファイルは target ディレクトリに作成されます。
次に、stdio 経由でやり取りするため、Claude desktop や Github Copilot などの MCP ホストの MCP 設定ファイルに以下を追加します。
"youtube-mcp": {
"command": "java",
"args": [
"-jar",
"/Users/codewiz/youtube-mcp/target/youtube-mcp-0.0.1-SNAPSHOT.jar"
],
"env": {
"YOUTUBE_API_KEY": "<your_api_key_here>"
}
}
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。