Skip to main content
Glama

YouTube MCP Server

npm version npm downloads npm total downloads

YouTube向けのModel Context Protocol(MCP)サーバー実装です。標準化されたインターフェースを通じて、AI言語モデルがYouTubeのコンテンツと対話できるようにします。

Webサイト: zubeidhendricks.github.io/youtube-mcp-server

利用可能なツール

このサーバーは現在、10個のMCPツールを公開しています。

ツール

説明

必須パラメータ

オプションパラメータ

videos_getVideo

YouTube動画に関する詳細情報を取得します

videoId

parts

videos_searchVideos

YouTubeで動画を検索します

query

maxResults, order, publishedAfter, publishedBefore, channelId, uniqueChannels, channelMinSubscribers, channelMaxSubscribers, channelLastUploadAfter, channelLastUploadBefore, creatorOnly, sortBy

transcripts_getTranscript

YouTube動画のトランスクリプトを取得します

videoId

language

channels_getChannel

YouTubeチャンネルに関する情報を取得します

channelId

なし

channels_getChannels

複数のYouTubeチャンネルに関する情報を取得します

channelIds

parts, includeLatestUpload

channels_searchChannels

ハンドル、名前、またはクエリでYouTubeチャンネルを検索します

query

maxResults, order, channelType, minSubscribers, maxSubscribers, lastUploadAfter, lastUploadBefore, creatorOnly, sortBy

channels_findCreators

動画での言及から、チャンネル規模とアクティビティのフィルタ付きでクリエイターチャンネルを検索します

query

maxResults, order, videoPublishedAfter, videoPublishedBefore, channelMinSubscribers, channelMaxSubscribers, channelLastUploadAfter, channelLastUploadBefore, creatorOnly, sortBy, sampleVideosPerChannel

channels_listVideos

特定のチャンネルから動画を取得します

channelId

maxResults

playlists_getPlaylist

YouTubeプレイリストに関する情報を取得します

playlistId

なし

playlists_getPlaylistItems

YouTubeプレイリスト内の動画を取得します

playlistId

maxResults

ツールパラメータ

videos_getVideo

  • videoId (string): YouTube動画ID。

  • parts (string[], オプション): 取得する動画リソースの特定のパーツ。

videos_searchVideos

  • query (string): 検索クエリ。

  • maxResults (number, オプション): 返す結果の最大数。

  • order (string, オプション): relevancedate などの結果の並び順。

  • publishedAfter (string, オプション): このISO 8601日付以降に公開された動画のみを含めます。

  • publishedBefore (string, オプション): このISO 8601日付より前に公開された動画のみを含めます。

  • channelId (string, オプション): 結果を特定のチャンネルに制限します。

  • uniqueChannels (boolean, オプション): 一意のチャンネルごとに1本の動画のみを返します。

  • channelMinSubscribers / channelMaxSubscribers (number, オプション): 一致した動画を、そのチャンネルの登録者数帯でフィルタリングします。

  • channelLastUploadAfter / channelLastUploadBefore (string, オプション): 一致した動画を、そのチャンネルの最新アップロードアクティビティでフィルタリングします。

  • creatorOnly (boolean, オプション): 結果を、ヒューリスティックにクリエイターとして分類されたチャンネルに制限します。

  • sortBy (string, オプション): relevancesubscribers_ascsubscribers_descindie_priorityrecent_activity に対応しています。

transcripts_getTranscript

  • videoId (string): YouTube動画ID。

  • language (string, オプション): トランスクリプトの言語コード。YOUTUBE_TRANSCRIPT_LANG または en にフォールバックします。

channels_getChannel

  • channelId (string): YouTubeチャンネルID。

レスポンスには以下のものが含まれます:

  • latestVideoPublishedAt

  • normalizedMetadata

    • には countrydefaultLanguagejoinedAtcustomUrlemailsFoundcontactLinks、およびクリエイター対ブランドのヒューリスティックフィールドが含まれます

channels_getChannels

  • channelIds (string[]): YouTubeチャンネルIDのリスト。

  • includeLatestUpload (boolean, オプション): latestVideoPublishedAt を含めるかどうか。デフォルトは true

channels_searchChannels

  • query (string): チャンネル検索クエリまたはハンドル。

  • maxResults (number, オプション): 返すチャンネルの最大数。

  • order (string, オプション): relevance などの結果の並び順。

  • channelType (string, オプション): 検索を特定のチャンネルタイプに制限します。

  • minSubscribers / maxSubscribers (number, オプション): 登録者数帯でチャンネルをフィルタリングします。

  • lastUploadAfter / lastUploadBefore (string, オプション): 最新のアップロードアクティビティでチャンネルをフィルタリングします。

  • creatorOnly (boolean, オプション): 結果を、ヒューリスティックにクリエイターとして分類されたチャンネルに制限します。

  • sortBy (string, オプション): relevancesubscribers_ascsubscribers_descindie_priorityrecent_activity に対応しています。

channels_findCreators

  • query (string): 一致した動画からチャンネルを発見するための、トピック、ゲーム、または言及クエリ。

  • videoPublishedAfter / videoPublishedBefore (string, オプション): 一致した動画の新しさに関するフィルタ。

  • channelMinSubscribers / channelMaxSubscribers (number, オプション): 返されるチャンネルの登録者数帯フィルタ。

  • channelLastUploadAfter / channelLastUploadBefore (string, オプション): 返されるチャンネルの最新アップロードアクティビティフィルタ。

  • creatorOnly (boolean, オプション): 結果を、ヒューリスティックにクリエイターとして分類されたチャンネルに制限します。

  • sortBy (string, オプション): relevancesubscribers_ascsubscribers_descindie_priorityrecent_activity に対応しています。

  • sampleVideosPerChannel (number, オプション): 返されるチャンネルごとに含める一致した動画の数。

