mcpField
Y
YouTube Caption MCP Server

YouTube Caption MCP Server

ローカル
github.com/iamyosukeメディア・デザイン174 週間前に更新

YouTube Caption MCP Server について

YouTube Caption MCP Serverは、CursorなどのMCPクライアントからAPIキーなしでYouTube動画の情報や字幕を取得できます。複数言語の字幕に対応し、Raw、SRT、VTT形式で出力します。

主な機能

  1. 01動画情報の取得
  2. 02利用可能な字幕言語の一覧表示
  3. 03Raw、SRT、VTT形式での字幕ダウンロード
  4. 04字幕付き動画の検索
  5. 05インメモリキャッシュ

活用シーン

  1. 01動画の基本情報の確認
  2. 02指定言語の字幕がある動画の検索
  3. 03文字起こしや確認用の字幕ダウンロード

MCP 対応

動画情報の取得、字幕一覧表示とダウンロード、字幕付き動画の検索をMCPクライアント向けツールとして提供します。

設定

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

mcp.json · 共通設定
{
"mcpServers": {
"youtube-caption": {
"command": "npx",
"args": [
"-y",
"@iamyosuke/youtube-caption-mcp"
],
"env": {
"LOG_LEVEL": "<LOG_LEVEL>"
}
}
}
}
起動コマンドnpx -y @iamyosuke/youtube-caption-mcp
設定が必要な環境変数
LOG_LEVEL

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npm@iamyosuke/youtube-caption-mcp

ツール

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

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

詳細

これはバイブコーディングで作成されています。ご注意ください。

YouTube Caption MCP Server

Vive Cursor でYouTube動画の字幕を取得するためのMCPサーバーです。APIキー不要でYouTube動画の字幕情報にアクセスできます。

特徴

  • APIキー不要: youtube-jsライブラリを使用してYouTubeの内部APIにアクセスします
  • 多言語対応: 利用可能な字幕言語を自動検出して取得します
  • フォーマット変換: Raw、SRT、VTT形式で字幕を出力します
  • キャッシュ: パフォーマンス向上のため、インメモリキャッシュを使用します
  • Claude連携: MCPプロトコルを介してシームレスに連携します

インストール

NPMからインストール
npm install -g @iamyosuke/youtube-caption-mcp
ソースからビルド
git clone https://github.com/iamyosuke/youtube-caption-mcp.git
cd youtube-caption-mcp
npm install
npm run build
Cursorの設定

Cursorの設定ファイル(.cursor/mcp.json)に以下を追加してください:

{
  "mcpServers": {
    "youtube-caption-mcp": {
      "command": "npx",
      "args": ["-y", "youtube-caption-mcp", "--stdio"],
      "env": {
        "CACHE_ENABLED": "true",
        "LOG_LEVEL": "debug"
      }
    }
  }
}

利用可能なツール

1. get_video_info

YouTube動画の基本情報を取得します。

パラメーター:

  • video_id(必須):YouTube動画IDまたはURL

例:

{
  "video_id": "dQw4w9WgXcQ"
}
2. get_captions_list

動画で利用可能な字幕の一覧を取得します。

パラメーター:

  • video_id(必須):YouTube動画IDまたはURL

例:

{
  "video_id": "dQw4w9WgXcQ"
}
3. download_captions

指定した動画の字幕をダウンロードします。

パラメーター:

  • video_id(必須):YouTube動画IDまたはURL
  • lang(省略可):字幕の言語コード(デフォルト:"ja")
  • format(省略可):出力形式:"raw"、"srt"、"vtt"(デフォルト:"raw")

例:

{
  "video_id": "dQw4w9WgXcQ",
  "lang": "ja",
  "format": "srt"
}
4. search_videos_with_captions

字幕付き動画を検索します。

パラメーター:

  • query(必須):検索クエリ
  • lang(省略可):字幕の言語フィルター
  • limit(省略可):検索結果の最大数(1~50、デフォルト:10)

例:

{
  "query": "programming tutorial",
  "lang": "en",
  "limit": 5
}

対応URL形式

以下のYouTube URL形式に対応しています:

  • https://www.youtube.com/watch?v=VIDEO_ID
  • https://youtu.be/VIDEO_ID
  • https://www.youtube.com/embed/VIDEO_ID
  • VIDEO_ID(11文字の動画ID)

環境変数

変数名デフォルト値説明
CACHE_ENABLEDtrueキャッシュの有効/無効を切り替えます
CACHE_DEFAULT_TTL3600デフォルトのキャッシュ保持時間(秒)
CACHE_MAX_KEYS1000キャッシュキーの最大数
LOG_LEVELinfoログレベル(debug、info、warn、error)

開発

開発環境のセットアップ
npm install
開発サーバーの起動
npm run dev
テストの実行
npm test
ビルド
npm run build
リントとフォーマット
npm run lint
npm run format

ライセンス

MITライセンス

コントリビューション

プルリクエストや問題の報告を歓迎します。

免責事項

注記:このプロジェクトは週末に3時間でバイブコーディングされ、十分なテストは行われていません。本番環境での使用は自己責任でお願いします。

