YouTube Toolbox
Un conjunto de herramientas para interactuar con YouTube, que incluye búsqueda de videos, extracción de transcripciones y recuperación de comentarios.
GitHub
19
Prueba este MCPPatrocinadoDocumentación
py-mcp-youtube-toolbox
Un servidor MCP que proporciona a los asistentes de IA herramientas potentes para interactuar con YouTube, incluyendo búsqueda de videos, extracción de transcripciones, recuperación de comentarios y más.
Descripción general
py-mcp-youtube-toolbox proporciona las siguientes funcionalidades relacionadas con YouTube:
- Buscar videos de YouTube con opciones de filtrado avanzadas
- Obtener información detallada sobre videos y canales
- Recuperar comentarios de videos con opciones de ordenamiento
- Extraer transcripciones y subtítulos de videos en múltiples idiomas
- Encontrar videos relacionados para un video dado
- Obtener videos en tendencia por región
- Generar resúmenes del contenido de videos basados en transcripciones
- Análisis avanzado de transcripciones con filtrado, búsqueda y capacidades multi-video
Tabla de contenidos
- Requisitos previos
- Instalación
- Configurar ajustes de MCP
- Documentación de herramientas
- Desarrollo
- Licencia
Requisitos previos
- Python: Instala Python 3.12 o superior
- Clave de API de YouTube:
- Ve a Google Cloud Console
- Crea un nuevo proyecto o selecciona uno existente
- Habilita la YouTube Data API v3:
- Ve a "APIs & Services" > "Library"
- Busca y habilita "YouTube Data API v3"
- Crea credenciales:
- Ve a "APIs & Services" > "Credentials"
- Haz clic en "Create Credentials" > "API key"
- Anota tu clave de API
Instalación
Clonar con Git
git clone https://github.com/jikime/py-mcp-youtube-toolbox.git
cd py-mcp-youtube-toolbox
Configuración
- Instala el gestor de paquetes UV:
curl -LsSf https://astral.sh/uv/install.sh | sh
- Crea y activa el entorno virtual:
uv venv -p 3.12
source .venv/bin/activate # On MacOS/Linux
# or
.venv\Scripts\activate # On Windows
- Instala las dependencias:
uv pip install -r requirements.txt
- Variables de entorno:
cp env.example .env
vi .env
# Update with your YouTube API key
YOUTUBE_API_KEY=your_youtube_api_key
Usando Docker
- Construye la imagen de Docker:
docker build -t py-mcp-youtube-toolbox .
- Ejecuta el contenedor:
docker run -e YOUTUBE_API_KEY=your_youtube_api_key py-mcp-youtube-toolbox
Usando Local
- Ejecuta el servidor:
mcp run server.py
- Ejecuta el MCP Inspector:
mcp dev server.py
Configurar ajustes de MCP
Agrega la configuración del servidor a tu archivo de ajustes de MCP:
Aplicación de escritorio de Claude
- Para instalar automáticamente a través de Smithery:
npx -y @smithery/cli install @jikime/py-mcp-youtube-toolbox --client claude
- Para instalar manualmente
abre
~/Library/Application Support/Claude/claude_desktop_config.json
Agrega esto al objeto mcpServers:
{
"mcpServers": {
"YouTube Toolbox": {
"command": "/path/to/bin/uv",
"args": [
"--directory",
"/path/to/py-mcp-youtube-toolbox",
"run",
"server.py"
],
"env": {
"YOUTUBE_API_KEY": "your_youtube_api_key"
}
}
}
}
Cursor IDE
abre ~/.cursor/mcp.json
Agrega esto al objeto mcpServers:
{
"mcpServers": {
"YouTube Toolbox": {
"command": "/path/to/bin/uv",
"args": [
"--directory",
"/path/to/py-mcp-youtube-toolbox",
"run",
"server.py"
],
"env": {
"YOUTUBE_API_KEY": "your_youtube_api_key"
}
}
}
}
para Docker
{
"mcpServers": {
"YouTube Toolbox": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e", "YOUTUBE_API_KEY=your_youtube_api_key",
"py-mcp-youtube-toolbox"
]
}
}
}
Documentación de herramientas
Herramientas de video
search_videos: Busca videos de YouTube con opciones de filtrado avanzadas (canal, duración, región, etc.)get_video_details: Obtén información detallada sobre un video específico de YouTube (título, canal, vistas, me gusta, etc.)get_video_comments: Recupera comentarios de un video de YouTube con opciones de ordenamientoget_related_videos: Encuentra videos relacionados con un video específico de YouTubeget_trending_videos: Obtén videos en tendencia en YouTube por región
Herramientas de canal
get_channel_details: Obtén información detallada sobre un canal de YouTube (nombre, suscriptores, vistas, etc.)
Herramientas de transcripción
get_video_transcript: Extrae transcripciones/subtítulos de videos de YouTube en idiomas especificadosget_video_enhanced_transcript: Extracción avanzada de transcripciones con filtrado, búsqueda y capacidades multi-video
Herramientas de prompt
transcript_summary: Genera resúmenes del contenido de videos de YouTube basados en transcripciones con opciones personalizables
Herramientas de recursos
youtube://available-youtube-tools: Obtén una lista de todas las herramientas disponibles de YouTubeyoutube://video/{video_id}: Obtén información detallada sobre un video específicoyoutube://channel/{channel_id}: Obtén información sobre un canal específicoyoutube://transcript/{video_id}?language={language}: Obtén la transcripción de un video específico
Desarrollo
Para pruebas locales, puedes usar el script de cliente incluido:
# Example: Search videos
uv run client.py search_videos query="MCP" max_results=5
# Example: Get video details
uv run client.py get_video_details video_id=zRgAEIoZEVQ
# Example: Get channel details
uv run client.py get_channel_details channel_id=UCRpOIr-NJpK9S483ge20Pgw
# Example: Get video comments
uv run client.py get_video_comments video_id=zRgAEIoZEVQ max_results=10 order=time
# Example: Get video transcript
uv run client.py get_video_transcript video_id=zRgAEIoZEVQ language=ko
# Example: Get related videos
uv run client.py get_related_videos video_id=zRgAEIoZEVQ max_results=5
# Example: Get trending videos
uv run client.py get_trending_videos region_code=ko max_results=10
# Example: Advanced transcript extraction
uv run client.py get_video_enhanced_transcript video_ids=zRgAEIoZEVQ language=ko format=timestamped include_metadata=true start_time=100 end_time=200 query=에이전트 case_sensitive=true segment_method=equal segment_count=2
# Example:
Licencia
Licencia MIT