YouTube Transcript MCP
Descarga transcripciones directamente de videos de YouTube.
Documentación
Servidor de Transcripciones de YouTube
Un servidor de Protocolo de Contexto de Modelo (MCP) que permite la recuperación de transcripciones de videos de YouTube. Este servidor proporciona acceso directo a los subtítulos y leyendas de los videos a través de una interfaz sencilla.
Instalación mediante Smithery
Para instalar el Servidor de Transcripciones de YouTube para Claude Desktop automáticamente a través de Smithery:
npx -y @smithery/cli install @kimtaeyoon83/mcp-server-youtube-transcript --client claude
Componentes
Herramientas
-
get_transcript
- Extrae transcripciones de videos de YouTube
- Entradas:
url(cadena, obligatorio): URL del video de YouTube, URL de Shorts o ID del videolang(cadena, opcional, predeterminado: "en"): Código de idioma para la transcripción (por ejemplo, 'ko', 'en'). Se recurre automáticamente a los idiomas disponibles si no se encuentra el idioma solicitado.include_timestamps(booleano, opcional, predeterminado: false): Incluir marcas de tiempo en la salida (por ejemplo, '[0:05] texto')strip_ads(booleano, opcional, predeterminado: true): Filtrar patrocinios, anuncios y contenido promocional de la transcripción según los marcadores de capítulos
-
analyze_video (opcional, requiere una clave API de TwelveLabs)
- Analiza un video con TwelveLabs Pegasus, un modelo de comprensión de video. A diferencia de
get_transcript, este razona sobre lo que se muestra en pantalla, por lo que produce resúmenes y respuestas útiles incluso para videos con poco o ningún habla (demostraciones, jugabilidad, material de relleno, videos musicales). - Entradas:
url(cadena, obligatorio): Una URL de video directa accesible públicamente (por ejemplo, un enlace de.mp4/.mov/.webmo una URL prefirmada). TwelveLabs obtiene el archivo del lado del servidor, por lo que una URL de la página de visualización de YouTube no funcionará: sirve HTML, no una transmisión de video sin procesar.prompt(cadena, opcional): Instrucción o pregunta para el modelo (por ejemplo,"Summarize this video in 3 sentences"o"What products are shown?"). Se establece por defecto en un resumen general.model(cadena, opcional, predeterminado:"pegasus1.2"): Modelo Pegasus a utilizar ("pegasus1.2"o"pegasus1.5").max_tokens(número, opcional, predeterminado: 2048): Longitud máxima de respuesta en tokens.
- Requiere la variable de entorno
TWELVELABS_API_KEY. La herramienta de transcripción funciona sin ella; el análisis es totalmente opcional. Obtén una clave gratuita en twelvelabs.io: hay un generoso nivel gratuito.
- Analiza un video con TwelveLabs Pegasus, un modelo de comprensión de video. A diferencia de
Características Clave
- Soporte para múltiples formatos de URL de video (incluyendo YouTube Shorts)
- Recuperación de transcripciones específicas por idioma con recurso automático
- Marcas de tiempo opcionales para referenciar momentos específicos
- Filtrado integrado de anuncios/patrocinios (habilitado por defecto)
- Cero dependencias externas para la obtención de transcripciones
- Metadatos detallados en las respuestas
Configuración
Para usar con Claude Desktop, agrega esta configuración del servidor:
{
"mcpServers": {
"youtube-transcript": {
"command": "npx",
"args": ["-y", "@kimtaeyoon83/mcp-server-youtube-transcript"]
}
}
}
Para habilitar la herramienta opcional analyze_video, agrega tu clave API de TwelveLabs:
{
"mcpServers": {
"youtube-transcript": {
"command": "npx",
"args": ["-y", "@kimtaeyoon83/mcp-server-youtube-transcript"],
"env": {
"TWELVELABS_API_KEY": "your-twelvelabs-api-key"
}
}
}
}
Instalar mediante herramienta
mcp-get Una herramienta de línea de comandos para instalar y gestionar servidores de Protocolo de Contexto de Modelo (MCP).
npx @michaellatman/mcp-get@latest install @kimtaeyoon83/mcp-server-youtube-transcript
Awesome-mcp-servers
awesome-mcp-servers Una lista curada de servidores de Protocolo de Contexto de Modelo (MCP) impresionantes.
Desarrollo
Requisitos previos
- Node.js 18 o superior
- npm o yarn
Configuración
Instalar dependencias:
npm install
Compilar el servidor:
npm run build
Para desarrollo con recompilación automática:
npm run watch
Pruebas
npm test
Depuración
Dado que los servidores MCP se comunican a través de stdio, la depuración puede ser desafiante. Recomendamos usar el Inspector MCP para el desarrollo:
npm run inspector
Ejecución de evaluaciones
El paquete de evaluaciones carga un cliente mcp que luego ejecuta el archivo index.ts, por lo que no es necesario recompilar entre pruebas. Puedes cargar variables de entorno prefijando el comando npx. La documentación completa se puede encontrar aquí.
OPENAI_API_KEY=your-key npx mcp-eval src/evals/evals.ts src/index.ts
Manejo de Errores
El servidor implementa un manejo robusto de errores para escenarios comunes:
- URLs o IDs de video inválidos
- Transcripciones no disponibles
- Problemas de disponibilidad de idiomas
- Errores de red
Ejemplos de Uso
- Obtener transcripción por URL de video:
await server.callTool("get_transcript", {
url: "https://www.youtube.com/watch?v=VIDEO_ID",
lang: "en"
});
- Obtener transcripción por ID de video:
await server.callTool("get_transcript", {
url: "VIDEO_ID",
lang: "ko"
});
- Obtener transcripción de YouTube Shorts:
await server.callTool("get_transcript", {
url: "https://www.youtube.com/shorts/VIDEO_ID"
});
- Obtener transcripción con marcas de tiempo:
await server.callTool("get_transcript", {
url: "VIDEO_ID",
include_timestamps: true
});
- Obtener transcripción sin filtrado de anuncios:
await server.callTool("get_transcript", {
url: "VIDEO_ID",
strip_ads: false
});
- Cómo Extraer Subtítulos de YouTube en la Aplicación de Claude Desktop
chat: https://youtu.be/ODaHJzOyVCQ?si=aXkJgso96Deri0aB Extract subtitles
Consideraciones de Seguridad
El servidor:
- Valida todos los parámetros de entrada
- Maneja los errores de la API de YouTube con elegancia
- Implementa tiempos de espera para la recuperación de transcripciones
- Proporciona mensajes de error detallados para la resolución de problemas
Licencia
Este servidor MCP está licenciado bajo la Licencia MIT. Consulta el archivo LICENSE para más detalles.
