Skip to main content
Glama
rai-wasif

YouTube MCP Server

by rai-wasif

YouTube MCP Server

Angepasster YouTube-MCP-Server basierend auf dem ursprünglichen Repository claude-code-youtube-mcp. Diese Version unterstützt sowohl STDIO- als auch Streamable-HTTP-Transports, sodass sie lokal für Claude Code ausgeführt oder remote als benutzerdefinierter Connector für Claude.ai bereitgestellt werden kann.

Der Server stellt Tools der YouTube Data API v3 bereit für Videosuche, Metadaten, Kanalinformationen, Playlists, Kommentare, Trendvideos, Engagement-Analysen, Transkripte, Kapitel, SponsorBlock-Bereinigung und Heatmaps der am häufigsten erneut angesehenen Stellen.

Angepasst von: https://github.com/wynandw87/claude-code-youtube-mcp

Lokal ausführen

npm install
npm run build
npm run start:http

Endpunkte:

GET  /health
POST /mcp

Related MCP server: YouTube MCP Server

Umgebungsvariable

YOUTUBE_API_KEY=your_key_here

Geben Sie Ihren API-Schlüssel nicht an GitHub weiter. Bewahren Sie ihn in Ihrer lokalen Umgebung, in .env oder in den Umgebungsvariablen Ihrer Bereitstellungsplattform auf.

Railway-Bereitstellung

  1. Stellen Sie dieses GitHub-Repository auf Railway bereit.

  2. Fügen Sie die Umgebungsvariable YOUTUBE_API_KEY in Railway hinzu.

  3. Legen Sie den Startbefehl wie folgt fest:

npm run start:http
  1. Verwenden Sie den öffentlichen MCP-Endpunkt:

https://your-domain/mcp

Schnellstart

Schritt 1: API-Schlüssel abrufen

  1. Gehen Sie zu Google Cloud Console

  2. Erstellen Sie ein Projekt (oder wählen Sie ein vorhandenes aus)

  3. Aktivieren Sie die YouTube Data API v3:

  4. Erstellen Sie einen API-Schlüssel:

    • Gehen Sie zu Anmeldedaten

    • Klicken Sie auf Anmeldedaten erstellen > API-Schlüssel

  5. Kopieren Sie den Schlüssel (Sie benötigen ihn in Schritt 3)

Schritt 2: Voraussetzungen installieren

Schritt 3: Den MCP-Server installieren

3.1 Repository klonen

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

3.2 Abhängigkeiten installieren

macOS / Linux / Windows:

npm install

Hinweis: Die Abhängigkeiten werden installiert und der Server wird in einem Schritt automatisch erstellt.

3.3 Bei Claude Code registrieren

Wählen Sie Ihren Installationsbereich:

Bereich

Flag

Wer ihn verwenden kann

Benutzer (empfohlen)

-s user

Sie, in jedem Projekt

Projekt

-s project

Jeder, der dieses Repo klont

Lokal

-s local

Nur im aktuellen Verzeichnis

Ersetzen Sie YOUR_API_KEY durch Ihren tatsächlichen YouTube-Data-API-Schlüssel und verwenden Sie den vollständigen Pfad zu dist/index.js.

Tipp: Um den vollständigen Pfad zu erhalten, führen Sie dies aus dem geklonten Verzeichnis aus:

  • macOS/Linux: echo "$(pwd)/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"

Alternative: Den npm-Helfer verwenden (wenn der API-Schlüssel in der Umgebung festgelegt ist)

export YOUTUBE_API_KEY=YOUR_API_KEY
npm run install:claude

Schritt 4: Claude Code neu starten

Schließen und öffnen Sie Claude Code erneut, damit die Änderungen wirksam werden.

Schritt 5: Installation überprüfen

claude mcp list

Sie sollten youtube mit dem Status „Connected" aufgelistet sehen.


Funktionen

Transkripte & Untertitel

  • Transkript abrufen (get_transcript) - Vollständige Video-Transkripte mit Zeitstempeln abrufen, unterstützt mehrere Sprachen

  • Transkript durchsuchen (search_transcript) - Finden, wo ein Schlüsselwort oder eine Phrase in einem Video mit Zeitstempeln vorkommt

  • Bereinigtes Transkript (get_clean_transcript) - Transkript ohne Sponsoren, Intros, Outros und Füllwörter, entfernt über SponsorBlock

  • Kapitel extrahieren (extract_chapters) - Kapitel-Zeitstempel aus Videobeschreibungen parsen

Suche & Entdeckung

  • Videos suchen (search_videos) - Vollständige YouTube-Suche mit Filtern für Datum, Dauer, Typ und Sortierreihenfolge

  • Innerhalb eines Kanals suchen (search_within_channel) - Nach Videos eines bestimmten Erstellers suchen

  • Trendvideos abrufen (get_trending_videos) - Aktuell trendende Videos nach Region und Kategorie

  • Kanalvideos abrufen (get_channel_videos) - Aktuelle Uploads eines Kanals, sortiert nach Datum oder Aufrufen

