YouTube Vision

Interactúa con videos de YouTube usando la API de Google Gemini Vision.

Documentación

Servidor MCP de YouTube Vision (youtube-vision)

NPM version License: MIT smithery badge

Youtube Vision MCP

Servidor MCP (Model Context Protocol) que utiliza la API de Google Gemini Vision para interactuar con videos de YouTube. Permite a los usuarios obtener descripciones, resúmenes, respuestas a preguntas y extraer momentos clave de videos de YouTube.

Características

  • Analiza videos de YouTube utilizando la API de Gemini Vision.
  • Proporciona múltiples herramientas para diferentes interacciones:
    • Descripción general o preguntas y respuestas (ask_about_youtube_video)
    • Resumen (summarize_youtube_video)
    • Extracción de momentos clave (extract_key_moments)
  • Lista los modelos Gemini disponibles que admiten generateContent.
  • Modelo Gemini configurable mediante variable de entorno.
  • Se comunica a través de stdio (entrada/salida estándar).

Requisitos previos

Antes de usar este servidor, asegúrate de tener lo siguiente:

  • Node.js: Versión 18 o superior recomendada. Puedes descargarlo desde nodejs.org.
  • Clave de API de Google Gemini: Obtén tu clave de API desde Google AI Studio o Google Cloud Console.

Instalación y uso

Hay dos formas principales de usar este servidor:

Instalación mediante Smithery

Para instalar youtube-vision-mcp para Claude Desktop automáticamente a través de Smithery:

npx -y @smithery/cli install @minbang930/youtube-vision-mcp --client claude

Opción 1: Usar npx (Recomendado para uso rápido)

La forma más sencilla de ejecutar este servidor es usando npx, que descarga y ejecuta el paquete sin necesidad de una instalación permanente.

Puedes configurarlo dentro del archivo de configuración de tu cliente MCP (Claude, VSCode, etc.):

{
  "mcpServers": {
    "youtube-vision": {
      "command": "npx",
      "args": [
        "-y",
        "youtube-vision"
      ],
      "env": {
        "GEMINI_API_KEY": "YOUR_GEMINI_API_KEY",
        "GEMINI_MODEL_NAME": "gemini-2.0-flash"
      }
    }
  }
}

Reemplaza "YOUR_GEMINI_API_KEY" con tu clave real de API de Google Gemini.

Opción 2: Instalación manual (desde el código fuente)

Si deseas modificar el código o ejecutarlo directamente desde el código fuente:

  1. Clonar el repositorio:

    git clone https://github.com/minbang930/Youtube-Vision-MCP.git
    cd youtube-vision
    
  2. Instalar dependencias:

    npm install
    
  3. Compilar el proyecto:

    npm run build
    
  4. Configurar y ejecutar: Luego puedes ejecutar el código compilado usando node dist/index.js directamente (asegúrate de que GEMINI_API_KEY esté configurada como variable de entorno) o configurar tu cliente MCP para ejecutarlo usando el comando node y la ruta absoluta a dist/index.js, pasando la clave de API mediante la configuración env como se muestra en el ejemplo de npx.

Configuración

El servidor utiliza las siguientes variables de entorno:

  • GEMINI_API_KEY (Requerida): Tu clave de API de Google Gemini.
  • GEMINI_MODEL_NAME (Opcional): El modelo Gemini específico a usar (por ejemplo, gemini-1.5-flash). El valor predeterminado es gemini-2.0-flash. Importante: Para uso en producción o comercial, asegúrate de seleccionar una versión del modelo que no esté marcada como "Experimental" o "Vista previa".

Las variables de entorno deben configurarse en la sección env del archivo de configuración de tu cliente MCP (por ejemplo, mcp_settings.json).

Herramientas disponibles

1. ask_about_youtube_video

Responde una pregunta sobre el video o proporciona una descripción general si no se hace ninguna pregunta.

  • Entrada:
    • youtube_url (cadena, requerida): La URL del video de YouTube.
    • question (cadena, opcional): La pregunta específica sobre el video. Si se omite, se genera una descripción general.
  • Salida: Texto que contiene la respuesta o descripción.

2. summarize_youtube_video

Genera un resumen de un video de YouTube dado.

  • Entrada:
    • youtube_url (cadena, requerida): La URL del video de YouTube.
    • summary_length (cadena, opcional): Longitud deseada del resumen ('corto', 'medio', 'largo'). El valor predeterminado es 'medio'.
  • Salida: Texto que contiene el resumen del video.

3. extract_key_moments

Extrae momentos clave (marcas de tiempo y descripciones) de un video de YouTube dado.

  • Entrada:
    • youtube_url (cadena, requerida): La URL del video de YouTube.
    • number_of_moments (entero, opcional): Número de momentos clave a extraer. El valor predeterminado es 3.
  • Salida: Texto que describe los momentos clave con marcas de tiempo.

4. list_supported_models

Lista los modelos Gemini disponibles que admiten el método generateContent (obtenidos mediante API REST).

  • Entrada: Ninguna
  • Salida: Texto que lista los nombres de los modelos compatibles.

Notas importantes

  • Selección de modelo para producción: Al usar este servidor con fines de producción o comerciales, asegúrate de que el GEMINI_MODEL_NAME seleccionado sea una versión estable adecuada para uso en producción. Según los Términos de servicio de la API de Gemini, los modelos marcados como "Experimental" o "Vista previa" no están permitidos para implementación en producción.
  • Términos de servicio de la API: El uso de este servidor depende de la API de Google Gemini. Los usuarios son responsables de revisar y cumplir con los Términos de servicio de las APIs de Google y los Términos de servicio adicionales de la API de Gemini. Ten en cuenta que las políticas de uso de datos pueden diferir entre los niveles gratuitos y de pago de la API de Gemini. No envíes información sensible o confidencial al usar niveles gratuitos.
  • Responsabilidad del contenido: No se garantiza la precisión ni la idoneidad del contenido generado a través de la API de Gemini. Usa tu criterio antes de confiar o publicar contenido generado.

Licencia

Este proyecto está licenciado bajo la Licencia MIT. Consulta el archivo LICENSE para más detalles.