
En esta primera automatización del Laboratorio AF probamos cómo clasificar correos con IA y n8n. Conectamos una cuenta de correo mediante IMAP y utilizamos Gemini para distribuir mensajes de prueba entre cuatro salidas: Comercial, Soporte, Facturación y Otros.
Documentamos la configuración, las pruebas manuales y una ejecución automática al recibir correo. También explicamos las limitaciones observadas: el flujo clasifica dentro de n8n, pero no añade etiquetas ni mueve mensajes en el buzón.
1. Objetivo de la automatización
El objetivo fue comprobar si n8n podía recibir correos de prueba mediante IMAP, extraer su asunto y contenido y utilizar un modelo de IA para clasificarlos según su intención.
Definimos tres categorías y una salida adicional:
- Comercial: consultas sobre precios, presupuestos o contratación.
- Soporte: problemas técnicos o dificultades con un servicio que el remitente ya utiliza.
- Facturación: consultas sobre facturas, cobros, pagos o datos de facturación.
- Otros: mensajes sin una coincidencia clara con las categorías anteriores. En n8n, esta salida aparece como Other.
Limitamos la recepción a mensajes no leídos cuyo asunto contuviera AF-PRUEBA. Utilizamos textos ficticios para comprobar el funcionamiento.
2. Herramientas utilizadas para clasificar correos con IA
- n8n instalado en Windows mediante Docker Desktop: para conectar los pasos y ejecutar el flujo.
- Una cuenta de correo con acceso IMAP: para recibir los mensajes de prueba mediante una conexión cifrada.
- Gemini mediante API: para analizar el asunto y el cuerpo de cada correo. Utilizamos el modelo Gemini 3.5 Flash Lite, con una cuenta configurada en el nivel gratuito.
- Gmail como remitente: para enviar manualmente los correos ficticios a la cuenta conectada a n8n.
La conexión IMAP utilizó el puerto 993, con SSL/TLS y autenticación. Las credenciales se introdujeron en n8n y no se incluyen en este artículo.
El flujo dependía de que el ordenador, Docker Desktop y el contenedor de n8n estuvieran en funcionamiento.
3. Cómo configuramos el flujo
Organizamos la automatización en tres pasos y conectamos el modelo de IA al clasificador:
- Email Trigger (IMAP): recibe los mensajes de la bandeja de entrada que cumplen el filtro de prueba. Seleccionamos la acción Nothing para que este nodo no los marcara como leídos.
- Edit Fields: prepara dos campos, asunto y cuerpo, a partir de los datos recibidos.
- Text Classifier: analiza ambos campos y distribuye cada mensaje entre Comercial, Soporte, Facturación u Other.
Conectamos Google Gemini Chat Model a la entrada de modelo del clasificador. Configuramos las categorías con descripciones y desactivamos la clasificación múltiple para buscar una única categoría por mensaje.
El flujo termina en las salidas del clasificador: no incorporamos acciones para responder, reenviar, eliminar o mover correos.
4. Pruebas manuales de clasificación
Antes de activar la recepción automática, probamos el clasificador con cuatro mensajes ficticios introducidos manualmente.
| Mensaje de prueba | Categoría esperada | Resultado observado |
|---|---|---|
| Solicitud de presupuesto para una página web | Comercial | Comercial |
| Problema para acceder a una cuenta | Soporte | Soporte |
| Solicitud de corrección de datos de una factura | Facturación | Facturación |
| Mensaje de felicitación por un aniversario | Other | Other |
Los cuatro casos coincidieron con la categoría esperada. Esta muestra permitió comprobar el funcionamiento inicial, pero no demuestra que el clasificador acierte con cualquier correo.
También enviamos una solicitud de presupuesto al buzón conectado y ejecutamos manualmente los pasos del flujo. El mensaje llegó mediante IMAP y salió por Comercial.
5. Prueba de ejecución automática
Publicamos el flujo y enviamos desde Gmail un nuevo correo ficticio con el asunto «AF-PRUEBA · Problema de acceso». El mensaje describía un error al iniciar sesión en un servicio.
Sin pulsar Execute, apareció una nueva ejecución en n8n con estado Succeeded. Procesó dos mensajes:
- La solicitud de presupuesto anterior salió por Comercial.
- El nuevo problema de acceso salió por Soporte.
n8n mostró una duración de 960 ms para esa ejecución. Este dato corresponde al procesamiento registrado por la herramienta; no mide el tiempo total desde el envío del correo.
La prueba confirmó la recepción y clasificación automáticas del nuevo mensaje. También mostró que el correo anterior volvió a procesarse, por lo que esta configuración no garantiza evitar duplicados.
Al terminar, retiramos la publicación del flujo para detener las ejecuciones automáticas.
6. Dificultades y ajustes realizados
Durante la configuración encontramos varios problemas que obligaron a revisar el planteamiento:
- Conexión con Gmail: intentamos utilizar OAuth, pero apareció el error invalid_client. No completamos esa conexión y optamos por una cuenta con acceso IMAP.
- Modelo de Gemini: el modelo elegido inicialmente devolvió un error de disponibilidad. Lo sustituimos por Gemini 3.5 Flash Lite, con el que realizamos las pruebas posteriores.
- Extracción del asunto: una ruta incorrecta produjo el valor undefined. Revisamos los datos recibidos y utilizamos los campos subject para el asunto y textPlain para el cuerpo.
- Conexiones de prueba: antes de publicar, eliminamos el activador manual, los campos de ejemplo y el nodo de Gmail que había quedado sin utilizar.
Estos ajustes permitieron completar una prueba automática, aunque quedó pendiente resolver el reprocesamiento de mensajes anteriores.
7. Limitaciones y costes
Las pruebas utilizaron pocos mensajes ficticios y sencillos. No evaluamos correos ambiguos, conversaciones largas, archivos adjuntos ni mensajes en varios idiomas.
La clasificación se realiza dentro de n8n. No configuramos etiquetas, carpetas, respuestas automáticas ni cambios en el buzón. Tampoco implementamos un control de duplicados: en la ejecución automática volvió a procesarse un correo anterior.
Utilizamos Gemini con una cuenta configurada en el nivel gratuito. No medimos los tokens consumidos ni el coste por correo, por lo que no podemos calcular el coste de un uso continuado ni garantizar que cualquier volumen quede cubierto por ese nivel.
La instalación local requiere mantener el ordenador y n8n en funcionamiento. Para utilizarla de forma habitual, también quedaría pendiente comprobar la recuperación tras interrupciones y configurar avisos de error.
8. Qué hemos aprendido
Esta prueba muestra que podemos clasificar correos con IA y n8n combinando la recepción por IMAP con un modelo conectado mediante API.
Las cuatro pruebas manuales coincidieron con las categorías esperadas. Después comprobamos que la llegada de un correo podía iniciar el flujo automáticamente y que el mensaje de soporte salía por la categoría correspondiente.
También aprendimos que una ejecución correcta no resuelve todos los requisitos de una automatización habitual. Quedan pendientes el control de duplicados, las pruebas con mensajes más variados y la medición del consumo.
El resultado es un prototipo probado con correos ficticios, que sirve como base para seguir experimentando.
Preguntas frecuentes
¿Esta automatización organiza los correos en carpetas?
No. Clasifica los mensajes dentro de n8n, pero no los mueve ni añade etiquetas en el buzón.
¿Necesito conectar Gmail?
No. En esta prueba utilizamos una cuenta de correo con acceso IMAP. Gmail se utilizó únicamente para enviar los mensajes de prueba.
¿La automatización funciona con el ordenador apagado?
No en nuestra instalación local. El ordenador, Docker Desktop y el contenedor de n8n deben estar funcionando y tener conexión a Internet.
¿Puede procesar el mismo correo más de una vez?
Sí. En la prueba automática volvió a procesarse un mensaje anterior. No implementamos un control para evitar duplicados.
¿Clasifica correctamente cualquier mensaje?
No podemos garantizarlo. Los cuatro ejemplos manuales coincidieron con las categorías esperadas, pero no probamos suficientes casos para medir su precisión general.
¿Cuánto cuesta clasificar cada correo?
No lo medimos. Utilizamos una cuenta de Gemini configurada en el nivel gratuito, pero no registramos tokens ni calculamos el coste por mensaje.
¿El flujo sigue activo después de la prueba?
No. Retiramos su publicación al terminar para detener las ejecuciones automáticas y conservamos la configuración.
Fuentes oficiales
- Email Trigger (IMAP) de n8n: documentación del nodo de recepción de correos.
- docs.n8n.ioText Classifier de n8n: configuración de categorías y salida Other.
- docs.n8n.ioPrecios de la API de Gemini: condiciones del nivel gratuito y tarifas publicadas
También puedes aprender
Para profundizar en lo que hemos utilizado en esta automatización, puedes explorar estos contenidos:
- Academia de Agentes IA: conceptos y guías para comprender cómo funcionan los agentes y sus herramientas.
- Proyecto 3 · Crear un agente IA conectado a herramientas externas: pruebas de conexión con archivos locales mediante MCP.
- Proyecto 4 · Crear un agente IA para organizar tareas: planificación de actividades y comprobación de sus límites.
- Balance de los cuatro proyectos del Laboratorio AF: resultados, dificultades y aprendizajes de los proyectos realizados.
Ver todas las entradas del blog
⚠️ Aviso importante
Esta automatización es una prueba educativa con mensajes ficticios. Antes de conectarla a un buzón con correos reales, revisa los permisos, las condiciones del proveedor de IA y qué información se enviará a su API.
En esta configuración, el asunto y el cuerpo de los mensajes seleccionados se envían a Gemini para clasificarlos. No incluyas contraseñas ni información confidencial en las pruebas.
Una clasificación puede ser incorrecta. Cualquier acción posterior sobre los correos necesitaría controles adicionales y pruebas específicas.