Skip to main content
Glama

YouTube MCP Server

Servidor MCP que lleva YouTube a Claude Code: transcripciones de vídeo, búsqueda, metadatos, información de canales, listas de reproducción, comentarios, vídeos en tendencia, análisis de interacción, extracción de capítulos, integración con SponsorBlock y mapas de calor de lo más reproducido. Utiliiza la YouTube Data API v3, youtube-transcript y SponsorBlock.

Inicio rápido

Paso 1: Obtén tu clave de API

  1. Ve a Google Cloud Console

  2. Crea un proyecto (o selecciona uno existente)

  3. Habilita la YouTube Data API v3:

  4. Crea una clave de API:

    • Ve a Credenciales

    • Haz clic en Crear credenciales > Clave de API

  5. Copia la clave (la necesitarás en el Paso 3)

Paso 2: Instala los requisitos previos

Paso 3: Instala el servidor MCP

3.1 Clona el repositorio

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

3.2 Instala las dependencias

macOS / Linux / Windows:

npm install

Nota: Las dependencias se instalan y el servidor se compile automáticamente en un solo paso.

3.3 Registra el servidor con Claude Code

Elige el ámbito de instalación:

Ámbito

Flag

Quién puede usarlo

Usuaro (recomendado)

- s user

Tú, en cualqier proyecto

Proyecto

- s project

Cualqier persona que clone este repositorio

Local

- s local

Solo en el directorio actual

Reemplaza YOUR_API_KEY con tu clave real de la YouTube Data API y usa la ruta completa hasta dist/index.js.

Consejo: Para obtener la ruta completa, ejecuta esto desde el directorio clonado:

  • 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"

Alternativa: Utiliza el asistent de npm (si la clave de API está definida en el entorno)

export YOUTUBE_API_KEY=YOUR_API_KEY
npm run install:claude

Paso 4: Reinicia Claude Code

Cierra y vuelve a abrir Claude Code para que los cambios surtan efecto.

Paso 5: Verifica la instalación

claude mcp list

Deberías ver youtube en la lista con estado Conectado.


Related MCP server: youtube-mcp

Funcionalidades

Transcripciones y subtítulos

  • Obtener transcripción (get_transcript) - Obtén la transcripción completa del vídeo con marcas de tiempo; admite varos idiomas

  • Buscar en la transcripción (search_transcript) - Encuentra dónde aparece una palabra clave o frase en un vídeo con marcas de tiempo

  • Transcripción limpia (get_clean_transcript) - Transcripción sin menciones de patrocinadores, intros, outros ni relleno, eliminadas mediante SponsorBlock

  • Extrar capítulos (extract_chapters) - Parsea las marcas de tiempo de los capítulos a partir de las descripciones de los vídeos

Búsqueda y descuibrimiento

  • Buscar vídeos (search_videos) - Búsqueda completa en YouTube con filtros por fecha, duración, tipo y orden

  • Buscar en el canal (search_withia_channel) - Busca vídeos de un creador específico

  • Obtener vídeos en tendencia (get_trending_videos) - Vídeos en tendencia actualmente por región y categoría

  • Obtener vídeos del canal (get_channel_videos) - Subidas recientes de un canal, ordenadas por fecha o visualizaciones

Información de vídeos y canales

  • Metadatos del vídeo (get_video_metadata) - Título, descripción, duración, visualizaciones, me gustas, etiquetas y más

  • Información del canal (get_channel_info) - Número de suscriptores, número de vídeos, descripción, país

  • Eements de la lista de reproducción (get_playlist_items) - Todos los vídeos de una lista de reproducción con sus posiciones y metadatos

Análisis e interacción

  • Calcular interacción (calculate_engagement) - Tasa de me gustas, tasa de comentarios y tasa de interacción a partir de estadísticas públicas

  • Lo más reproducido (get_most_replayed) - Datos de mapa de calor que muestran qué partes vuelven a ver más los espectadores

  • Comentarios del vídeo (get_video_comments) - Principales comentarios con número de me gustas y respuestas

Utilidades

  • Analizar URL de YouTube (parse_youtube_url) - Extrae IDs de vídeo/canal/lista de reproducción de cualqier formato de URL de YouTube


Uso

Una vez instalado, usa frases desencadenantes para invocar las herramientas de YouTube:

Trigger

Herramienta

Ejemplo

youtube transcript

Obtener transcripción

"obtén la transcripción de YouTube para este vídeo"

youtube search

Buscar vídeos

"busca en YouTube tutoriales de React"

youtube metadata

Metadatos del vídeo

"obtén los metadatos de YouTube para este vídeo"

youtube channel

Información del canal

"obtén la información del canal de YouTube de @ThePrimagen"

youtube playlist

Eements de la lista de reprodución

"lista los vídeos de esta lista de reprodución de YouTube"

youtube comments

Comentarios del vídeo

"obtén los comentarios de YouTube para este vídeo"

youtube trending

Vídeos en tendencia

"¿qué está en tendencia en YouTube en Estados Unidos?"

youtube chapters

Extrar capítulos

"extrae los capítulos de este vídeo de YouTube"

youtube engagement