channels_listVideos

  • channelId (string): YouTubeチャンネルID。

  • maxResults (number, オプション): 返す動画の最大数。

playlists_getPlaylist

  • playlistId (string): YouTubeプレイリストID。

playlists_getPlaylistItems

  • playlistId (string): YouTubeプレイリストID。

  • maxResults (number, オプション): 返すプレイリスト項目の最大数。

Related MCP server: mcp-server-youtube

インストール

Claude Desktopのクイックセットアップ

  1. パッケージをインストールします:

npm install -g zubeid-youtube-mcp-server
  1. Claude Desktopの設定に追加します(macOSでは ~/Library/Application Support/Claude/claude_desktop_config.json、Windowsでは %APPDATA%\Claude\claude_desktop_config.json):

{
  "mcpServers": {
    "zubeid-youtube-mcp-server": {
      "command": "zubeid-youtube-mcp-server",
      "env": {
        "YOUTUBE_API_KEY": "your_primary_youtube_api_key",
        "YOUTUBE_API_KEY2": "your_secondary_youtube_api_key",
        "YOUTUBE_API_KEY3": "your_tertiary_youtube_api_key"
      }
    }
  }
}

代替方法: NPXを使用する(インストール不要)

これをClaude Desktopの設定に追加します:

{
  "mcpServers": {
    "youtube": {
      "command": "npx",
      "args": ["-y", "zubeid-youtube-mcp-server"],
      "env": {
        "YOUTUBE_API_KEY": "your_primary_youtube_api_key",
        "YOUTUBE_API_KEY2": "your_secondary_youtube_api_key",
        "YOUTUBE_API_KEY3": "your_tertiary_youtube_api_key"
      }
    }
  }
}

Smitheryでのインストール

Claude Desktop用のYouTube MCP ServerをSmithery経由で自動的にインストールするには:

npx -y @smithery/cli install @ZubeidHendricks/youtube --client claude

設定

次の環境変数を設定します:

  • YOUTUBE_API_KEY: プライマリYouTube Data APIキー

  • YOUTUBE_API_KEY2: セカンダリのフォールバックAPIキー

  • YOUTUBE_API_KEY3: 3番目のフォールバックAPIキー

  • YOUTUBE_TRANSCRIPT_LANG: トランスクリプトのデフォルト言語(オプション、デフォルトは 'en')

YOUTUBE_API_KEYYOUTUBE_API_KEY2YOUTUBE_API_KEY3 のうち少なくとも1つを設定する必要があります。キーが割り当て枠(クォータ)を使い果たしたためにリクエストが失敗した場合、サーバーは設定された次のキーで同じリクエストを再試行します。

VS Codeでの使用

ワンクリックインストールを行うには、以下のインストールボタンのいずれかをクリックします:

Install with NPX in VS Code Install with NPX in VS Code Insiders

手動インストール

手動インストールをご希望の場合は、まずこのセクションの上部にあるインストールボタンを確認してください。それ以外の場合は、次の手順に従ってください:

次のJSONブロックをVS Codeのユーザー設定(JSON)ファイルに追加します。これを行うには、Ctrl + Shift + P を押して Preferences: Open User Settings (JSON) と入力します。

{
  "mcp": {
    "inputs": [
      {
        "type": "promptString",
        "id": "apiKey",
        "description": "YouTube API Key",
        "password": true
      }
    ],
    "servers": {
      "youtube": {
        "command": "npx",
        "args": ["-y", "zubeid-youtube-mcp-server"],
        "env": {
          "YOUTUBE_API_KEY": "${input:apiKey}"
        }
      }
    }
  }
}

必要に応じて、ワークスペース内の .vscode/mcp.json というファイルに追加することもできます:

{
  "inputs": [
    {
      "type": "promptString",
      "id": "apiKey",
      "description": "YouTube API Key",
      "password": true
    }
  ],
  "servers": {
    "youtube": {
      "command": "npx",
      "args": ["-y", "zubeid-youtube-mcp-server"],
      "env": {
        "YOUTUBE_API_KEY": "${input:apiKey}"
      }
    }
  }
}

開発

# Install dependencies
npm install

# Build
npm run build

# Start the server (requires at least one configured YouTube API key)
npm start

# Development mode with auto-rebuild
npm run dev

Docker

同梱のDockerイメージは、デフォルトでHTTP経由でサーバーを起動します。

  • デフォルトのトランスポート:http

  • デフォルトのエンドポイント:http://localhost:8088/mcp

  • レディネスエンドポイント:http://localhost:8088/ready

  • デフォルトモード:ステートレス

Dockerビルドは .env をランタイムイメージにコピーし、サーバーは起動時に自動的にそれを読み込みます。つまり、docker build の時点で .env が存在していれば、docker run の時にAPI認証情報を渡さなくてもコンテナを実行できます。

docker build -t youtube-mcp-server .
docker run --rm -p 8088:8088 youtube-mcp-server

コンテナのデフォルトは次のとおりです:

MCP_TRANSPORT=http
MCP_HOST=0.0.0.0
MCP_PORT=8088
MCP_STATELESS=true

貢献

このリポジトリへの貢献については、CONTRIBUTING.md を参照してください。

ライセンス

このプロジェクトは MIT License の下でライセンスされています。詳細は LICENSE ファイルを参照してください。

Maintenance

ActivityMaintained
ResponsivenessSyncing

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/AfsheenMahmood/youtube-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server