Youtube MCP
YouTube MCP Connector for Claude.ai
Servidor MCP remoto de producción que permite a Claude.ai usar herramientas de solo lectura de YouTube a través de HTTPS:
search_videosget_trending_videosget_channel_videosget_video_detailsget_engagement_statsget_transcriptsearch_transcript
El servicio utiliza la YouTube Data API v3 oficial para búsquedas, metadatos, tendencias y subidas de canales. La recuperación de transcripciones es de mejor esfuerzo: primero intenta con las pistas de subtítulos públicas de InnerTube y luego con la detección de subtítulos de la página de visualización de YouTube. No elude CAPTCHA, bloqueos ni límites de velocidad.
Configuración local
npm install
cp .env.example .envConfigura como mínimo:
YOUTUBE_API_KEY=your_google_api_key
AUTH_MODE=noneEjecuta localmente:
npm run devComprobaciones de salud:
curl http://localhost:3000/health
curl http://localhost:3000/readyCompila y prueba:
npm test
npm run buildRelated MCP server: YouTube MCP Server
Entorno de producción
Variables mínimas de prueba en Railway:
YOUTUBE_API_KEY=...
AUTH_MODE=noneSe recomienda Redis, pero la aplicación puede arrancar sin él y utilizará una caché no operativa en proceso.
Variables completas de producción:
NODE_ENV=production
YOUTUBE_API_KEY=...
AUTH_MODE=oauth
AUTH_ISSUER=https://YOUR_AUTH0_DOMAIN/
AUTH_AUDIENCE=https://youtube-claude-mcp
AUTH_JWKS_URL=https://YOUR_AUTH0_DOMAIN/.well-known/jwks.json
AUTH_REQUIRED_SCOPE=youtube:read
REDIS_URL=...TTL de caché predeterminados:
TRANSCRIPT_CACHE_TTL_SECONDS=604800
VIDEO_DETAILS_CACHE_TTL_SECONDS=900
TRENDING_CACHE_TTL_SECONDS=600
CHANNEL_VIDEOS_CACHE_TTL_SECONDS=600Configuración de Auth0
Crea o reutiliza una API de Auth0.
Establece el identificador de la API con el mismo valor que
AUTH_AUDIENCE.Añade el alcance
youtube:read.Usa la URL del emisor de Auth0 como
AUTH_ISSUER.Usa el endpoint JWKS del tenant como
AUTH_JWKS_URL.Configura los ajustes avanzados de OAuth del conector personalizado de Claude.ai con los detalles del cliente de Auth0 correspondientes.
El endpoint /mcp requiere un Authorization: Bearer <token> válido cuando AUTH_MODE=oauth.
Despliegue en Railway
Sube el repositorio a GitHub.
Crea un proyecto de Railway a partir del repositorio de GitHub.
Railway debería usar el Dockerfile incluido en el repositorio mediante
railway.json.Añade las variables de servicio:
YOUTUBE_API_KEY=...
AUTH_MODE=noneDespliega y abre
/health.Añade Redis de Railway más tarde si quieres caché compartida y luego establece
REDIS_URL.Cambia a Auth0 estableciendo
AUTH_MODE=oauthy las variables de Auth0.
Despliegue en Render
Crea una instancia de Redis en Render.
Crea un Web Service de Render a partir de este repositorio.
Selecciona el despliegue con Docker.
Añade las variables de entorno de producción.
Despliega.
Verifica:
curl https://YOUR_RENDER_URL/health
curl https://YOUR_RENDER_URL/ready
curl -i https://YOUR_RENDER_URL/mcpEl acceso no autenticado a /mcp debería devolver 401.
Conector de Claude.ai
Abre la configuración de Claude.ai.
Ve a Personalizar y luego a Conectores.
Añade un conector personalizado.
Usa:
https://YOUR_RENDER_URL/mcpConfigura los ajustes avanzados de OAuth si la autenticación de producción está activada.
Habilita el conector en un chat.
Indicaciones de demostración:
Busca en YouTube 5 tutoriales recientes de servidores MCP.
¿Cuáles son los vídeos más populares en Pakistán ahora mismo?
Muestra los últimos vídeos de @GoogleDevelopers.
Obtén visualizaciones, me gusta y duración para esta URL de YouTube.
Calcula su tasa de interacción.
Obtén la transcripción y resúmela.
¿Dónde mencionan la autenticación en la transcripción?
Notas operativas
Restringe y rota la clave de API de YouTube en Google Cloud cuando sea práctico.
No registres claves de API, tokens de portador ni cabeceras de autorización completas.
Las llamadas de búsqueda consumen mucha cuota; prefiere las subidas de canales y los metadatos en caché siempre que sea posible.
Los fallos de Redis degradan el comportamiento de la caché, pero no hacen fallar las llamadas normales a las herramientas.
Los fallos de transcripción pueden ocurrir cuando los subtítulos están desactivados, no disponibles, restringidos por región o bloqueados por YouTube.
Las respuestas de CAPTCHA o de bloqueo de bots se muestran como errores; el servicio no intenta evadirlos.
Solución de problemas
El inicio falla con
YOUTUBE_API_KEY is required: establece la clave de API del servidor.El inicio falla en producción con
REDIS_URL is required: conecta Redis de Render y establece su URL./mcpdevuelve401: el token falta, ha expirado, está mal formado o está firmado por un emisor incorrecto./mcpdevuelve403: el token es válido pero carece deyoutube:read.La herramienta de transcripción devuelve no disponible: es posible que el vídeo no tenga subtítulos públicos.
Cuota de YouTube superada: espera a que se restablezca la cuota, solicita un aumento de cuota o reduce el uso de búsquedas.
This server cannot be deployed
Maintenance
Related MCP Connectors
Search YouTube videos, read transcripts and get public video information in your AI assistant.
YouTube transcripts, search, channel/playlist listings and upload tracking for AI agents.
YouTube transcripts, search, channel browsing, and playlists for AI agents via MCP.
YouTube for AI agents: transcripts, comments, video stats, channel monitor, Shorts captions.
Related MCP Servers
- AlicenseAqualityDmaintenanceEnables YouTube integration with Claude Code, including video search, metadata retrieval, transcript fetching, channel exploration, and trending videos.81MIT
- AlicenseNot gradedqualityDmaintenanceEnables Claude to interact with YouTube Data API for searching videos, channels, and playlists, and retrieving details and playlists.15 npmMIT
- FlicenseNot gradedqualityCmaintenanceEnables bringing YouTube into Claude Code for video transcripts, search, metadata, channel info, playlists, comments, trending videos, engagement analytics, chapters, SponsorBlock clean transcripts, and most-replayed heatmaps.15 npm-
- FlicenseAqualityCmaintenanceEnables Claude Code to retrieve YouTube transcripts, search videos and channels, fetch metadata, playlists, comments, trending videos, engagement analytics, chapters, SponsorBlock-cleaned transcripts, and most-replayed heatmaps.1515 npm-