Drag
Clasifica, responde e informa sobre tu bandeja de entrada compartida de Gmail.
Documentación
Documentación de MCP
Servidor MCP
El servidor MCP de DragApp expone 47 herramientas en 12 categorías, lo que brinda a cualquier cliente de IA compatible con MCP acceso completo a tus tableros, correos electrónicos, tarjetas, contactos, base de conocimientos, análisis y automatizaciones.
Conéctate de dos maneras: pega la URL del endpoint alojado en la configuración de conectores de tu cliente de IA (la ruta más rápida, sin instalación), o ejecuta el servidor de código abierto localmente desde un archivo de configuración. Mismas herramientas, mismos permisos, de cualquier manera.
Construido sobre el estándar Model Context Protocol. Código abierto, con licencia MIT.
Conexión (endpoint alojado)
La forma más rápida de conectarse es el endpoint alojado. Tres pasos, unos dos minutos. Sin archivo de configuración, sin instalación local, sin reinicio.
- En la configuración de conectores de tu cliente de IA (en Claude: Configuración › Conectores › Agregar conector personalizado), pega esta URL y guarda:
https://app.dragapp.com/mcp - Haz clic en Conectar. Se abre una página de conexión de Drag en tu navegador y solicita tu clave de API de DragApp.
- Ingresa tu clave de API. Cópiala desde DragApp en Configuración › Integraciones, pégala en la página de conexión y envía. Drag verifica la clave y se la entrega a tu cliente como token de acceso. La conexión queda activa.
Para verificar, pide a tu cliente que "liste los tableros en mi DragApp". Solicita tu permiso la primera vez que usa cada herramienta, por lo que controlas exactamente lo que puede hacer.
La clave se ingresa una sola vez, solo 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.
Internamente, esto 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 HTTP Streamable de MCP, por lo que cualquier cliente que admita conectores MCP remotos puede conectarse.
Instalación (ruta local)
¿Prefieres ejecutar el servidor tú mismo, o usar un cliente basado en archivos de configuración como Cursor, Windsurf o Claude Code? El paquete npm sigue totalmente soportado. Ejecuta directamente con npx; no se necesita instalación:
npx -y @dragapp/mcp-server
O instala globalmente:
npm install -g @dragapp/mcp-server
Autenticación
Ambas rutas se autentican con tu clave de API de DragApp, y la conexión hereda tus permisos existentes de Drag de cualquier manera. 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 ruta local, el servidor lee la clave de la variable de entorno DRAG_API_KEY.
Obtén tu clave de API desde Configuración, luego Integraciones, dentro de Drag. Puedes revocarla allí en cualquier momento.
Tu clave de API otorga acceso completo a tu espacio de trabajo de DragApp. Mantenla en secreto y nunca la confirmes en el control de versiones.
Configuración del cliente
Agrega el siguiente JSON al archivo de configuración MCP de tu cliente de IA:
{
"mcpServers": {
"dragapp": {
"command": "npx",
"args": ["-y", "@dragapp/mcp-server"],
"env": {
"DRAG_API_KEY": "your-api-key"
}
}
}
}
Ubicaciones de archivos de configuración
| Cliente | Ruta 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 or .mcp.json |
Referencia de herramientas
47 herramientas en 12 categorías. Cada herramienta está automáticamente disponible para cualquier cliente MCP conectado.
Correo electrónico
8
| Herramienta | Descripción |
|---|---|
list_threads | Lista hilos de correo electrónico en una columna específica de un tablero |
get_thread | Obtiene un mensaje de correo electrónico individual con el cuerpo HTML completo |
reply_to_thread | Responde a un hilo de correo electrónico existente |
send_new_email | Envía un nuevo correo electrónico desde un tablero |
search_threads | Busca hilos en todos los tableros |
filter_threads | Filtra hilos por etiqueta, asignado o estado |
move_thread | Mueve un hilo a una columna diferente |
move_threads_bulk | Mueve varios hilos a la vez |
Tableros
5
| Herramienta | Descripción |
|---|---|
list_boards | Lista todos los tableros a los que el usuario autenticado tiene acceso |
get_board | Obtiene detalles de un tablero específico |
list_columns | Lista todas las columnas de un tablero |
list_board_members | Lista todos los miembros de un tablero |
list_teams | Lista todos los equipos del espacio de trabajo |
Tarjetas
6
| Herramienta | Descripción |
|---|---|
list_cards_in_column | Lista todas las tarjetas en una columna específica |
get_card | Obtiene detalles de una tarjeta específica |
create_card | Crea una nueva tarjeta en una columna |
update_card | Actualiza propiedades de la tarjeta (título, descripción, asignado, fecha de vencimiento) |
move_card | Mueve una tarjeta a una columna o posición diferente |
archive_card | Archiva una tarjeta |
Etiquetas
2
| Herramienta | Descripción |
|---|---|
list_tags | Lista todas las etiquetas del espacio de trabajo |
add_tag_to_card | Agrega una etiqueta a una tarjeta |
Tareas
1
| Herramienta | Descripción |
|---|---|
create_task | Crea una tarea (elemento de lista de verificación) en una tarjeta |
Contactos
3
| Herramienta | Descripción |
|---|---|
search_contacts | Busca contactos por nombre o dirección de correo electrónico |
get_contact_conversations | Obtiene todas las conversaciones con un contacto específico |
create_contact | Crea un nuevo contacto en el espacio de trabajo |
Base de conocimientos
5
| Herramienta | Descripción |
|---|---|
list_articles | Lista todos los artículos de la base de conocimientos |
get_article | Obtiene el contenido completo de un artículo de la base de conocimientos |
create_article | Crea un nuevo artículo de la base de conocimientos |
update_article | Actualiza un artículo existente de la base de conocimientos |
search_knowledge | Busca en la base de conocimientos por consulta |
Análisis
4
| Herramienta | Descripción |
|---|---|
get_response_times | Obtiene métricas de tiempo de respuesta para un tablero |
get_avg_response_time | Obtiene el tiempo de respuesta promedio en todos los tableros |
get_daily_activity | Obtiene métricas de actividad diaria (hilos creados, respondidos, resueltos) |
get_closed_activity | Obtiene métricas sobre hilos cerrados/resueltos |
Automatizaciones
3
| Herramienta | Descripción |
|---|---|
list_automations | Lista todas las automatizaciones configuradas en un tablero |
toggle_automation | Habilita o deshabilita una automatización específica |
toggle_ai_drafts | Habilita o deshabilita la generación de borradores con IA en un tablero |
4
| Herramienta | Descripción |
|---|---|
get_whatsapp_conversation | Obtiene 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 devuelto por list_threads / search_threads en un tablero de WhatsApp (el campo cardId\). |
list_whatsapp_templates | Lista las plantillas de mensajes de WhatsApp preaprobadas disponibles en un tablero de WhatsApp. Devuelve el nombre, idioma, estado, categoría, texto del cuerpo y cuántas variables {{n}} espera cada plantilla. Solo se pueden enviar plantillas APROBADAS. |
send_whatsapp_message | Envía un mensaje de WhatsApp de texto libre a una conversación existente. Nota: WhatsApp solo permite mensajes de texto libre dentro de la ventana de servicio al cliente de 24 horas; fuera de ella, usa send_whatsapp_template en su lugar. |
send_whatsapp_template | Envía un mensaje de plantilla de WhatsApp preaprobada a una conversación. Úsalo para contactar a un contacto fuera de la ventana de 24 horas. Llama a list_whatsapp_templates primero para obtener el nombre exacto de la plantilla y el idioma, y para ver cuántas variables {{n}} necesita. |
Ejemplos
Indicaciones en lenguaje natural y las herramientas que el cliente de IA llamará en segundo plano.
"Muéstrame correos electrónicos no leídos en el tablero de Soporte"
list_boards → list_columns → list_threads
El cliente de IA encuentra el tablero de Soporte, identifica la columna correcta y lista los hilos con sus asuntos, remitentes y marcas de tiempo.
"Responde al último correo electrónico de Sarah"
search_threads → get_thread → reply_to_thread
Busca en todos los tableros hilos de Sarah, recupera 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 análisis para devolver el tiempo de respuesta promedio con comparaciones de 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 todos los hilos relacionados con facturación a Sarah"
filter_threads → move_threads_bulk
Filtra los hilos por la etiqueta FACTURACIÓN y luego los mueve a la columna asignada de Sarah en bloque.
"Busca en nuestra base de conocimientos la política de reembolsos"
search_knowledge
Busca en la base de conocimientos y devuelve artículos coincidentes con extractos.
Desarrollo
Clona el repositorio y ejecuta localmente:
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 reconstrucción automática:
npm run dev
Enlaces
Repositorio de GitHub: código fuente, problemas, contribuciones
Paquete npm: @dragapp/mcp-server
Model Context Protocol: especificación de MCP
Documentación de la API REST: referencia de la API REST de DragApp
Licencia: MIT
¿Necesitas ayuda?
Centro de ayuda: guías y tutoriales
support@dragapp.com: soporte por correo electrónico
Problemas de GitHub: informes de errores y solicitudes de funciones