Skip to main content
Glama
twelvelabs-mcp-server

twelvelabs-mcp-server

by micro-JAY

TwelveLabs MCP Server

Este proyecto no está afiliado con TwelveLabs (la plataforma de comprensión de video). Es un servidor MCP para la ElevenLabs Conversational AI API — agentes de voz, bases de conocimiento, conversaciones y TTS. El nombre "TwelveLabs" es solo el nombre en clave del proyecto.

Un servidor MCP (Model Context Protocol) mejorado que brinda a cualquier cliente MCP compatible acceso directo a la API Conversational AI de ElevenLabs, incluidas capacidades que el conector MCP oficial de ElevenLabs no expone.

Lo que cubre

  • Agentes -- listar, obtener configuración completa (incluido el modelo LLM y la temperatura), actualizar prompt/configuración, gestionar webhooks y subidas de archivos

  • Base de conocimiento -- listar, leer contenido completo, añadir documentos de texto/URL, eliminar documentos

  • Conversaciones -- filtrar y etiquetar historial, inspeccionar transcripciones y volver a ejecutar análisis/evaluaciones posteriores a la llamada

  • Voces -- listar y buscar voces disponibles

Related MCP server: elevenlabs-mcp-experiments

Requisitos previos

  • Node.js >= 18

  • Clave de API de ElevenLabs -- obtén una en elevenlabs.io

Inicio rápido

Opción A: npx (sin necesidad de clonar)

ELEVENLABS_API_KEY=your-key npx twelvelabs-mcp-server

Opción B: Clonar y compilar

git clone https://github.com/micro-JAY/twelvelabs-mcp-server.git
cd twelvelabs-mcp-server
npm install --include=dev
npm run build

Conectar un cliente MCP

Añade una entrada de servidor equivalente a la configuración de tu cliente MCP. La ubicación del archivo de configuración y la sintaxis circundante varían según el cliente; esta es la definición estándar de servidor stdio:

{
  "mcpServers": {
    "twelvelabs": {
      "command": "node",
      "args": ["/path/to/twelvelabs-mcp-server/dist/index.js"],
      "env": {
        "ELEVENLABS_API_KEY": "your-api-key-here"
      }
    }
  }
}

Úsalo

Pide a tu asistente habilitado para MCP que use las herramientas, por ejemplo:

"Lista mis agentes" "Obtén la configuración completa de agent_1001kjbh14xce5kbreh55ydf4rae" "Muéstrame las últimas 10 conversaciones de ese agente" "Obtén la transcripción y el análisis de conversation_xyz"

Compatibilidad

Este servidor funciona con clientes MCP que admiten el transporte stdio y te permiten configurar variables de entorno para un proceso de servidor local. Los clientes que solo admiten servidores MCP HTTP remotos necesitan un puente o proxy stdio compatible.

Referencia de herramientas

Herramientas de agente

Tool

Qué hace

twelvelabs_list_agents

Lista todos los agentes de tu cuenta

twelvelabs_get_agent

Configuración completa: modelo LLM, voz, documentos de KB, webhook, vista previa del prompt

twelvelabs_get_agent_prompt

Texto completo del prompt del sistema sin truncar

twelvelabs_update_agent_prompt

Reemplaza el prompt del sistema y/o el primer mensaje

twelvelabs_update_agent_settings

Cambia temperatura, voz, ajustes de TTS, idioma

twelvelabs_update_agent_conversation_capabilities

Habilita subidas de archivos en el chat y establece el mensaje de duración máxima

twelvelabs_list_agent_conversations

Conversaciones recientes de un agente

twelvelabs_get_agent_webhook

URL de webhook actual

twelvelabs_set_agent_webhook

Establece o elimina la URL del webhook

Herramientas de base de conocimiento

Tool

Qué hace

twelvelabs_list_kb_docs

Todos los documentos de KB con tamaño y fecha de creación

twelvelabs_get_kb_doc

Contenido de texto extraído completo de un documento

twelvelabs_add_kb_text

Añade un documento de texto plano

twelvelabs_add_kb_url

Añade una página web por URL

twelvelabs_delete_kb_doc

Elimina permanentemente un documento

Herramientas de conversación

Tool

Qué hace

twelvelabs_list_conversations

Filtra el historial por agente, tiempo, éxito, duración, calificación, estado y etiquetas

twelvelabs_get_conversation

Transcripción completa, metadatos de audio/etiquetas, recopilación de datos y resultados de evaluación

twelvelabs_rerun_conversation_analysis

Reanaliza una conversación completada usando la configuración actual del agente

twelvelabs_rerun_conversation_evaluation

Vuelve a ejecutar un único criterio de evaluación para una conversación completada

twelvelabs_list_conversation_tags

Lista las etiquetas de conversación del espacio de trabajo

twelvelabs_create_conversation_tag

Crea una etiqueta de conversación del espacio de trabajo

twelvelabs_update_conversation_tag

Renombra una etiqueta o cambia su descripción

twelvelabs_assign_conversation_tags

Aplica una o más etiquetas a una conversación

twelvelabs_remove_conversation_tag

Elimina una etiqueta de una conversación

twelvelabs_delete_conversation_tag

Elimina permanentemente una etiqueta de conversación del espacio de trabajo

Herramientas de voz

Tool

Qué hace

twelvelabs_list_voices

Explora las voces disponibles con IDs y etiquetas

Seguridad

  • Validación de entrada -- todos los parámetros de las herramientas se validan con esquemas Zod antes de llegar a la API

  • Aplicación de HTTPS -- las URLs de webhook se validan para usar solo HTTPS

  • Protección contra path traversal -- los IDs de documentos y agentes se sanean para prevenir path traversal

  • Saneamiento de errores -- los errores internos se capturan y se devuelven como respuestas de error MCP seguras; los stack traces sin procesar nunca se exponen al cliente

Desarrollo

npm run dev   # watch mode with tsx -- auto-reloads on file changes
npm run build # compile to dist/

Contribuciones

  1. Haz un fork del repositorio

  2. Crea una rama de características (git checkout -b feat/my-feature)

  3. Realiza tus cambios (git commit -m 'feat: add my feature')

  4. Sube la rama (git push origin feat/my-feature)

  5. Abre un Pull Request

Licencia

MIT -- consulta LICENSE para más detalles.

Nota de arquitectura

Todas las herramientas comparten una única instancia del cliente Axios (src/client.ts) inicializada desde ELEVENLABS_API_KEY al inicio. Las implementaciones de las herramientas viven en src/tools/ -- un archivo por dominio -- y se registran en el McpServer en src/index.ts. El servidor se comunica a través del transporte stdio (stdin/stdout), por lo que todo el registro de depuración usa console.error (stderr), no console.log.

Related MCP Connectors

Related MCP Servers