Video- & Kanalinformationen

  • Video-Metadaten (get_video_metadata) - Titel, Beschreibung, Dauer, Aufrufe, Likes, Tags und mehr

  • Kanalinformationen (get_channel_info) - Abonnentenanzahl, Videoanzahl, Beschreibung, Land

  • Playlist-Elemente (get_playlist_items) - Alle Videos in einer Playlist mit Positionen und Metadaten

Analysen & Engagement

  • Engagement berechnen (calculate_engagement) - Like-Rate, Kommentar-Rate und Engagement-Rate aus öffentlichen Statistiken

  • Am häufigsten erneut angesehen (get_most_replayed) - Heatmap-Daten, die zeigen, welche Teile Zuschauer am häufigsten erneut ansehen

  • Video-Kommentare (get_video_comments) - Top-Kommentare mit Like-Anzahl und Antwortanzahl

Hilfsprogramme

  • YouTube-URL parsen (parse_youtube_url) - Video-/Kanal-/Playlist-IDs aus jedem YouTube-URL-Format extrahieren


Verwendung

Nach der Installation können Sie Auslösephrasen verwenden, um YouTube-Tools aufzurufen:

Auslöser

Tool

Beispiel

youtube transcript

Transkript abrufen

„Hole das YouTube-Transkript für dieses Video"

youtube search

Videos suchen

„Suche auf YouTube nach React-Tutorials"

youtube metadata

Video-Metadaten

„Hole YouTube-Metadaten für dieses Video"

youtube channel

Kanalinformationen

„Hole YouTube-Kanalinformationen für @ThePrimeagen"

youtube playlist

Playlist-Elemente

„Liste die Videos in dieser YouTube-Playlist auf"

youtube comments

Video-Kommentare

„Hole YouTube-Kommentare für dieses Video"

youtube trending

Trendvideos

„Was ist gerade auf YouTube in den USA im Trend?"

youtube chapters

Kapitel extrahieren

„Extrahiere Kapitel aus diesem YouTube-Video"

youtube engagement

Engagement berechnen

„Berechne YouTube-Engagement für dieses Video"

youtube most replayed

Am häufigsten erneut angesehen

„Zeige die am häufigsten erneut angesehenen Teile dieses YouTube-Videos"

youtube clean transcript

Bereinigtes Transkript

„Hole ein bereinigtes YouTube-Transkript ohne Sponsoren"

youtube search transcript

Transkript durchsuchen

„Durchsuche das YouTube-Transkript nach 'Authentifizierung'"

Oder fragen Sie natürlich:

  • „Hole das Transkript dieses YouTube-Videos und fasse es zusammen"

  • „Was sind die am häufigsten erneut angesehenen Teile dieses Videos?"

  • „Finde aktuelle Videos über TypeScript auf diesem Kanal"

  • „Wie viele Aufrufe und Likes hat dieses Video?"

  • „Hole die Kommentare zu diesem Video und fasse die Stimmung zusammen"

  • „Zeige mir die Kapitel für dieses Tutorial"

  • „Hole ein bereinigtes Transkript ohne die Sponsor-Einblendungen"

  • „Was ist gerade auf YouTube im Gaming-Bereich im Trend?"


Tool-Referenz

parse_youtube_url

Parst jedes YouTube-URL-Format und extrahiert Kennungen. Kein API-Schlüssel erforderlich.

Parameter:

  • url (string, erforderlich) - Jede YouTube-URL oder Video-ID

Unterstützte Formate: youtube.com/watch?v=, youtu.be/, /shorts/, /embed/, /playlist?list=, /channel/, /@handle, /c/, /user/, reine Video-IDs

get_transcript

Ruft das vollständige Transkript/die Untertitel eines YouTube-Videos ab. Kein API-Schlüssel erforderlich.

Parameter:

  • url (string, erforderlich) - YouTube-Video-URL oder Video-ID

  • lang (string, optional) - Sprachcode für Untertitel (Standard: "en")

Durchsucht das Transkript eines Videos nach einem Schlüsselwort oder einer Phrase.

Parameter:

  • url (string, erforderlich) - YouTube-Video-URL oder Video-ID

  • query (string, erforderlich) - Schlüsselwort oder Phrase, nach der gesucht werden soll

  • lang (string, optional) - Sprachcode für Untertitel (Standard: "en")

extract_chapters

Extrahiert Kapitel-Zeitstempel aus der Beschreibung eines Videos.

Parameter:

  • url (string, erforderlich) - YouTube-Video-URL oder Video-ID

get_clean_transcript