注意事項

  • YouTubeの利用規約に従ってこのツールを使用してください
  • 著作権のあるコンテンツは適切に取り扱ってください
  • 多数のリクエストを送信する際は、レート制限に注意してください

トラブルシューティング

よくある問題
  1. 動画が見つからない

    • 動画IDまたはURLが正しいか確認してください
    • 動画が公開されているか確認してください
  2. 字幕を取得できない

    • 動画に字幕があるか確認してください
    • 指定した言語の字幕が利用可能か確認してください
  3. パフォーマンスが遅い

    • キャッシュが有効になっているか確認してください
    • ネットワーク接続を確認してください
ログの確認

詳細なログを表示するには、環境変数 LOG_LEVEL=debug を設定してください:

LOG_LEVEL=debug npx @iamyosuke/youtube-caption-mcp

YouTube字幕MCPサーバー

Cusor 向けのYouTube動画字幕取得MCPサーバーです。APIキー不要でYouTube動画の字幕情報を取得できます。

特徴

  • APIキー不要: youtube-jsライブラリを使用してYouTubeの内部APIにアクセス
  • 多言語対応: 利用可能な字幕言語の自動検出と取得
  • フォーマット変換: Raw、SRT、VTT形式での字幕出力
  • キャッシュ機能: パフォーマンス向上のためのインメモリキャッシュ
  • Claude統合: MCPプロトコルによるシームレスな連携

インストール

NPMからインストール
npm install -g @iamyosuke/youtube-caption-mcp
ソースからビルド
git clone https://github.com/iamyosuke/youtube-caption-mcp.git
cd youtube-caption-mcp
npm install
npm run build
Cursor設定

Cursorの設定ファイル(.cursor/mcp.json)に以下を追加してください:

{
  "mcpServers": {
    "youtube-caption-mcp": {
      "command": "npx",
      "args": ["-y", "youtube-caption-mcp", "--stdio"],
      "env": {
        "CACHE_ENABLED": "true",
        "LOG_LEVEL": "debug"
      }
    }
  }
}

利用可能なツール

1. get_video_info

YouTube動画の基本情報を取得します。

パラメータ:

  • video_id (必須): YouTube動画IDまたはURL

例:

{
  "video_id": "dQw4w9WgXcQ"
}
2. get_captions_list

動画で利用可能な字幕一覧を取得します。

パラメータ:

  • video_id (必須): YouTube動画IDまたはURL

例:

{
  "video_id": "dQw4w9WgXcQ"
}
3. download_captions

指定された動画の字幕をダウンロードします。

パラメータ:

  • video_id (必須): YouTube動画IDまたはURL
  • lang (オプション): 字幕の言語コード(デフォルト: "ja")
  • format (オプション): 出力形式 - "raw", "srt", "vtt"(デフォルト: "raw")

例:

{
  "video_id": "dQw4w9WgXcQ",
  "lang": "ja",
  "format": "srt"
}
4. search_videos_with_captions

字幕付きの動画を検索します。

パラメータ:

  • query (必須): 検索クエリ
  • lang (オプション): 字幕の言語フィルタ
  • limit (オプション): 検索結果の最大数(1-50、デフォルト: 10)

例:

{
  "query": "プログラミング チュートリアル",
  "lang": "ja",
  "limit": 5
}

対応URL形式

以下のYouTube URL形式に対応しています:

  • https://www.youtube.com/watch?v=VIDEO_ID
  • https://youtu.be/VIDEO_ID
  • https://www.youtube.com/embed/VIDEO_ID
  • VIDEO_ID (11文字の動画ID)

環境変数

変数名デフォルト値説明
CACHE_ENABLEDtrueキャッシュ機能の有効/無効
CACHE_DEFAULT_TTL3600デフォルトキャッシュ保持時間(秒)
CACHE_MAX_KEYS1000最大キャッシュキー数
LOG_LEVELinfoログレベル(debug, info, warn, error)

開発

開発環境のセットアップ
npm install
開発サーバーの起動
npm run dev
テストの実行
npm test
ビルド
npm run build
リント・フォーマット
npm run lint
npm run format

ライセンス

MIT License

貢献

プルリクエストやイシューの報告を歓迎します。

免責事項

注意: このプロジェクトは週末の3時間で作成されたものであり、十分なテストが行われていません。本番環境での使用は自己責任でお願いします。

注意事項

  • このツールはYouTubeの利用規約に従って使用してください
  • 著作権保護されたコンテンツの適切な取り扱いにご注意ください
  • 大量のリクエストを送信する際は、レート制限にご注意ください

トラブルシューティング

よくある問題
  1. 動画が見つからない

    • 動画IDまたはURLが正しいか確認してください
    • 動画が公開されているか確認してください
  2. 字幕が取得できない

    • 動画に字幕が存在するか確認してください
    • 指定した言語の字幕が利用可能か確認してください
  3. パフォーマンスが遅い

    • キャッシュが有効になっているか確認してください
    • ネットワーク接続を確認してください
ログの確認

詳細なログを確認するには、環境変数 LOG_LEVEL=debug を設定してください。

LOG_LEVEL=debug npx @iamyosuke/youtube-caption-mcp

コメント

MCP は初めてですか?

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

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