YouTube MCP サーバー
YouTube 用のモデル コンテキスト プロトコル (MCP) サーバー実装。これにより、AI 言語モデルが標準化されたインターフェースを通じて YouTube コンテンツと対話できるようになります。
特徴
ビデオ情報
ビデオの詳細(タイトル、説明、再生時間など)を取得します
チャンネル動画の一覧
動画の統計情報(視聴回数、いいね数、コメント数)を取得する
YouTube の動画を検索
トランスクリプト管理
ビデオのトランスクリプトを取得する
複数の言語をサポート
タイムスタンプ付きキャプションを取得する
トランスクリプト内を検索
チャンネル管理
チャンネルの詳細を取得する
チャンネルのプレイリストを一覧表示する
チャンネル統計を取得する
チャンネルコンテンツ内を検索
プレイリスト管理
プレイリスト項目を一覧表示する
プレイリストの詳細を取得する
プレイリスト内を検索
プレイリストの動画のトランスクリプトを取得する
Related MCP server: YouTube Translate MCP
インストール
Smithery経由でインストール
Smithery経由で Claude Desktop 用の YouTube MCP サーバーを自動的にインストールするには:
npx -y @smithery/cli install @ZubeidHendricks/youtube --client claude手動インストール
npm install zubeid-youtube-mcp-server構成
次の環境変数を設定します。
YOUTUBE_API_KEY: YouTubeデータAPIキーYOUTUBE_TRANSCRIPT_LANG: トランスクリプトのデフォルト言語(オプション、デフォルトは「en」)
MCPクライアントでの使用
これを MCP クライアント構成 (例: Claude Desktop) に追加します。
{
"mcpServers": {
"youtube": {
"command": "npx",
"args": ["-y", "zubeid-youtube-mcp-server"],
"env": {
"YOUTUBE_API_KEY": "<YOUR_API_KEY>"
}
}
}
}VS Codeでの使用
ワンクリックでインストールするには、以下のいずれかのインストールボタンをクリックします。
手動インストール
手動でインストールする場合は、まずこのセクションの上部にあるインストールボタンをチェックしてください。それ以外の場合は、以下の手順に従ってください。
VS Codeのユーザー設定(JSON)ファイルに、以下のJSONブロックを追加します。Ctrl 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}"
}
}
}
}YouTube API のセットアップ
Google Cloud Console に移動
新しいプロジェクトを作成するか、既存のプロジェクトを選択してください
YouTube Data API v3 を有効にする
API認証情報(APIキー)を作成する
設定用のAPIキーをコピーします
例
ビデオの管理
// Get video details
const video = await youtube.videos.getVideo({
videoId: "video-id"
});
// Get video transcript
const transcript = await youtube.transcripts.getTranscript({
videoId: "video-id",
language: "en"
});
// Search videos
const searchResults = await youtube.videos.searchVideos({
query: "search term",
maxResults: 10
});チャンネルの管理
// Get channel details
const channel = await youtube.channels.getChannel({
channelId: "channel-id"
});
// List channel videos
const videos = await youtube.channels.listVideos({
channelId: "channel-id",
maxResults: 50
});プレイリストの管理
// Get playlist items
const playlistItems = await youtube.playlists.getPlaylistItems({
playlistId: "playlist-id",
maxResults: 50
});
// Get playlist details
const playlist = await youtube.playlists.getPlaylist({
playlistId: "playlist-id"
});発達
# Install dependencies
npm install
# Run tests
npm test
# Build
npm run build
# Lint
npm run lint貢献
このリポジトリへの貢献については、CONTRIBUTING.md を参照してください。
ライセンス
このプロジェクトは MIT ライセンスに基づいてライセンスされています - 詳細については LICENSE ファイルを参照してください。