Ruft ein Transkript ab, aus dem über SponsorBlock Sponsor-Einblendungen, Intros, Outros und Füllwörter entfernt wurden.

Parameter:

  • url (string, erforderlich) - YouTube-Video-URL oder Video-ID

  • lang (string, optional) - Sprachcode für Untertitel (Standard: "en")

get_most_replayed

Ruft die Heatmap-Daten für „Am häufigsten erneut angesehen" ab, die zeigen, welche Teile Zuschauer am häufigsten erneut ansehen.

Parameter:

  • url (string, erforderlich) - YouTube-Video-URL oder Video-ID

Hinweis: Für die Verfügbarkeit von Heatmap-Daten sind etwa 50.000+ Aufrufe erforderlich.

Durchsucht YouTube mit vollständiger Filterunterstützung.

Parameter:

  • query (string, erforderlich) - Suchanfrage

  • max_results (number, optional) - Anzahl der Ergebnisse, 1-50 (Standard: 10)

  • order (string, optional) - "relevance", "date", "viewCount", "rating" (Standard: "relevance")

  • duration (string, optional) - "short" (<4 Min.), "medium" (4-20 Min.), "long" (>20 Min.)

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

  • type (string, optional) - "video", "channel", "playlist" (Standard: "video")

get_video_metadata

Ruft detaillierte Metadaten für ein YouTube-Video ab.

Parameter:

  • url (string, erforderlich) - YouTube-Video-URL oder Video-ID

Rückgabe: Titel, Beschreibung, Kanal, Dauer, Aufruf-/Like-/Kommentaranzahl, Tags, Kategorie, Thumbnails, Live-Status und mehr.

get_channel_info

Ruft YouTube-Kanalinformationen ab.

Parameter:

  • url (string, erforderlich) - YouTube-Kanal-URL, @Handle oder Kanal-ID

Rückgabe: Titel, Beschreibung, Abonnenten-/Video-/Aufrufanzahl, Land, benutzerdefinierte URL und Thumbnail.

get_playlist_items

Ruft alle Videos in einer YouTube-Playlist ab.

Parameter:

  • url (string, erforderlich) - YouTube-Playlist-URL oder Playlist-ID

  • max_results (number, optional) - Anzahl der Elemente, 1-50 (Standard: 25)

get_channel_videos

Ruft aktuelle Videos von einem YouTube-Kanal ab.

Parameter:

  • url (string, erforderlich) - YouTube-Kanal-URL, @Handle oder Kanal-ID

  • max_results (number, optional) - Anzahl der Videos, 1-50 (Standard: 25)

  • order (string, optional) - "date", "viewCount" (Standard: "date")

get_trending_videos

Ruft aktuell trendende/populäre YouTube-Videos ab.

Parameter:

  • region_code (string, optional) - ISO-3166-1-Alpha-2-Ländercode (Standard: "US")

  • category_id (string, optional) - YouTube-Kategorie-ID (z. B. "10" für Musik, "20" für Gaming, "28" für Wissenschaft & Technik)

  • max_results (number, optional) - Anzahl der Ergebnisse, 1-50 (Standard: 10)

Sucht nach Videos innerhalb eines bestimmten YouTube-Kanals.

Parameter:

  • url (string, erforderlich) - YouTube-Kanal-URL, @Handle oder Kanal-ID

  • query (string, erforderlich) - Suchanfrage

  • max_results (number, optional) - Anzahl der Ergebnisse, 1-50 (Standard: 10)

get_video_comments

Ruft Top-Level-Kommentare von einem YouTube-Video ab.

Parameter:

  • url (string, erforderlich) - YouTube-Video-URL oder Video-ID

  • max_results (number, optional) - Anzahl der Kommentare, 1-100 (Standard: 20)

  • order (string, optional) - "relevance", "time" (Standard: "relevance")

calculate_engagement

Berechnet Engagement-Kennzahlen für ein YouTube-Video.

Parameter:

  • url (string, erforderlich) - YouTube-Video-URL oder Video-ID

Rückgabe: Aufrufanzahl, Like-Anzahl, Kommentar-Anzahl, Like-Rate, Kommentar-Rate und Gesamt-Engagement-Rate.


So funktioniert es

Dieser MCP-Server verbindet sich über den stdio-Transport mit Claude Code und stellt 15 Tools bereit:

Tool

Datenquelle

Benötigt API-Schlüssel?

parse_youtube_url

Lokales Parsing

Nein

get_transcript

youtube-transcript-Bibliothek

Nein

search_transcript

youtube-transcript-Bibliothek

Nein

get_clean_transcript

youtube-transcript + SponsorBlock API

Nein

get_most_replayed

YouTube-Seite (Innertube)

Nein

extract_chapters

YouTube Data API v3

Ja

search_videos

YouTube Data API v3

Ja

get_video_metadata

YouTube Data API v3

Ja

get_channel_info

