Skip to main content
Glama
MudasirAli01

YouTube MCP Server

by MudasirAli01

YouTube MCP Server

Claude Code に YouTube をもたらす MCP サーバー — 動画の文字起こし、検索、メタデータ、チャンネル情報、プレイリスト、コメント、急上昇動画、エンゲージメント分析、チャプター抽出、SponsorBlock 統合、そして最も再生されたヒートマップ。YouTube Data API v3、youtube-transcript、SponsorBlock を使用しています。

クイックスタート

ステップ 1: API キーを取得

  1. Google Cloud Console にアクセス

  2. プロジェクトを作成(または既存のプロジェクトを選択)

  3. YouTube Data API v3 を有効化:

  4. API キーを作成:

    • 認証情報 に移動

    • 認証情報を作成 > API キー をクリック

  5. キーをコピー(ステップ 3 で必要になります)

ステップ 2: 前提条件をインストール

ステップ 3: MCP サーバーをインストール

3.1 リポジトリをクローン

git clone https://github.com/wynandw87/claude-code-youtube-mcp.git
cd claude-code-youtube-mcp

3.2 依存関係をインストール

macOS / Linux / Windows:

npm install

注: 依存関係のインストールとサーバーのビルドが 1 つのステップで自動的に実行されます。

3.3 Claude Code に登録

インストール範囲を選択:

範囲

フラグ

使用できるユーザー

User(推奨)

-s user

あなた(任意のプロジェクトで)

Project

-s project

このリポジトリをクローンした人

Local

-s local

現在のディレクトリのみ

YOUR_API_KEY を実際の YouTube Data API キーに置き換え、dist/index.js へのフルパスを使用してください。

ヒント: フルパスを取得するには、クローンしたディレクトリから次を実行します:

  • macOS/Linux: echo "$(ppwd)/dist/index.js"

  • Windows: echo %cd%\dist\index.js

macOS / Linux:

claude mcp add -s user youtube -e YOUTUBE_API_KEY=YOUR_API_KEY -- node /full/path/to/dist/index.js

Windows (CMD):

claude mcp add -s user youtube -e "YOUTUBE_API_KEY=YOUR_API_KEY" -- node "C:\full\path\to\dist\index.js"

Windows (PowerShell):

claude mcp add -s user youtube -e "YOUTUBE_API_KEY=YOUR_API_KEY" '--' node "C:\full\path\to\dist\index.js"

代替方法: npm ヘルパーを使用する(環境に API キーが設定されている場合)

export YOUTUBE_API_KEY=YOUR_API_KEY
npm run install:claude

ステップ 4: Claude Code を再起動

変更を反映するには、Claude Code を閉じて開き直してください。

ステップ 5: インストールの確認

claude mcp list

youtube が接続済みステータスで表示されるはずです。


Related MCP server: youtube-research

機能

文字起こしとキャプション

  • Get Transcript (get_transcript) - タイムスタンプ付きの完全な動画の文字起こしを取得。複数の言語に対応

  • Search Transcript (search_transcript) - 動画内でキーワードやフレーズが登場する位置をタイムスタンプ付きで検索

  • Clean Transcript (get_clean_transcript) - SponsorBlock によりスポンサー、イントロ、アウトロ、不要な語句を除去した文字起こし

  • Extract Chapters (extract_chapters) - 動画の説明からチャプターのタイムスタンプを解析

検索と発見

  • Search Videos (search_videos) - 日付、長さ、タイプ、並び順のフィルターに対応した完全な YouTube 検索

  • Search Within Channel (search_within_channel) - 特定のクリエーターの動画を検索

  • Get Trending Videos (get_trending_videos) - 地域とカテゴリ別の現時点の急上昇動画

  • Get Channel Videos (get_channel_videos) - チャンネルの最近のアップロードを日付まては再生回数順に取得

動画とチャンネル情報

  • Video Metadata (get_video_metadata) - タイトル、説明、長さ、再生回数、いーね数、タグなど

  • Channel Info (get_channel_info) - 登録者数、動画数、説明、国

  • Playlist Items (get_playlist_items) - プレイリスト内のすべての動画を位置とメタデータ付きで取得

