Configuración de agente de soporte con Google Calendar e IA
Clase 11 de 16 • Curso de Workflows Profesionales con n8n
Resumen
Aprende, paso a paso, a crear un agente de soporte técnico que conecta con varias aplicaciones usando MCP Server y MCP Client. Verás cómo filtrar casos de IT con prioridad alta, enviar mensajes en paralelo, diseñar un prompt efectivo, pasar el contexto con JSON.stringify, y agendar eventos en Google Calendar con campos clave. Todo con pruebas rápidas, depuración y ajustes finos del flujo.
¿Cómo iniciar el flujo con MCP Server y MCP Client?
Para empezar, se construye un subflujo que notifica a distintos departamentos y se enfoca en la rama de IT con prioridad alta. La lógica se apoya en nodos como trigger, switch y filter, permitiendo rutas paralelas y condiciones precisas.
¿Qué datos de prueba usar con el trigger?
- Usa el trigger y pulsa en “Execute step”.
- Se genera un objeto JSON con campos vacíos: categoría, prioridad, usuario, mensaje, ejecución y fecha.
- Edita con el lápiz y rellena valores falsos para desarrollo.
- Escribe un mensaje de ejemplo: "No me funciona el mouse. ¿Qué debo de hacer?".
- Guarda para tener pin data y facilitar las pruebas.
¿Cómo filtrar por IT y prioridad alta?
- En switch, enruta a la rama IT.
- Mueve el nodo filter para que se aplique solo a IT y no bloquee otras acciones.
- Arrastra el campo prioridad al filter y ejecuta cuando sea “alto”.
- Mantén acciones paralelas: por ejemplo, que Slack se envíe siempre, aunque no sea alta la prioridad.
¿Cómo mantener Slack en paralelo?
- Desconecta el filter de la ruta principal si interfiere.
- Conecta la rama IT al filter como acción paralela.
- Así, Slack se envía siempre y el filtro solo controla la lógica crítica de IT.
¿Cómo diseñar el AI Agent y su prompt?
Se añade un AI Agent genérico con “Define Below” para controlar el comportamiento. El system message orquesta tareas encadenadas, y el user message pasa el contexto completo en texto.
¿Qué poner en el system message y user message?
- System message con objetivos claros:
- Agendar un evento en el calendario para ayudar al usuario.
- Enviar un correo con la fecha del evento.
- Buscar solución con “Serve API” en Google, según el mensaje del usuario.
- Formatear la respuesta en HTML.
- Responder en español.
- User message con contexto completo usando Expressions y el objeto de entrada.
Código recomendado para pasar todo el contexto del nodo anterior:
{{ JSON.stringify($json) }}
Ventajas: - Evita arrastrar campo por campo. - El agente lee todo el estado de entrada.
¿Cómo conectar OpenAI y Google Calendar?
- Selecciona tu proveedor (OpenAI) y credenciales.
- Añade la herramienta Google Calendar con credenciales válidas.
- Escribe una descripción clara de la herramienta para el agente: “Agendar una reunión con el usuario a partir de la fecha de hoy en adelante y añade un título descriptivo al evento.”
Consejos clave: - Elige el calendario correcto. - Deja que el agente rellene la fecha final si aplica. - Desactiva “use default reminders” si no los necesitas.
¿Qué campos configurar en el evento?
- Attendees: arrastra el email del usuario para invitarlo.
- Description: permite que el agente lo rellene.
- Summary: define que el agente cree un título corto y descriptivo (mejor da límites claros).
- Conference data: “Add conference” para generar enlace de Google Meet.
Nota sobre lenguaje del prompt: “corto” y “descriptivo” son vagos para una IA. Mejor especifica límites, por ejemplo, 40 caracteres para el título y pautas para el contenido.
¿Cómo depurar fechas y mejorar el resultado?
Durante la prueba se detectó la creación de dos eventos y rangos de fechas excesivos. La causa: el agente no conocía la fecha actual y el prompt no indicaba duración ni cuándo agendar.
¿Por qué se crearon dos eventos y con fechas erróneas?
- Falta de contexto temporal: el modelo no sabe “hoy”.
- Prompt ambiguo: sin duración ni ventanas claras.
- Resultado: eventos duplicados y rangos incoherentes.
¿Cómo corregir con date and time tool y un prompt específico?
- Añade la herramienta date and time tool para que el agente consulte el día actual.
- Reescribe el prompt con criterios precisos. Ejemplo usado:
“Agenda un evento en el calendario con el usuario para resolver su problema con una duración máxima de quince minutos lo antes posible.”
- Repite la prueba y valida en el calendario: título, descripción y horario correctos.
¿Qué buenas prácticas aplicar para estabilidad?
- Define tareas del system message en pasos concretos.
- Pasa el contexto completo con
JSON.stringify($json)
. - Especifica duración, ventana temporal y límites de formato.
- Usa logs del flujo para inspección rápida.
- Acepta la no determinación del modelo: el mismo prompt puede variar.
- Ajusta y vuelve a probar con datos anclados y credenciales validadas.
¿Te gustaría ver ejemplos de prompts más específicos para otros departamentos o prioridades? Comparte tu caso en comentarios y construimos mejoras juntos.