Servidor MCP

El servidor MCP de DragApp ofrece 47 herramientas en 12 categorías, que dan a cualquier cliente de IA compatible con MCP acceso completo a tus tableros, correos, tarjetas, contactos, base de conocimientos, analíticas y automatizaciones.

Conéctate de dos formas: pega la URL del endpoint alojado en la configuración de conectores de tu cliente de IA (la vía más rápida, sin instalación), o ejecuta el servidor de código abierto localmente desde un archivo de configuración. Las mismas herramientas y los mismos permisos en ambos casos.

Construido sobre el estándar Model Context Protocol (MCP). Código abierto, con licencia MIT.


Conectar (endpoint alojado)

La forma más rápida de conectarte es el endpoint alojado. Tres pasos, unos dos minutos. Sin archivo de configuración, sin instalación local, sin reiniciar.

  1. Agrega el conector. En la configuración de conectores de tu cliente de IA (en Claude: Configuración › Conectores › Agregar conector personalizado), pega esta URL y guarda:
    URL del conector
    https://app.dragapp.com/mcp
  2. Haz clic en Conectar. Se abre una página de conexión de Drag en tu navegador y te pide tu clave de API de DragApp.
  3. Ingresa tu clave de API. Cópiala desde DragApp en Configuración › Integraciones, pégala en la página de conexión y envíala. Drag verifica la clave y se la entrega a tu cliente como su token de acceso. La conexión queda activa.

Para comprobarlo, pídele a tu cliente: “muestra los tableros de mi DragApp”. Te pedirá permiso la primera vez que use cada herramienta, así que controlas exactamente lo que puede hacer.

La clave se introduce una sola vez, únicamente en la página de conexión. Nunca aparece en una dirección web, y el servicio MCP no almacena nada en sus propios servidores.

Por dentro, es un flujo estándar de código de autorización OAuth 2.1 con PKCE y registro dinámico de clientes, servido a través del transporte Streamable HTTP de MCP, así que cualquier cliente compatible con conectores MCP remotos puede conectarse.


Instalación (vía local)

¿Prefieres ejecutar el servidor tú mismo o usas un cliente con archivo de configuración, como Cursor, Windsurf o Claude Code? El paquete npm sigue teniendo soporte completo. Ejecútalo directamente con npx, sin necesidad de instalar nada:

Terminal
npx -y @dragapp/mcp-server

O instálalo globalmente:

Terminal
npm install -g @dragapp/mcp-server

Autenticación

Ambas vías se autentican con tu clave de API de DragApp, y la conexión hereda tus permisos actuales de Drag en cualquier caso. En el endpoint alojado, ingresas la clave una vez en la página de conexión segura y se convierte en el token de acceso de tu cliente; el servicio MCP no almacena nada. En la vía local, el servidor lee la clave de la variable de entorno DRAG_API_KEY.

Obtén tu clave de API en Configuración › Integraciones, dentro de Drag. Puedes revocarla allí en cualquier momento.

Tu clave de API da acceso completo a tu espacio de trabajo de DragApp. Mantenla en secreto y nunca la incluyas en un commit del control de versiones.


Configuración del cliente

Agrega el siguiente JSON al archivo de configuración MCP de tu cliente de IA:

Configuración de MCP
{
  "mcpServers": {
    "dragapp": {
      "command": "npx",
      "args": ["-y", "@dragapp/mcp-server"],
      "env": {
        "DRAG_API_KEY": "your-api-key"
      }
    }
  }
}

Ubicaciones del archivo de configuración

ClienteRuta de configuración
Claude Desktop~/Library/Application Support/Claude/claude_desktop_config.json
Cursor.cursor/mcp.json
Windsurf~/.codeium/windsurf/mcp_config.json
Claude Code~/.claude.json o .mcp.json

Referencia de herramientas

47 herramientas en 12 categorías. Cada herramienta queda disponible automáticamente para cualquier cliente MCP conectado.

Correo electrónico

8
HerramientaDescripción
list_threadsLista los hilos de correo de una columna específica de un tablero
get_threadObtiene un solo mensaje de correo con el cuerpo HTML completo
reply_to_threadResponde a un hilo de correo existente
send_new_emailEnvía un nuevo correo desde un tablero
search_threadsBusca hilos en todos los tableros
filter_threadsFiltra conversaciones por etiqueta, responsable o estado
move_threadMueve una conversación a otra columna
move_threads_bulkMueve varias conversaciones a la vez

Tableros

5
HerramientaDescripción
list_boardsLista todos los tableros a los que tiene acceso el usuario autenticado
get_boardObtiene los detalles de un tablero específico
list_columnsLista todas las columnas de un tablero
list_board_membersLista todos los miembros de un tablero
list_teamsLista todos los equipos del espacio de trabajo

Tarjetas

6
HerramientaDescripción
list_cards_in_columnLista todas las tarjetas de una columna específica
get_cardObtiene los detalles de una tarjeta específica
create_cardCrea una tarjeta nueva en una columna
update_cardActualiza las propiedades de una tarjeta (título, descripción, responsable, fecha límite)
move_cardMueve una tarjeta a otra columna o posición
archive_cardArchiva una tarjeta