分析とエンゲージメント

  • Calculate Engagement (calcculate_engagement) - 公開統計からのいーね率、コメント率、エンゲージメント率を計算

  • Most Replayed (get_most_replayed) - 視聴者が最も見返す部を示すヒートマップデータ

  • Video Comments (get_video_comments) - いーね数と返信数付きの上位コメント

ユーティリティ

  • Parse YouTube URL (parse_youtube_url) - あらゆる YouTube URL 形式から動画/チャンネル/プレイリスト ID を抽出


使用方法

インストール後、トリガーフレーズを使用して YouTube ツールを呼び出せます:

トリガー

ツール

youtube transcript

Get Transcript

この動画の youtube 文字起こしを取得して

youtube search

Search Videos

youtube で React のチューートリアルを検索して

youtube metadata

Video Metadata

この動画の youtube メタデータを取得して

youtube channel

Channel Info

@ThePrimeagen の youtube チャンネル情報を取得して

youtube playlist

Playlist Items

この youtube プレイリストの動画をリスと

youtube comments

Video Comments

この動画の youtube コメントを取得して

youtube trending

Trending Videos

米国で youtube の急上昇は何?

youtube chapters

Extract Chapters

この youtube 動画からチャプターを抽出して

youtube engagement

Calculate Engagement

この動画の youtube エンゲージメントを計算して

youtube most replayed

Most Replayed

この youtube 動画の最も再生された部分を表示して

youtube clean transcript

Clean Transcript

スポンサーなしのクリーンな youtube 文字起こしを取得して

youtube search transcript

Search Transcript

youtube 文字起こしで「authentication」を検索して

または自然に質問:

  • 「この YouTube 動画の文字起こしを取得して要約して」

  • 「この動画の最も再生された部分はどこ?」

  • 「このチャンネルの TypeScript に関する最近の動画を見つけて」

  • 「この動画の再生回数といいね数は?」

  • 「この動画のコメントを取得して感情を要約して」

  • 「このチュートリアルのチャプターを見せて」

  • 「スポンサー読み上げなしのクリーンな文字起こしを取得して」

  • 「今 YouTube のゲームで急上昇しているのは何?」


ツールリファレンス

parse_youtube_url

あらゆる YouTube URL 形式を解析し、識別子を抽出します。API キーは不要です。

パラメータ:

  • url (string, required) - 任意の YouTube URL または動画 ID

対応形式: youtube.com/watch?v=, youtu.be/, /shorts/, /embed/, /playlist?list=, /channel/, /@handle, /c/, /user/、ベアの動画 ID

get_transcript

YouTube 動画の完全な文字起こし/キャプションを取得します。API キーは不要です。

