n8n MCP Server

Automatiza flujos de trabajo con n8n, una potente herramienta de automatización de flujos de trabajo.

Documentación

n8n MCP Server

MCP n8n

Servidor MCP (Model Context Protocol) para la automatización de flujos de trabajo de n8n. Este servidor permite que asistentes de IA como Claude interactúen con instancias de n8n a través de la API REST.

Características

  • 🔄 Gestión de flujos de trabajo: Listar, crear, actualizar y eliminar flujos de trabajo
  • ▶️ Control de ejecuciones: Ejecutar flujos de trabajo y monitorear ejecuciones
  • 🏷️ Gestión de etiquetas: Organizar flujos de trabajo con etiquetas
  • 📊 Historial de ejecuciones: Acceder al historial y resultados de ejecuciones de flujos de trabajo
  • 🔑 Gestión de credenciales: Listar credenciales disponibles (solo lectura)
  • 🌐 Gestión de webhooks: Crear y gestionar webhooks
  • 🔍 Búsqueda: Buscar flujos de trabajo por nombre o etiquetas

Requisitos previos

  • Node.js 18 o superior
  • Instancia de n8n con acceso a la API habilitado
  • Clave de API de n8n

Instalación

Desde npm (cuando se publique)

npm install -g n8n-mcp-server

Desde el código fuente

git clone https://github.com/nikolausm/n8n-mcp-server.git
cd n8n-mcp-server
npm install
npm run build

Configuración

Obtener tu clave de API de n8n

  1. Inicia sesión en tu instancia de n8n
  2. Ve a Configuración → API
  3. Genera una clave de API

Configurar Claude Desktop

Agrega lo siguiente a tu configuración de Claude Desktop (claude_desktop_config.json):

{
  "mcpServers": {
    "n8n": {
      "command": "node",
      "args": ["/path/to/n8n-mcp-server/dist/index.js"],
      "env": {
        "N8N_URL": "https://your-n8n-instance.com",
        "N8N_API_KEY": "your-api-key-here"
      }
    }
  }
}

Para instancias en la nube de n8n, usa:

  • N8N_URL: https://your-subdomain.app.n8n.cloud

Herramientas disponibles

Gestión de flujos de trabajo

  • list_workflows - Listar todos los flujos de trabajo con filtrado opcional
  • get_workflow - Obtener información detallada sobre un flujo de trabajo específico
  • create_workflow - Crear un nuevo flujo de trabajo desde JSON
  • update_workflow - Actualizar un flujo de trabajo existente
  • delete_workflow - Eliminar un flujo de trabajo
  • activate_workflow - Activar un flujo de trabajo
  • deactivate_workflow - Desactivar un flujo de trabajo

Ejecución

  • execute_workflow - Ejecutar un flujo de trabajo con datos de entrada opcionales
  • get_executions - Obtener historial de ejecuciones con opciones de filtrado
  • get_execution - Obtener detalles de una ejecución específica
  • delete_execution - Eliminar una ejecución
  • retry_execution - Reintentar una ejecución fallida

Etiquetas

  • get_tags - Listar todas las etiquetas disponibles
  • create_tag - Crear una nueva etiqueta
  • update_tag - Actualizar una etiqueta
  • delete_tag - Eliminar una etiqueta

Otros

  • get_credentials - Listar credenciales disponibles (solo nombres)
  • search_workflows - Buscar flujos de trabajo por nombre o etiquetas
  • get_workflow_webhooks - Obtener URLs de webhooks para un flujo de trabajo

Ejemplos de uso

Listar todos los flujos de trabajo activos

Assistant: I'll list all your active n8n workflows.

[Uses list_workflows tool with active=true]

Ejecutar un flujo de trabajo

Assistant: I'll execute the workflow with the data you provided.

[Uses execute_workflow tool with workflowId and data]

Crear un nuevo flujo de trabajo

Assistant: I'll create a new workflow for you.

[Uses create_workflow tool with workflow JSON]

Desarrollo

Configuración

npm install

Compilación

npm run build

Probar localmente

N8N_URL=https://your-instance.com N8N_API_KEY=your-key npm start

Ejecutar pruebas

npm test

Notas de seguridad

  • Nunca comprometas tus claves de API
  • Usa variables de entorno para datos sensibles
  • El servidor MCP tiene los mismos permisos que tu clave de API
  • Considera usar una clave de API restringida si es posible

Contribuciones

¡Las contribuciones son bienvenidas! Por favor:

  1. Haz un fork del repositorio
  2. Crea una rama de características
  3. Realiza tus cambios
  4. Agrega pruebas si corresponde
  5. Envía una solicitud de extracción (pull request)

Licencia

MIT - consulta el archivo LICENSE

Soporte

Autor

Michael Nikolaus - GitHub