Etiquetas

4
HerramientaDescripción
list_labelsLista todas las etiquetas disponibles en un tablero
add_label_to_threadAgrega una etiqueta a una conversación de correo
remove_label_from_threadQuita una etiqueta de un hilo de correo
toggle_labelsMuestra u oculta etiquetas en un tablero

Comentarios

2
HerramientaDescripción
add_commentAgrega un comentario interno a una tarjeta o conversación
get_commentObtiene los detalles de un comentario específico

Etiquetas

2
HerramientaDescripción
list_tagsLista todas las etiquetas del espacio de trabajo
add_tag_to_cardAgrega una etiqueta a una tarjeta

Tareas

1
HerramientaDescripción
create_taskCrea una tarea (un elemento de una lista de verificación) en una tarjeta

Contactos

3
HerramientaDescripción
search_contactsBusca contactos por nombre o dirección de correo
get_contact_conversationsObtiene todas las conversaciones con un contacto específico
create_contactCrea un contacto nuevo en el espacio de trabajo

Base de conocimientos

5
HerramientaDescripción
list_articlesLista todos los artículos de la base de conocimientos
get_articleObtiene el contenido completo de un artículo de la base de conocimientos
create_articleCrea un artículo nuevo en la base de conocimientos
update_articleActualiza un artículo existente de la base de conocimientos
search_knowledgeBusca en la base de conocimientos por consulta

Analíticas

4
HerramientaDescripción
get_response_timesObtiene métricas de tiempo de respuesta de un tablero
get_avg_response_timeObtiene el tiempo de respuesta promedio entre tableros
get_daily_activityObtiene métricas de actividad diaria (conversaciones creadas, respondidas, resueltas)
get_closed_activityObtiene métricas de conversaciones cerradas/resueltas

Automatizaciones

3
HerramientaDescripción
list_automationsLista todas las automatizaciones configuradas en un tablero
toggle_automationActiva o desactiva una automatización específica
toggle_ai_draftsActiva o desactiva la generación de borradores con IA en un tablero

WhatsApp

4
HerramientaDescripción
get_whatsapp_conversationObtiene el historial completo de mensajes de una conversación de WhatsApp (tarjeta) en un tablero de WhatsApp. Devuelve los mensajes del chat en orden. Usa el cardId que devuelven list_threads / search_threads en un tablero de WhatsApp (el campo `cardId`).
list_whatsapp_templatesLista las plantillas de mensajes de WhatsApp aprobadas previamente que están disponibles en un tablero de WhatsApp. Devuelve el nombre, idioma, estado, categoría y texto del cuerpo de cada plantilla, y cuántas variables {{n}} espera. Solo se pueden enviar las plantillas APPROVED.
send_whatsapp_messageEnvía un mensaje de WhatsApp de texto libre en una conversación existente. Nota: WhatsApp solo permite mensajes de texto libre dentro de la ventana de atención al cliente de 24 horas; fuera de ella, usa send_whatsapp_template.
send_whatsapp_templateEnvía un mensaje de plantilla de WhatsApp preaprobada en una conversación. Úsalo para contactar a alguien fuera de la ventana de 24 horas. Llama primero a list_whatsapp_templates para obtener el nombre y el idioma exactos de la plantilla, y para ver cuántas variables {{n}} necesita.

Ejemplos

Prompts en lenguaje natural y las herramientas que el cliente de IA llamará entre bastidores.

“Muéstrame los correos no leídos del tablero Soporte”

list_boards → list_columns → list_threads

El cliente de IA encuentra el tablero Soporte, identifica la columna correcta y lista los hilos con sus asuntos, remitentes y marcas de tiempo.

“Responde al último correo de Valentina”

search_threads → get_thread → reply_to_thread

Busca en todos los tableros los hilos de Valentina, obtiene el mensaje completo y luego redacta y envía una respuesta.

“¿Cuál es nuestro tiempo de respuesta promedio esta semana?”

get_avg_response_time

Llama directamente a la herramienta de analíticas para devolver el tiempo de respuesta promedio con comparaciones entre períodos.

“Crea una tarjeta en el tablero Sprint con este informe de error”

list_boards → list_columns → create_card

Encuentra el tablero Sprint, identifica la columna correcta (por ejemplo, Backlog) y crea una tarjeta con los detalles del error.

“Asigna todas las conversaciones de facturación a Valentina”

filter_threads → move_threads_bulk

Filtra las conversaciones por la etiqueta FACTURACIÓN y luego las mueve en bloque a la columna asignada a Valentina.

“Busca en nuestra base de conocimientos la política de reembolsos”

search_knowledge

Busca en la base de conocimientos y devuelve los artículos que coinciden, con extractos.


Desarrollo

Clona el repositorio y ejecútalo localmente:

Terminal
git clone https://github.com/nick-timms/drag-mcp-server.git
cd drag-mcp-server
npm install
npm run build
DRAG_API_KEY=your-key node dist/index.js

Para desarrollo con recompilación automática:

Terminal
npm run dev

¿Necesitas ayuda?

Centro de ayuda: guías y tutoriales

support@dragapp.com: soporte por correo electrónico

Issues de GitHub: reportes de errores y solicitudes de funciones