Skip to main content
Glama
thesalautomation-lgtm

YouTube MCP Server

YouTube MCP Server

MCP-Server, der YouTube zu Claude Code bringt — Videotranskripte, Suche, Metadaten, Kanalinformationen, Playlists, Kommentare, Trendvideos, Engagement-Analysen, Kapitel-Extraktion, SponsorBlock-Integration und Heatmaps zu den am häufigsten wiederholten Stellen. Verwendet die YouTube Data API v3, youtube-transcript und SponsorBlock.

Schnellstart

Schritt 1: API-Schlüssel abrufen

  1. Gehen Sie zur 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 automatisch in einem Schritt erstellt.

3.3 Bei Claude Code registrieren

Wählen Sie Ihren Installationsbereich:

Installationsbereich

Flag

Wer ihn verwenden kann

Benutzer (empfohlen)

-s user

Sie, in jedem Projekt

Projekt

-s project

Alle, die dieses Repository klonen

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 Sie Claude Code und öffnen Sie es erneut, damit die Änderungen wirksam werden.

Schritt 5: Installation überprüfen

claude mcp list

Sie sollten youtube mit dem Status Connected aufgelistet sehen.


Related MCP server: YouTube Insights MCP Server

Funktionen

Transkripte & Untertitel

  • Transkript abrufen (get_transcript) - Ruft vollständige Videotranskripte mit Zeitstempeln ab; unterstützt mehrere Sprachen

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

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

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

Suche & Entdeckung

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

  • Im Kanal suchen (search_within_channel) - Sucht nach Videos eines bestimmten Erstellers

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

  • Kanalvideos abrufen (get_channel_videos) - Neueste 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) - Abonnentenzahl, Videoanzahl, Beschreibung, Land

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

Analysen & Engagement

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

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

  • Videokommentare (get_video_comments) - Top-Kommentare mit Like-Zahlen und Antwortanzahl

Dienstprogramme

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

Verwendung

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

Trigger

Tool

Beispiel

youtube transcript

Transkript abrufen

„Holen Sie das YouTube-Transkript für dieses Video“

youtube search

Videos suchen

„Suchen Sie auf YouTube nach React-Tutorials“

youtube metadata

Video-Metadaten

„Holen Sie die YouTube-Metadaten für dieses Video“

youtube channel

Kanalinformationen

„Holen Sie die YouTube-Kanalinformationen für @ThePrimeagen“

youtube playlist

Playlist-Elemente

„Listen Sie die Videos in dieser YouTube-Playlist auf“

youtube comments

Videokommentare

„Holen Sie die YouTube-Kommentare für dieses Video“

youtube trending

Trendvideos

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

youtube chapters

Kapitel extrahieren

„Extrahiere Kapitel aus diesem YouTube-Video“

youtube engagement

Engagement berechnen

„Berechne das YouTube-Engagement für dieses Video“

youtube most replayed

Am häufigsten wiederholt

„Zeige die am häufigsten wiederholten Stellen dieses YouTube-Videos“

youtube clean transcript

Bereinigtes Transkript

„Holen Sie ein bereinigtes YouTube-Transkript ohne Sponsoren“

youtube search transcript

Transkript durchsuchen

„Durchsuchen Sie das YouTube-Transkript nach ‚Authentifizierung‘“

Oder fragen Sie ganz natürlich:

  • „Holen Sie das Transkript dieses YouTube-Videos und fassen Sie es zusammen“

  • „Welche Teile dieses Videos werden am häufigsten wiederholt?“

  • „Finden Sie aktuelle Videos über TypeScript auf diesem Kanal“

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

  • „Holen Sie die Kommentare zu diesem Video und fassen Sie die Stimmung zusammen“

  • „Zeigen Sie mir die Kapitel für dieses Tutorial“

  • „Holen Sie ein bereinigtes Transkript ohne die Sponsor-Einblendungen“

  • „Was ist gerade im Gaming-Bereich auf YouTube 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 die 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 dem/der gesucht werden soll

  • lang (string, optional) - Sprachcode für die 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, bei dem Sponsor-Einblendungen, Intros, Outros und Füllwörter über SponsorBlock entfernt wurden.

Parameter:

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

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

get_most_replayed

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

Parameter:

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

Hinweis: Erfordert ungefähr 50K+ Aufrufe, damit Heatmap-Daten verfügbar sind.

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

Gibt zurück: Titel, Beschreibung, Kanal, Dauer, Aufruf-, Like- und Kommentarzahlen, Tags, Kategorie, Thumbnails, Live-Status und mehr.

get_channel_info

Ruft Informationen zu einem YouTube-Kanal ab.

Parameter:

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

Gibt zurück: Titel, Beschreibung, Abonnenten-/Video-/Aufrufzahlen, 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 eines YouTube-Kanals 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)

Durchsucht einen bestimmten YouTube-Kanal nach Videos.

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 eines YouTube-Videos 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

Gibt zurück: Aufrufzahl, Like-Zahl, Kommentarzahl, Like-Rate, Kommentarrate und die gesamte 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 Parsen

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 übrigen 10 erfordern einen Schlüssel für die YouTube Data API v3.


Konfiguration

Umgebungsvariablen

Variable

Erforderlich

Standard

Beschreibung

YOUTUBE_API_KEY

Ja

Schlüssel für die YouTube Data API v3

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) statt search_within_channel (100 Einheiten), wenn Sie nur aktuelle Uploads benötigen.


Fehlerbehebung

API-Schlüssel korrigieren

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

claude mcp remove youtube

Installieren Sie dann erneut mit dem Befehl aus Schritt 3.3 oben (verwenden Sie denselben Scope, 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 Ihren API-Schlüssel unter Google Cloud Console auf Gültigkeit

  2. Prüfen Sie, ob die YouTube Data API aktiviert ist:

  3. Prüfen Sie die Node.js-Version (benötigt 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. Prüfen Sie, ob dist/index.js vorhanden ist — wenn nicht, führen Sie npm install aus

  2. Vergewissern Sie sich, dass der Pfad absolut ist, den Sie in Ihrem claude mcp add-Befehl angeben

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

Kontingent überschritten

Wenn Sie Fehler vom Typ „quotaExceeded" sehen:

  • Warten Sie bis Mitternacht Pacific Time (das 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

Bei manchen Videos sind Transkripte deaktiviert. Das Tool get_transcript gibt eine eindeutige Fehlermeldung zurück. Versuchen Sie:

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

  • Automatisch erzeugte Untertitel sind möglicherweise verfügbar, auch wenn keine manuell erstellten vorhanden sind

Timeout-Fehler

Erhöhen Sie die Umgebungsvariable YOUTUBE_TIMEOUT bei langsamen 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 einsteigerfreundlich.

Lizenz

MIT


Erstellt für die Claude Code Community

F
license - not found
Not graded
quality - not tested
B
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

View all related MCP servers

Related MCP Connectors

  • YouTube transcripts, search, channels, playlists and bulk transcript jobs for AI agents. 14 tools.

  • Provide token-optimized, structured YouTube data to enhance your LLM applications. Access efficien…

  • Extract YouTube transcripts, search what was said, and read on-screen frames with cited timestamps.

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/thesalautomation-lgtm/youtube-mcp-server'

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