パラメータ:

  • url (string, required) - YouTube 動画 URL または動画 ID

  • lang (string, optional) - キャプションの言語コード(デフォルト: "en"

動画の文字起こし内でキーワードまたはフレーズを検索します。

パラメータ:

  • url (string, required) - YouTube 動画 URL または動画 ID

  • query (string, required) - 検索するキーワードまたはフレーズ

  • lang (string, optional) - キャプションの言語コード(デフォルト: "en"

extract_chapters

動画の説明からチャプターのタイムスタンプを抽出します。

パラメータ:

  • url (string, required) - YouTube 動画 URL または動画 ID

get_clean_transcript

SponsorBlock を使用してスポンサー読み上げ、イントロ、アウトロ、不要な語句を除去した文字起こしを取得します。

パラメータ:

  • url (string, required) - YouTube 動画 URL または動画 ID

  • lang (string, optional) - キャプションの言語コード(デフォルト: "en"

get_most_replayed

視聴者が最も見返す部分を示す「最も再生された」ヒートマップデータを取得します。

パラメータ:

  • url (string, required) - YouTube 動画 URL または動画 ID

注: ヒートマップデータを利用するには、約 50K+ 回の再生回数が必要です。

完全なフィルター対応で YouTube を検索します。

パラメータ:

  • query (string, required) - 検索クエリ

  • max_results (number, optional) - 結果の数、1〜50(デフォルト: 10

  • order (string, optional) - "relevance", "date", "viewCount", "rating"(デフォルト: "relevance"

  • duration (string, optional) - "short"(4 分未満), "medium"(4〜20 分), "long"(20 分超)

  • upload_date (string, optional) - "hour", "day", "week", "month", "year"

  • type (string, optional) - "video", "channel", "playlist"(デフォルト: "video"

get_video_metadata

YouTube 動画の詳細なメタデータを取得します。

パラメータ:

  • url (string, required) - YouTube 動画 URL または動画 ID

戻り値: タイトル、説明、チャンネル、長さ、再生回数/いいね数/コメント数、タグ、カテゴリ、サムネイル、ライブステータスなど。

get_channel_info

YouTube チャンネルの情報を取得します。

パラメータ:

  • url (string, required) - YouTube チャンネル URL、@handle、またはチャンネル ID

戻り値: タイトル、説明、登録者数/動画数/再生回数、国、カスタム URL、サムネイル。

get_playlist_items

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

パラメータ:

  • url (string, required) - YouTube プレイリスト URL またはプレイリスト ID

  • max_results (number, optional) - アイテム数、1〜50(デフォルト: 25

get_channel_videos

YouTube チャンネルの最近の動画を取得します。

パラメータ:

  • url (string, required) - YouTube チャンネル URL、@handle、またはチャンネル ID

  • max_results (number, optional) - 動画の数、1〜50(デフォルト: 25

  • order (string, optional) - "date", "viewCount"(デフォルト: "date"

get_trending_videos

現在の急上昇/人気の YouTube 動画を取得します。

パラメータ:

  • region_code (string, optional) - ISO 3166-1 alpha-2 の国コード(デフォルト: "US"

  • category_id (string, optional) - YouTube カテゴリ ID(例: 音楽は "10"、ゲームは "20"、科学とテクノロジーは "28"

  • max_results (number, optional) - 結果の数、1〜50(デフォルト: 10

特定の YouTube チャンネル内で動画を検索します。

パラメータ:

  • url (string, required) - YouTube チャンネル URL、@handle、またはチャンネル ID

  • query (string, required) - 検索クエリ

  • max_results (number, optional) - 結果の数、1〜50(デフォルト: 10

get_video_comments

YouTube 動画からトップレベルのコメントを取得します。

パラメータ:

  • url (string, required) - YouTube 動画 URL または動画 ID

  • max_results (number, optional) - コメントの数、1〜100(デフォルト: 20

  • order (string, optional) - "relevance", "time"(デフォルト: "relevance"

calculate_engagement

YouTube 動画のエンゲージメント指標を計算します。

パラメータ:

  • url (string, required) - YouTube 動画 URL または動画 ID

戻り値: 再生回数、いいね数、コメント数、いいね率、コメント率、総合エンゲージメント率。


仕組み

この MCP サーバーは stdio トランスポートを介して Claude Code に接続し、15 のツールを提供します:

Tool

Data Source

APIキーが必要か?

parse_youtube_url

ローカル解析

いいえ

get_transcript

youtube-transcript ライブラリ

いいえ

search_transcript

youtube-transcript ライブラリ

いいえ

get_clean_transcript

youtube-transcript + SponsorBlock API

いいえ

get_most_replayed

YouTubeページ (Innertube)

いいえ

extract_chapters

YouTube Data API v3

はい

search_videos

YouTube Data API v3

はい

get_video_metadata

YouTube Data API v3

はい

get_channel_info

YouTube Data API v3

はい

get_playlist_items

YouTube Data API v3

はい

get_channel_videos

YouTube Data API v3

はい

get_trending_videos

YouTube Data API v3

はい

search_within_channel

YouTube Data API v3

はい

get_video_comments

YouTube Data API v3

はい

calculate_engagement

YouTube Data API v3

はい

注記: 5つのツールはAPIキーなしで動作します(トランスクリプト、SponsorBlock、ヒートマップ、URL解析)。残りの10はYouTube Data API v3キーが必要です。


設定

環境変数

変数

必須

デフォルト

説明

YOUTUBE_API_KEY

はい

YouTube Data API v3キー

YOUTUBE_TIMEOUT

いいえ

30000

APIタイムアウト(ms)

YouTube APIクオータ

YouTube Data API v3には、1日あたり10,000ユニットのクオータがあります。各ツールの使用量は異なります:

操作

1回あたりのコスト

search (search_videos, search_within_channel)

100ユニット

videos.list (get_video_metadata, get_trending, calculate_engagement)

1ユニット

channeles.list (get_channel_info, get_channel_videos)

1ユニット

playlists.list (get_playlist_items)

1ユニット

playlistItems.list (get_playlist_items, get_channel_videos)

1ユニット

commentThreads.list (get_video_comments)

1ユニット

ヒント: 検索操作が最もコストがかかります。最近のアップロードだけが必要な場合は、search_within_channel(100ユニット)ではなくget_channel_videos(1ユニット)を使用してください。


トラブルシューティング

APIキーを修正する

間違ったAPIキーを入力した場合は、削除して再インストールしてください:

claude mcp remove youtube

次に、上記のステップ3.3のコマンドを使用して再インストールします(元のインストールと同じスコープを使用してください)。

MCPサーバーが表示されない

サーバーがインストールされているか確認してください:

claude mcp list

リストにない場合は、ステップ3に従ってインストールしてください。

サーバーが起動しない

  1. APIキーを確認し、Google Cloud Console で有効であることを確認してください。

  2. YouTube Data APIが有効になっていることを確認してください:

    • API Library に移動します

    • "有効" と表示されるはずです

  3. Node.jsのバージョンを確認してください(18以上が必要):

node --version
  1. サーバーがビルドされていることを確認してください — dist/index.js がない場合は、npm install を再度実行します

接続エラー

  1. dist/index.js が存在することを確認してください — ない場合は npm install を実行します

  2. claude mcp add コマンド内のパスが絶対パスであることを確認してください

  3. 設定を変更した後はClaude Codeを再起動してください

クオータ超過

"quotaExceeded" エラーが表示される場合:

  • 太平洋時間の午前0時まで待つ(クオータは毎日リセットされます)

  • 別のAPIキーを使用する

  • 検索ツール(100ユニット)よりも低コストのツール(get_video_metadata は1ユニット)を優先する

トランスクリプトが利用できない

一部の動画ではトランスクリプトが無効になっています。get_transcript ツールは明確なエラーメッセージを返します。次をお試しください:

  • 別の言語コード(例: lang: "es"

  • 手動のキャプションがなくても、自動生成されたキャプションが利用できる場合があります

タイムアウトエラー

接続が遅い場合は、YOUTUBE_TIMEOUT 環境変数を増やしてください:

claude mcp add -s user youtube -e YOUTUBE_API_KEY=YOUR_KEY -e YOUTUBE_TIMEOUT=60000 -- node /path/to/dist/index.js

現在の設定を表示

claude mcp list

貢献

プルリクエスト歓迎です!シンプルで初心者に優しい内容にしてください。

ライセンス

MIT


Claude Codeコミュニティのために作られました

F
license - not found
Not graded
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

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

Related MCP Servers

  • F
    license
    A
    quality
    D
    maintenance
    Integrates YouTube with Claude Code, enabling video transcript retrieval, search, metadata extraction, channel info, playlists, comments, trending videos, engagement analytics, chapter extraction, SponsorBlock integration, and most-replayed heatmaps.
    15
    38
    6
  • A
    license
    A
    quality
    D
    maintenance
    Enables YouTube integration with Claude Code, including video search, metadata retrieval, transcript fetching, channel exploration, and trending videos.
    8
    1
    MIT
  • F
    license
    Not graded
    quality
    C
    maintenance
    Enables natural-language access to YouTube features such as transcripts, search, metadata, channels, playlists, comments, trending videos, engagement analytics, chapters, SponsorBlock filtering, and heatmaps.
    38
  • F
    license
    Not graded
    quality
    C
    maintenance
    Enables Claude.ai to search videos, get trending and channel feeds, retrieve video metadata and engagement stats, and fetch or search transcripts over HTTPS.

View all related MCP servers

Related MCP Connectors

View all MCP Connectors

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/MudasirAli01/youtube-mcp-connector'

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