YouTube MCP Server
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 las partes más reproducidas. Utiliza la YouTube Data API v3, youtube-transcript y SponsorBlock.
Inicio rápido
Paso 1: Obtén tu clave de API
Ve a Google Cloud Console
Crea un proyecto (o selecciona uno existente)
Habilita la YouTube Data API v3:
Ve a Biblioteca de API
Haz clic en Habilitar
Crea una clave de API:
Ve a Credenciales
Haz clic en Crear credenciales > Clave de API
Copia la clave (la necesitarás en el Paso 3)
Paso 2: Instala los requisitos previos
Node.js 18+ - Descárgalo aquí
Claude Code CLI - Guía de instalación
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-mcp3.2 Instala las dependencias
macOS / Linux / Windows:
npm installNota: Las dependencias se instalan y el servidor se compila automáticamente en un solo paso.
3.3 Regístralo con Claude Code
Elige el ámbito de instalación:
Ámbito | Indicador | Quién puede usarlo |
Usuario (recomendado) |
| Tú, en cualquier proyecto |
Proyecto |
| Cualquiera que clone este repositorio |
Local |
| Solo en el directorio actual |
Reemplaza YOUR_API_KEY con tu clave real de la YouTube Data API y usa la ruta completa a 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.jsWindows (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: Usa el asistente de npm (si la clave de API está configurada en el entorno)
export YOUTUBE_API_KEY=YOUR_API_KEY
npm run install:claudePaso 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 listDeberías ver youtube en la lista con el estado Conectado.
Related MCP server: YouTube Insights MCP Server
Funcionalidades
Transcripciones y subtítulos
Get Transcript (
get_transcript) - Obtén transcripciones completas de vídeo con marcas de tiempo; admite varios idiomasSearch Transcript (
search_transcript) - Encuentra dónde aparece una palabra clave o frase en un vídeo, con marcas de tiempoClean Transcript (
get_clean_transcript) - Transcripción sin patrocinios, intros, outros ni contenido de relleno, eliminados mediante SponsorBlockExtract Chapters (
extract_chapters) - Analiza las marcas de tiempo de los capítulos de las descripciones de los vídeos
Búsqueda y descubrimiento
Search Videos (
search_videos) - Búsqueda completa en YouTube con filtros por fecha, duración, tipo y orden de clasificaciónSearch Within Channel (
search_within_channel) - Busca vídeos de un creador específicoGet Trending Videos (
get_trending_videos) - Vídeos actualmente en tendencia por región y categoríaGet Channel Videos (
get_channel_videos) - Subidas recientes de un canal, ordenadas por fecha o por visitas
Información de vídeo y canal
Video Metadata (
get_video_metadata) - Título, descripción, duración, visitas, me gusta, etiquetas y másChannel Info (
get_channel_info) - Número de suscriptores, número de vídeos, descripción y paísPlaylist Items (
get_playlist_items) - Todos los vídeos de una lista de reproducción con sus posiciones y metadatos
Analítica e interacción
Calculate Engagement (
calculate_engagement) - Tasa de me gusta, tasa de comentarios y tasa de interacción a partir de estadísticas públicasMost Replayed (
get_most_replayed) - Datos de mapa de calor que muestran qué partes repiten más los espectadoresVideo Comments (
get_video_comments) - Comentarios principales con número de me gusta y de respuestas
Utilidades
Parse YouTube URL (
parse_youtube_url) - Extrae IDs de vídeo, canal o lista de reproducción de cualquier formato de URL de YouTube
Uso
Una vez instalado, usa frases de activación para invocar las herramientas de YouTube:
Activación | Herramienta | Ejemplo |
| Get Transcript | "obtén la transcripción de YouTube de este vídeo" |
| Search Videos | "busca en YouTube tutoriales de React" |
| Video Metadata | "obtén los metadatos de YouTube de este vídeo" |
| Channel Info | "obtén información del canal de YouTube de @ThePrimeagen" |
| Playlist Items | "enumera los vídeos de esta lista de reproducción de YouTube" |
| Video Comments | "obtén los comentarios de YouTube de este vídeo" |
| Trending Videos | "¿qué está en tendencia en YouTube en Estados Unidos?" |
| Extract Chapters | "extrae los capítulos de este vídeo de YouTube" |
| Calculate Engagement | "calcula la interacción en YouTube de este vídeo" |
| Most Replayed | "muestra las partes más repetidas de este vídeo de YouTube" |
| Clean Transcript | "obtén una transcripción limpia de YouTube sin patrocinios" |
| Search Transcript | "busca 'authentication' en la transcripción de YouTube" |
O pregunta de forma natural:
"Obtén la transcripción de este vídeo de YouTube y resúmela"
"¿Cuáles son las partes más repetidas de este vídeo?"
"Encuentra vídeos recientes sobre TypeScript en este canal"
"¿Cuántas visitas y me gusta tiene este vídeo?"
"Obtén los comentarios de este vídeo y resume el sentimiento"
"Muéstrame los capítulos de este tutorial"
"Obtén una transcripción limpia sin las menciones de patrocinio"
"¿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(string, 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 o los subtítulos completos de un vídeo de YouTube. No se necesita clave de API.
Parámetros:
url(string, obligatorio) - URL de vídeo de YouTube o ID de vídeolang(string, opcional) - Código de idioma para los subtítulos (por defecto:"en")
search_transcript
Busca una palabra clave o frase en la transcripción de un vídeo.
Parámetros:
url(string, obligatorio) - URL de vídeo de YouTube o ID de vídeoquery(string, obligatorio) - Palabra clave o frase que buscarlang(string, opcional) - Código de idioma para 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(string, obligatorio) - URL de vídeo de YouTube o ID de vídeo
get_clean_transcript
Obtén la transcripción sin menciones de patrocinadores, intros, outros ni contenido de relleno, eliminados mediante SponsorBlock.
Parámetros:
url(string, obligatorio) - URL de vídeo de YouTube o ID de vídeolang(string, opcional) - Código de idioma para los subtítulos (por defecto:"en")
get_most_replayed
Obtén los datos del mapa de calor de "lo más repetido", que muestran qué partes repiten más los espectadores.
Parámetros:
url(string, obligatorio) - URL de vídeo de YouTube o ID de vídeo
Nota: Se requieren aproximadamente 50 000+ visitas para que haya datos de mapa de calor disponibles.
search_videos
Busca en YouTube con soporte completo de filtros.
Parámetros:
query(string, obligatorio) - Consulta de búsquedamax_results(number, opcional) - Número de resultados, 1-50 (por defecto:10)order(string, opcional) -"relevance","date","viewCount","rating"(por defecto:"relevance")duration(string, opcional) -"short"(<4 min),"medium"(4-20 min),"long"(>20 min)upload_date(string, opcional) -"hour","day","week","month","year"type(string, opcional) -"video","channel","playlist"(por defecto:"video")
get_video_metadata
Obtén metadatos detallados de un vídeo de YouTube.
Parámetros:
url(string, obligatorio) - URL de vídeo de YouTube o ID de vídeo
Devuelve: título, descripción, canal, duración, recuentos de visitas, me gusta y comentarios, etiquetas, categoría, miniaturas, estado en directo y más.
get_channel_info
Obtén información de un canal de YouTube.
Parámetros:
url(string, obligatorio) - URL de canal de YouTube, @handle o ID de canal
Devuelve: título, descripción, recuentos de suscriptores, vídeos y visitas, 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(string, obligatorio) - URL de lista de reproducción de YouTube o ID de la listamax_results(number, 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(string, obligatorio) - URL de canal de YouTube, @handle o ID de canalmax_results(number, opcional) - Número de vídeos, 1-50 (por defecto:25)order(string, opcional) -"date","viewCount"(por defecto:"date")
get_trending_videos
Obtén los vídeos de YouTube actualmente en tendencia o populares.
Parámetros:
region_code(string, opcional) - Código de país ISO 3166-1 alpha-2 (por defecto:"US")category_id(string, opcional) - ID de categoría de YouTube (p. ej.,"10"para Música,"20"para Videojuegos,"28"para Ciencia y tecnología)max_results(number, opcional) - Número de resultados, 1-50 (por defecto:10)
search_within_channel
Busca vídeos dentro de un canal de YouTube específico.
Parámetros:
url(string, obligatorio) - URL de canal de YouTube, @handle o ID de canalquery(string, obligatorio) - Consulta de búsquedamax_results(number, 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(string, obligatorio) - URL de vídeo de YouTube o ID de vídeomax_results(number, opcional) - Número de comentarios, 1-100 (por defecto:20)order(string, opcional) -"relevance","time"(por defecto:"relevance")
calculate_engagement
Calcula las métricas de interacción de un vídeo de YouTube.
Parámetros:
url(string, obligatorio) - URL de vídeo de YouTube o ID de vídeo
Devuelve: número de visitas, número de me gusta, número de comentarios, tasa de me gusta, 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:
Herramienta | Fuente de datos | ¿Necesita clave API? |
| Análisis local | No |
| Biblioteca youtube-transcript | No |
| Biblioteca youtube-transcript | No |
| Biblioteca youtube-transcript + API de SponsorBlock | No |
| Página de YouTube (Innertube) | No |
| YouTube Data API v3 | Sí |
| YouTube Data API v3 | Sí |
| YouTube Data API v3 | Sí |
| YouTube Data API v3 | Sí |
| YouTube Data API v3 | Sí |
| YouTube Data API v3 | Sí |
| YouTube Data API v3 | Sí |
| YouTube Data API v3 | Sí |
| YouTube Data API v3 | Sí |
| YouTube Data API v3 | Sí |
Nota: 5 herramientas funcionan sin clave API (transcripciones, SponsorBlock, mapas de calor, análisis de URL). Las 10 restantes requieren una clave de YouTube Data API v3.
Configuración
Variables de entorno
Variable | Requerida | Valor por defecto | Descripción |
| Sí | — | Clave de YouTube Data API v3 |
| No |
| 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 utiliza una cantidad diferente:
Operación | Coste por llamada |
| 100 unidades |
| 1 unidad |
| 1 unidad |
| 1 unidad |
| 1 unidad |
| 1 unidad |
Consejo: Las operaciones de búsqueda son las más caras. Usa
get_channel_videos(1 unidad) en lugar desearch_within_channel(100 unidades) cuando solo necesites los últimos vídeos subidos.
Solución de problemas
Arreglar la clave API
Si introdujiste una clave API incorrecta, elimina y reinstala:
claude mcp remove youtubeLuego reinstala usando el comando del Paso 3.3 anterior (usa el mismo ámbito con el que instalaste originalmente).
El servidor MCP no aparece
Comprueba si el servidor está instalado:
claude mcp listSi no aparece, sigue el Paso 3 para instalarlo.
El servidor no arranca
Verifica que tu clave API es válida en Google Cloud Console
Comprueba que la YouTube Data API está habilitada:
Ve a API Library
Debería decir «Enabled»
Comprueba la versión de Node.js (se necesita 18+):
node --versionAsegúrate de que el servidor se compiló — si falta
dist/index.js, ejecutanpm installde nuevo
Errores de conexión
Comprueba que
dist/index.jsexiste — si no, ejecutanpm installVerifica que la ruta sea absoluta en tu comando
claude mcp addReinicia 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 API diferente
Prefiere herramientas de bajo coste (
get_video_metadataa 1 unidad) sobre las herramientas de búsqueda (100 unidades)
Transcripción no disponible
Algunos vídeos tienen las transcripciones deshabilitadas. La herramienta get_transcript devolverá un mensaje de error claro. Prueba:
Un código de idioma diferente (p. ej.,
lang: "es")Puede que haya subtítulos generados automáticamente aunque no los haya manuales
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.jsVer la configuración actual
claude mcp listContribuciones
¡Las pull requests son bienvenidas! Por favor, mantenlo sencillo y apto para principiantes.
Licencia
MIT
Hecho para la comunidad de Claude Code
This server cannot be installed
Maintenance
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
- FlicenseBqualityDmaintenanceEnables interaction with YouTube through search and transcript extraction functionality. Allows searching for videos and retrieving full transcripts with timestamps for content analysis.26
- AlicenseBqualityCmaintenanceEnables extraction of transcripts, keyword-based video search with metadata retrieval, and channel information discovery from YouTube videos through natural language interaction.34MIT
- AlicenseNot gradedqualityCmaintenanceEnables 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.2GPL 3.0
- FlicenseNot gradedqualityCmaintenanceEnables AI assistants to search videos, channels, and playlists, retrieve video metadata, transcripts, and comments via the YouTube Data API v3.73
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.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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