Calcular interación

"calula la interación de YouTube para este vídeo"

youtube most replayed

Lo más reproducido

"muestra las partes más reproducidas de este vídeo de YouTube"

youtube clean transcript

Transcripción limpia

"obtén una transcripción limpia de YouTube sin patrocinadores"

youtube search transcript

Búsqueda en la transcripción

"busca en la transcripción de YouTube 'autenticación'"

O pregunta de forma natural:

  • "Obten la transcripción de este vídeo de YouTube y resúmela"

  • "¿Cuáles son las partes más reproducidas de este vídeo?"

  • "Encuentra vídeos recientes sobre TypeScript en este canal"

  • "¿Cuántas visualizaciones y me gustas tiene este vídeo?"

  • "Obten los comentarios de este vídeo y resume el sentimiento"

  • "Muéstrame los capítulos de este tutorial"

  • "Obten una transcripción limpia sin las menciones de patrocinadores"

  • "¿Qué está en tendencia en YouTube en videojuegos ahora mismo?"


Referencia de herramientas

parse_youtube_url

Analiza cualquier formato de URL de YouTube y extrae los identificadores. No se necesita clave de API.

Parámetros:

  • url (cadena, obligatorio) - Cualquier URL de YouTube o ID de vídeo

Formatos admitidos: youtube.com/watch?v=, youtu.be/, /shorts/, /embed/, /playlist?list=, /channel/, /@handle, /c/, /user/, IDs de vídeo simples

get_transcript

Obtén la transcripción/los subtítulos completos de un vídeo de YouTube. No se necesita clave de API.

Parámetros:

  • url (cadena, obligatorio) - URL del vídeo de YouTube o ID de vídeo

  • lang (cadena, opcional) - Código de idioma de los subtítulos (por defecto: "en")

Busca dentro de la transcripción de un vídeo una palabra clave o frase.

Parámetros:

  • url (cadena, obligatorio) - URL del vídeo de YouTube o ID de vídeo

  • query (cadena, obligatorio) - Palabra clave o frase para buscar

  • lang (cadena, opcional) - Código de idioma de los subtítulos (por defecto: "en")

extract_chapters

Extrae las marcas de tiempo de los capítulos de la descripción de un vídeo.

Parámetros:

  • url (cadena, obligatorio) - URL del vídeo de YouTube o ID de vídeo

get_clean_transcript

Obtén la transcripción sin menciones de patrocinadores, intros, outros ni relleno mediante SponsorBlock.

Parámetros:

  • url (cadena, obligatorio) - URL del vídeo de YouTube o ID de vídeo

  • lang (cadena, opcional) - Código de idioma de los subtítulos (por defecto: "en")

get_most_replayed

Obtén los datos de mapa de calor de «lo más reproducido» que muestran qué partes vuelven a ver más los espectadores.

Parámetros:

  • url (cadena, obligatorio) - URL del vídeo de YouTube o ID de vídeo

Nota: Se requieren aproximadamente 50K+ visualizaciones para que los datos de mapa de calor estén disponibles.

Busca en YouTube con soporte completo de filtros.

Parámetros:

  • query (cadena, obligatorio) - Consulta de búsqueda

  • max_results (número, opcional) - Número de resultados, 1-50 (por defecto: 10)

  • order (cadena, opcional) - "relevance", "date", "viewCount", "rating" (por defecto: "relevance")

  • duration (cadena, opcional) - "short" (<4 min), "medium" (4-20 min), "long" (>20 min)

  • upload_date (cadena, opcional) - "hour", "day", "week", "month", "year"

  • type (cadena, opcional) - "video", "channel", "playlist" (por defecto: "video")

get_video_metadata

Obtén metadatos detallados de un vídeo de YouTube.

Parámetros:

  • url (cadena, obligatorio) - URL del vídeo de YouTube o ID de vídeo

Devuelve: Título, descripción, canal, duración, número de visualizaciones/me gustas/comentarios, etiquetas, categoría, miniaturas, estado de emisión en directo y más.

get_channel_info

Obtén información de un canal de YouTube.

Parámetros:

  • url (cadena, obligatorio) - URL del canal de YouTube, @handle o ID de canal

Devuelve: Título, descripción, número de suscriptores/vídeos/visualizaciones, país, URL personalizada y miniatura.

get_playlist_items

Obtén todos los vídeos de una lista de reproducción de YouTube.

Parámetros:

  • url (cadena, obligatorio) - URL de la lista de reproducción de YouTube o ID de la lista

  • max_results (número, opcional) - Número de elementos, 1-50 (por defecto: 25)

get_channel_videos

Obtén los vídeos recientes de un canal de YouTube.

Parámetros:

  • url (cadena, obligatorio) - URL del canal de YouTube, @handle o ID de canal

  • max_results (número, opcional) - Número de vídeos, 1-50 (por defecto: 25)

  • order (cadena, opcional) - "date", "viewCount" (por defecto: "date")

get_trending_videos

Obtén los vídeos actualmente en tendencia/populares de YouTube.

