YouTube MCP Server について
YouTube MCP Server は、YouTube 動画の検索、字幕の取得、保存済み字幕に対するセマンティック検索を行う MCP サーバーです。公式 API に依存せず、LLM から動画コンテンツを利用したい方に向けたプロジェクトです。
主な機能
- 01公式 API を使わない動画検索
- 02動画の字幕取得
- 03動画情報と字幕のベクトルデータベースへの保存
- 04保存済み字幕のセマンティック検索
活用シーン
- 01チャットからテーマ別のチュートリアル動画を探す
- 02要約や質疑応答のために字幕を取り出す
- 03保存済み動画から機械学習などに関する内容を検索する
MCP 対応
本プロジェクトは MCP サーバーであり、search-youtube、get-transcript、store-video-info、search-transcripts の 4 つのツールを MCP クライアントに提供します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
YouTube MCP サーバー
YouTube 動画の検索、文字起こしの取得、動画コンテンツのセマンティック検索を行うツールを提供する Model Context Protocol(MCP)サーバーです。
サポートのお願い
このプロジェクトがお役に立ち、今後のプロジェクトも応援したいと思われたら、ぜひコーヒーをごちそうしてください!皆さまのご支援により、革新的な AI ソリューションの開発を続けることができます。
皆さまからのご支援は、インテリジェントで使いやすいアプリケーションを作成する情熱を支える大きな力となります。
目次
機能
- 公式 API を使わずに YouTube 動画を検索
- 動画の文字起こしを取得
- 動画情報と文字起こしをベクトルデータベースに保存
- 保存した動画の文字起こしをセマンティック検索
前提条件
- Python 3.8+
- 埋め込み用の Google API キー
- uv パッケージマネージャー
インストール
-
このリポジトリをクローンします
-
uv を使って仮想環境を作成し、有効化します:
uv venv
# On Windows:
.venv\Scripts\activate
# On Unix/MacOS:
source .venv/bin/activate
- uv を使って依存関係をインストールします:
uv pip install -r requirements.txt
- Google API キーを記載した
.envファイルを作成します:
GOOGLE_API_KEY=your_api_key_here
サーバーの実行
MCP サーバーを実行する方法は 2 つあります:
1. 直接実行する方法
MCP サーバーを直接起動するには:
uv run python server.py
2. Claude.app 向けの設定
パッケージマネージャーを使わずに Claude の設定に追加します。この方法は Windows で動作します:
"mcpServers": {
"youtube": {
"command": "C:\\Path\\To\\Your\\Project\\.venv\\Scripts\\python.exe",
"args": ["C:\\Path\\To\\Your\\Project\\server.py"],
"env": {
"GOOGLE_API_KEY": "your_api_key_here"
}
}
}
Uv パッケージマネージャーを使う方法です。この方法は Windows で動作します:
"mcpServers": {
"youtube": {
"command": "uv",
"args": ["--directory", "C:\\Path\\To\\Your\\Project", "run", "server.py"],
"env": {
"GOOGLE_API_KEY": "your_api_key_here"
}
}
}
利用可能なツール
サーバーは以下のツールを提供します:
-
search-youtube:クエリに基づいて YouTube 動画を検索します- パラメーター:
- query:検索クエリ文字列
- max_results:返す結果の最大数(デフォルト:5)
- パラメーター:
-
get-transcript:YouTube 動画の文字起こしを取得します- パラメーター:
- video_url:YouTube 動画の URL
- パラメーター:
-
store-video-info:動画情報と文字起こしをベクトルデータベースに保存します- パラメーター:
- video_url:YouTube 動画の URL
- metadata:動画に関する任意のメタデータ
- パラメーター:
-
search-transcripts:セマンティック検索を使って、保存した動画の文字起こしを検索します- パラメーター:
- query:検索クエリ
- limit:返す結果の最大数(デフォルト:3)
- パラメーター:
MCP クライアントでの使用
このサーバーは、Claude Desktop App などの MCP 互換クライアントで使用できます。ツールは自動的に検出され、クライアントで利用できるようになります。
使用例
- 上記のいずれかの方法でサーバーを起動します
- Claude Desktop App を開きます
- ハンマーアイコンを確認し、YouTube ツールが利用可能になっていることを確かめます
- 次のようなコマンドを使用できます:
- 「Python のチュートリアル動画を検索して」
- 「この動画の文字起こしを取得して:[video_url]」
- 「機械学習に関する保存済みの動画の文字起こしを検索して」
デバッグ
問題が発生した場合:
- Google API キーが
.envファイルに正しく設定されていることを確認します - すべての依存関係が正しくインストールされていることを確認します
- サーバーが実行中で、接続を待ち受けていることを確認します
- サーバーの出力にエラーメッセージがないか確認します
コントリビューション
コントリビューションを歓迎します!お気軽にプルリクエストを送信してください。
ライセンス
このプロジェクトは MIT ライセンスのもとで公開されています。詳細は LICENSE ファイルをご覧ください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。