YouTube Data API v3

Ja

get_playlist_items

YouTube Data API v3

Ja

get_channel_videos

YouTube Data API v3

Ja

get_trending_videos

YouTube Data API v3

Ja

search_within_channel

YouTube Data API v3

Ja

get_video_comments

YouTube Data API v3

Ja

calculate_engagement

YouTube Data API v3

Ja

Hinweis: 5 Tools funktionieren ohne API-Schlüssel (Transkripte, SponsorBlock, Heatmaps, URL-Parsing). Die restlichen 10 erfordern einen YouTube-Data-API-v3-Schlüssel.


Konfiguration

Umgebungsvariablen

Variable

Erforderlich

Standard

Beschreibung

YOUTUBE_API_KEY

Ja

YouTube-Data-API-v3-Schlüssel

YOUTUBE_TIMEOUT

Nein

30000

API-Timeout in ms

YouTube-API-Kontingent

Die YouTube Data API v3 hat ein tägliches Kontingent von 10.000 Einheiten. Jedes Tool verbraucht eine unterschiedliche Menge:

Operation

Kosten pro Aufruf

search (search_videos, search_within_channel)

100 Einheiten

videos.list (get_video_metadata, get_trending, calculate_engagement)

1 Einheit

channels.list (get_channel_info, get_channel_videos)

1 Einheit

playlists.list (get_playlist_items)

1 Einheit

playlistItems.list (get_playlist_items, get_channel_videos)

1 Einheit

commentThreads.list (get_video_comments)

1 Einheit

Tipp: Suchvorgänge sind am teuersten. Verwenden Sie get_channel_videos (1 Einheit) anstelle von search_within_channel (100 Einheiten), wenn Sie nur aktuelle Uploads benötigen.


Fehlerbehebung

API-Schlüssel korrigieren

Wenn Sie einen falschen API-Schlüssel eingegeben haben, entfernen und installieren Sie ihn neu:

claude mcp remove youtube

Installieren Sie dann mit dem Befehl aus Schritt 3.3 oben neu (verwenden Sie denselben Bereich, mit dem Sie ursprünglich installiert haben).

MCP-Server wird nicht angezeigt

Prüfen Sie, ob der Server installiert ist:

claude mcp list

Wenn er nicht aufgeführt ist, folgen Sie Schritt 3, um ihn zu installieren.

Server startet nicht

  1. Überprüfen Sie, ob Ihr API-Schlüssel gültig ist unter Google Cloud Console

  2. Stellen Sie sicher, dass die YouTube Data API aktiviert ist:

    • Gehen Sie zu API Library

    • Es sollte „Aktiviert" angezeigt werden

  3. Überprüfen Sie die Node.js-Version (erfordert 18+):

    node --version
  4. Stellen Sie sicher, dass der Server erstellt wurde – wenn dist/index.js fehlt, führen Sie npm install erneut aus

Verbindungsfehler

  1. Stellen Sie sicher, dass dist/index.js existiert – wenn nicht, führen Sie npm install aus

  2. Überprüfen Sie, ob der Pfad absolut ist in Ihrem claude mcp add-Befehl

  3. Starten Sie Claude Code neu nach allen Konfigurationsänderungen

Kontingent überschritten

Wenn Sie „quotaExceeded"-Fehler sehen:

  • Warten Sie bis Mitternacht Pacific Time (Kontingent wird täglich zurückgesetzt)

  • Verwenden Sie einen anderen API-Schlüssel

  • Bevorzugen Sie kostengünstige Tools (get_video_metadata mit 1 Einheit) gegenüber Suchtools (100 Einheiten)

Transkript nicht verfügbar

Einige Videos haben deaktivierte Transkripte. Das Tool get_transcript gibt eine klare Fehlermeldung zurück. Versuchen Sie:

  • Einen anderen Sprachcode (z. B. lang: "es")

  • Automatisch generierte Untertitel sind möglicherweise verfügbar, auch wenn manuelle nicht vorhanden sind

Timeout-Fehler

Erhöhen Sie die Umgebungsvariable YOUTUBE_TIMEOUT für langsame Verbindungen:

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

Aktuelle Konfiguration anzeigen

claude mcp list

Mitwirken

Pull-Requests sind willkommen! Bitte halten Sie es einfach und anfängerfreundlich.

Lizenz

MIT


Erstellt für die Claude Code Community

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

  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables AI assistants to search YouTube for videos, channels, and playlists while retrieving detailed analytics and metrics through the YouTube Data API v3. Supports advanced filtering options and provides comprehensive statistics for content discovery and analysis.
    1
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables AI assistants to search videos, read channels, browse playlists, fetch comments, and get transcripts from YouTube using the YouTube Data API v3 and InnerTube API for captions.
    2
    GPL 3.0

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/rai-wasif/growlyze-youtube-mcp'

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