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 lo más reproducido. 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 Registra el servidor con Claude Code
Elige el ámbito de instalación:
Ámbito | Indicador | Quién puede usarlo |
User (recomendado) |
| Tú, en cualquier proyecto |
Project |
| Cualquier persona 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 estado Conectado.
Related MCP server: youtube-mcp
Características
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 y relleno mediante SponsorBlockExtract Chapters (
extract_chapters) - Analiza las marcas de tiempo de los capítulos en 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 ordenSearch Within Channel (
search_within_channel) - Busca vídeos de un creador específicoGet Trending Videos (
get_trending_videos) - Vídeos en tendencia actualmente por región y categoríaGet Channel Videos (
get_channel_videos) - Subidas recientes de un canal, ordenadas por fecha o visualizaciones
Información de vídeo y canal
Video Metadata (
get_video_metadata) - Título, descripción, duración, visualizaciones, me gusta, etiquetas y másChannel Info (
get_channel_info) - Número de suscriptores, número de vídeos, descripción, paísPlaylist Items (
get_playlist_items) - Todos los vídeos de una lista de reproducción con sus posiciones y metadatos
Analíticas 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 vuelven a ver más los espectadoresVideo Comments (
get_video_comments) - Principales comentarios con número de me gusta y de respuestas
Utilidades
Parse YouTube URL (
parse_youtube_url) - Extrae ID de vídeo/canal/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:
Activador | Herramienta | Ejemplo |
| Get Transcript | "obtén la transcripción de youtube para este vídeo" |
| Search Videos | "busca en youtube tutoriales de React" |
| Video Metadata | "obtén los metadatos de youtube para este vídeo" |
| Channel Info | "obtén la información del canal de youtube para @ThePrimeagen" |
| Playlist Items | "lista los vídeos de esta lista de reproducción de youtube" |
| Video Comments | "obtén los comentarios de youtube para 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 de youtube para este vídeo" |
| Most Replayed | "muestra las partes más reproducidas 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 pregúntale de forma natural:
"Obtén la transcripción de este vídeo de YouTube y resúmela"
"¿Cuáles son las partes más reproducidas de este vídeo?"
"Busca vídeos recientes sobre TypeScript en este canal"
"¿Cuántas visualizaciones 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 patrocinadores"
"¿Qué está en tendencia en YouTube en gaming ahora mismo?"
Referencia de herramientas
parse_youtube_url
Analiza cualquier formato de URL de YouTube y extrae 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 sin formato
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 del vídeo de YouTube o ID del vídeolang(string, opcional) - Código de idioma para los subtítulos (predeterminado:"en")
search_transcript
Busca una palabra clave o frase en la transcripción de un vídeo.
Parámetros:
url(string, obligatorio) - URL del vídeo de YouTube o ID del vídeoquery(string, obligatorio) - Palabra clave o frase que buscarlang(string, opcional) - Código de idioma para los subtítulos (predeterminado:"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 del vídeo de YouTube o ID del vídeo
get_clean_transcript
Obtén la transcripción sin menciones de patrocinadores, intros, outros ni relleno mediante SponsorBlock.
Parámetros:
url(string, obligatorio) - URL del vídeo de YouTube o ID del vídeolang(string, opcional) - Código de idioma para los subtítulos (predeterminado:"en")
get_most_replayed
Obtén los datos del mapa de calor de "lo más reproducido", que muestran qué partes vuelven a ver más los espectadores.
Parámetros:
url(string, obligatorio) - URL del vídeo de YouTube o ID del vídeo
Nota: Se necesitan aproximadamente 50 000 o más visualizaciones para que los datos del mapa de calor estén 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 (predeterminado:10)order(string, opcional) -"relevance","date","viewCount","rating"(predeterminado:"relevance")duration(string, opcional) -"short"(<4min),"medium"(4-20min),"long"(>20min)upload_date(string, opcional) -"hour","day","week","month","year"type(string, opcional) -"video","channel","playlist"(predeterminado:"video")
get_video_metadata
Obtén metadatos detallados de un vídeo de YouTube.
Parámetros:
url(string, obligatorio) - URL del vídeo de YouTube o ID del vídeo
Devuelve: Título, descripción, canal, duración, recuentos de visualizaciones/me gusta/comentarios, etiquetas, categoría, miniaturas, estado de directo y más.
get_channel_info
Obtén información de un canal de YouTube.
Parámetros:
url(string, obligatorio) - URL del canal de YouTube, @handle o ID del canal
Devuelve: Título, descripción, recuentos 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(string, obligatorio) - URL de la lista de reproducción de YouTube o ID de la listamax_results(number, opcional) - Número de elementos, 1-50 (predeterminado:25)
get_channel_videos
Obtén los vídeos recientes de un canal de YouTube.
Parámetros:
url(string, obligatorio) - URL del canal de YouTube, @handle o ID del canalmax_results(number, opcional) - Número de vídeos, 1-50 (predeterminado:25)order(string, opcional) -"date","viewCount"(predeterminado:"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 (predeterminado:"US")category_id(string, opcional) - ID de categoría de YouTube (p. ej.,"10"para Música,"20"para Gaming,"28"para Ciencia y Tecnología)max_results(number, opcional) - Número de resultados, 1-50 (predeterminado:10)
search_within_channel
Busca vídeos dentro de un canal de YouTube específico.
Parámetros:
url(string, obligatorio) - URL del canal de YouTube, @handle o ID del canalquery(string, obligatorio) - Consulta de búsquedamax_results(number, opcional) - Número de resultados, 1-50 (predeterminado:10)
get_video_comments
Obtén los comentarios de primer nivel de un vídeo de YouTube.
Parámetros:
url(string, obligatorio) - URL del vídeo de YouTube o ID del vídeomax_results(number, opcional) - Número de comentarios, 1-100 (predeterminado:20)order(string, opcional) -"relevance","time"(predeterminado:"relevance")
calculate_engagement
Calcula las métricas de interacción de un vídeo de YouTube.
Parámetros:
url(string, obligatorio) - URL del vídeo de YouTube o ID del vídeo
Devuelve: Número de visualizaciones, 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:
Tool | Fuente de datos | ¿Requiere clave de API? |
| Análisis local | No |
| Librería youtube-transcript | No |
| Librería youtube-transcript | No |
| 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 de 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 predeterminado | Descripción |
| Sí | — | Clave de YouTube Data API v3 |
| No |
| Tiempo de espera de la API en ms |
Cuota de la API de YouTube
YouTube Data API v3 tiene una cuota diaria de 10,000 unidades. Cada herramienta usa 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 costosas. Usa
get_channel_videos(1 unidad) en lugar desearch_within_channel(100 unidades) cuando solo necesites subidas recientes.
Solución de problemas
Corregir la clave de API
Si introdujiste una clave de API incorrecta, elimina y vuelve a instalar el servidor:
claude mcp remove youtubeLuego reinstala usando el comando del Paso 3.3 anterior (usa el mismo alcance con el que lo 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 se inicia
Comprueba que tu clave de API sea válida en Google Cloud Console
Comprueba que la YouTube Data API esté habilitada:
Ve a Biblioteca de API
Debería decir «Enabled»
Comprueba la versión de Node.js (requiere 18+):
node --versionAsegúrate de que el servidor se haya compilado — si
dist/index.jsno existe, ejecutanpm installde nuevo
Errores de conexión
Comprueba que
dist/index.jsexista — 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 diariamente)
Usa una clave de API diferente
Prefiere las 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 desactivadas. La herramienta get_transcript devolverá un mensaje de error claro. Prueba:
Un código de idioma diferente (p. ej.,
lang: "es")Los subtítulos generados automáticamente pueden estar disponibles incluso si los manuales no lo están
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
- FlicenseBqualityNot gradedmaintenanceEnables extraction and processing of YouTube video transcripts from individual videos, channels, and playlists. Supports transcript search, batch processing, multiple output formats (JSON, text, SRT, VTT), and bulk operations across multiple videos.1134
- AlicenseAqualityDmaintenanceEnables AI tools to access YouTube content, including transcript extraction, video/channel info, and search.427MIT
- AlicenseAqualityDmaintenanceEnables fetching, searching, and summarizing YouTube video transcripts with multi-language support.4MIT
- AlicenseAqualityAmaintenanceEnables fetching YouTube transcripts, searching videos, and listing channel/playlist videos via the TranscriptFetch API.10555MIT
Related MCP Connectors
Fetch transcripts, subtitles, chapters, metadata and frames from YouTube and 10+ video platforms
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.
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/Engr-IsrarUllah/ClaudeCode_MCP'
If you have feedback or need assistance with the MCP directory API, please join our Discord server