Parámetros:

  • region_code (cadena, opcional) - Código de país ISO 3166-1 alfa-2 (por defecto: "US")

  • category_id (cadena, opcional) - ID de categoría de YouTube (p. ej., "10" para Música, "20" para Videojuegos, "28" para Ciencia y Tecnología)

  • max_results (número, opcional) - Número de resultados, 1-50 (por defecto: 10)

Busca vídeos dentro de un canal específico de YouTube.

Parámetros:

  • url (cadena, obligatorio) - URL del canal de YouTube, @handle o ID de canal

  • query (cadena, obligatorio) - Consulta de búsqueda

  • max_results (número, opcional) - Número de resultados, 1-50 (por defecto: 10)

get_video_comments

Obtén los comentarios de primer nivel de un vídeo de YouTube.

Parámetros:

  • url (cadena, obligatorio) - URL del vídeo de YouTube o ID de vídeo

  • max_results (número, opcional) - Número de comentarios, 1-100 (por defecto: 20)

  • order (cadena, opcional) - "relevance", "time" (por defecto: "relevance")

calculate_engagement

Calula las métricas de interacción de un vídeo de YouTube.

Parámetros:

  • url (cadena, obligatorio) - URL del vídeo de YouTube o ID de vídeo

Devuelve: Número de visualizaciones, número de me gustas, número de comentarios, tasa de me gustas, tasa de comentarios y tasa de interacción general.


Cómo funciona

Este servidor MCP se conecta a Claude Code mediante el transporte stdio y proporciona 15 herramientas:

Tool

Fuente de datos

¿Necesita clave de API?

parse_youtube_url

Parseo local

No

get_transcript

Librería youtube-transcript

No

search_transcript

Librería youtube-transcript

No

get_clean_transcript

Librería youtube-transcript + SponsorBlock API

No

get_most_replayed

Página de YouTube (Innertube)

No

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

Nota: 5 herramientas funcionan sin una clave de API (transcripciones, SponsorBlock, mapas de calor, parseo de URL). Las 10 restantes requieren una clave de YouTube Data API v3.


Configuración

Variables de entorno

Variable

Obligatoria

Por defecto

Descripción

YOUTUBE_API_KEY

Clave de YouTube Data API v3

YOUTUBE_TIMEOUT

No

30000

Tiempo de espera de la API en ms

Cuota de la API de YouTube

La YouTube Data API v3 tiene una cuota diaria de 10.000 unidades. Cada herramienta consume una cantidad diferente:

Operación

Coste por llamada

search (search_videos, search_within_channel)

100 unidades

videos.list (get_video_metadata, get_trending, calculate_engagement)

1 unidad

channels.list (get_channel_info, get_channel_videos)

1 unidad

playlists.list (get_playlist_items)

1 unidad

playlistItems.list (get_playlist_items, get_channel_videos)

1 unidad

commentThreads.list (get_video_comments)

1 unidad

Consejo: Las operaciones de búsqueda son las más costosas. Usa get_channel_videos (1 unidad) en lugar de search_within_channel (100 unidades) cuando solo necesites las últimas subidas.


Solución de problemas

Corregir la clave de API

Si has introducido una clave de API incorrecta, elimina el servidor y vuelve a instalarlo:

claude mcp remove youtube

Luego reinstálalo usando el comando del Paso 3.3 anterior (usa el mismo ámbito con el que lo instalaste originalmente).

El servidor MCP no aparece

Comprueba si el servidor está instalado:

claude mcp list

Si no aparece, sigue el Paso 3 para instalarlo.

El servidor no se inicia

  1. Comprueba que tu clave de API es válida en Google Cloud Console

  2. Comprueba que la YouTube Data API está habilitada:

  3. Comprueba la versión de Node.js (necesita 18+):

    node --version
  4. Asegúrate de que el servidor se haya compilado — si falta dist/index.js, ejecuta npm install de nuevo

Errores de conexión

  1. Comprueba que dist/index.js existe — si no es así, ejecuta npm install

  2. Verifica que la ruta sea absoluta en tu comando claude mcp add

  3. Reinicia Claude Code después de cualquier cambio de configuración

Cuota superada

Si ves errores de «quotaExceeded»:

  • Espera hasta la medianoche, hora del Pacífico (la cuota se restablece a diario)

  • Usa una clave de API diferente

  • Prefiere herramientas de bajo coste (get_video_metadata a 1 unidad) en lugar de herramientas de búsqueda (100 unidades)

Transcripción no disponible

Algunos vídeos tienen las transcripciones desactivadas. La herramienta get_transcript devolverá un mensaje de error claro. Prueba:

  • Un código de idioma diferente (p. ej., lang: "es")

  • Puede haber subtítulos generados automáticamente incluso si los manuales no están disponibles.

Errores de tiempo de espera

Aumenta la variable de entorno YOUTUBE_TIMEOUT para conexiones lentas:

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

Ver la configuración actual

claude mcp list

Contribuciones

¡Las pull requests son bienvenidas! Por favor, mantenlo simple y apto para principiantes.

Licencia

MIT


Hecho para la comunidad de 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

View all related MCP servers

Related MCP Connectors

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

  • 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…

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/itx-rajpoot/youtube-mcp'

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