Skip to main content
Glama

Servidor MCP de YouTube a LinkedIn

Un servidor de Protocolo de Contexto de Modelo (MCP) que automatiza la generación de borradores de publicaciones de LinkedIn a partir de vídeos de YouTube. Este servidor proporciona borradores de contenido editables y de alta calidad basados en transcripciones de vídeos de YouTube.

Características

  • Extracción de transcripciones de YouTube : extraiga transcripciones de videos de YouTube mediante URL de videos

  • Resumen de transcripciones : genere resúmenes concisos de contenido de video utilizando OpenAI GPT

  • Generación de publicaciones en LinkedIn : crea borradores de publicaciones profesionales en LinkedIn con un tono y estilo personalizables.

  • Diseño de API modular : implementación limpia de FastAPI con puntos finales bien definidos

  • Implementación en contenedores : lista para implementarse en Smithery

Related MCP server: mcp-server-youtube-transcript

Instrucciones de configuración

Prerrequisitos

  • Python 3.8+

  • Docker (para implementación en contenedores)

  • Clave API de OpenAI

  • Clave API de datos de YouTube (opcional, pero recomendada para obtener mejores metadatos)

Desarrollo local

  1. Clonar el repositorio:

    git clone <repository-url> cd yt-to-linkedin
  2. Cree un entorno virtual e instale dependencias:

    python -m venv venv source venv/bin/activate # On Windows: venv\Scripts\activate pip install -r requirements.txt
  3. Crea un archivo .env en la raíz del proyecto con tus claves API:

    OPENAI_API_KEY=your_openai_api_key YOUTUBE_API_KEY=your_youtube_api_key
  4. Ejecute la aplicación:

    uvicorn app.main:app --reload
  5. Acceda a la documentación de la API en http://localhost:8000/docs

Implementación de Docker

  1. Construya la imagen de Docker:

    docker build -t yt-to-linkedin-mcp .
  2. Ejecute el contenedor:

    docker run -p 8000:8000 --env-file .env yt-to-linkedin-mcp

Despliegue de herrería

  1. Asegúrese de tener la CLI de Smithery instalada y configurada.

  2. Implementar en Smithery:

    smithery deploy

Puntos finales de API

1. Extracción de la transcripción

Punto final : /api/v1/transcript
Método : POST
Descripción : Extraer la transcripción de un vídeo de YouTube

Cuerpo de la solicitud :

{ "youtube_url": "https://www.youtube.com/watch?v=VIDEO_ID", "language": "en", "youtube_api_key": "your_youtube_api_key" // Optional, provide your own YouTube API key }

Respuesta :

{ "video_id": "VIDEO_ID", "video_title": "Video Title", "transcript": "Full transcript text...", "language": "en", "duration_seconds": 600, "channel_name": "Channel Name", "error": null }

2. Resumen de la transcripción

Punto final : /api/v1/summarize
Método : POST
Descripción : Generar un resumen a partir de una transcripción de video

Cuerpo de la solicitud :

{ "transcript": "Video transcript text...", "video_title": "Video Title", "tone": "professional", "audience": "general", "max_length": 250, "min_length": 150, "openai_api_key": "your_openai_api_key" // Optional, provide your own OpenAI API key }

Respuesta :

{ "summary": "Generated summary text...", "word_count": 200, "key_points": [ "Key point 1", "Key point 2", "Key point 3" ] }

3. Generación de publicaciones en LinkedIn

Punto final : /api/v1/generate-post
Método : POST
Descripción : Generar una publicación de LinkedIn a partir de un resumen de video

Cuerpo de la solicitud :

{ "summary": "Video summary text...", "video_title": "Video Title", "video_url": "https://www.youtube.com/watch?v=VIDEO_ID", "speaker_name": "Speaker Name", "hashtags": ["ai", "machinelearning"], "tone": "professional", "voice": "first_person", "audience": "technical", "include_call_to_action": true, "max_length": 1200, "openai_api_key": "your_openai_api_key" // Optional, provide your own OpenAI API key }

Respuesta :

{ "post_content": "Generated LinkedIn post content...", "character_count": 800, "estimated_read_time": "About 1 minute", "hashtags_used": ["#ai", "#machinelearning"] }

4. Formato de salida

Punto final : /api/v1/output
Método : POST
Descripción : Dar formato a la publicación de LinkedIn para su salida.

Cuerpo de la solicitud :

{ "post_content": "LinkedIn post content...", "format": "json" }

Respuesta :

{ "content": { "post_content": "LinkedIn post content...", "character_count": 800 }, "format": "json" }

Variables de entorno

Variable

Descripción

Requerido

CLAVE API DE OPENAI

Clave API de OpenAI para resumen y generación posterior

No (se puede proporcionar en las solicitudes)

CLAVE DE API DE YOUTUBE

Clave API de datos de YouTube para obtener metadatos de video

No (se puede proporcionar en las solicitudes)

PUERTO

Puerto donde ejecutar el servidor (predeterminado: 8000)

No

Nota : Si bien las variables de entorno para las claves API son opcionales (ya que se pueden proporcionar en cada solicitud), se recomienda configurarlas para el desarrollo y las pruebas locales. Al implementar en Smithery, los usuarios deberán proporcionar sus propias claves API en las solicitudes.

Licencia

Instituto Tecnológico de Massachusetts (MIT)

-
security - not tested
A
license - permissive license
-
quality - not tested

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/NvkAnirudh/YT-to-LinkedIn-MCP-Server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server