Apps, MCP, APIs, CLI y n8n
Apps, MCP, APIs, CLI y n8n
Objetivos
- Conectar apps del catálogo y gestionar sus cuentas.
- Entender por dónde pasan las peticiones a esas apps.
- Conectar un servicio que no está en el catálogo mediante un servidor MCP, una API HTTP o una CLI.
- Conectar tu instancia de n8n y pedir workflows en lenguaje natural.
Tres caminos hacia un servicio
flowchart TD
Nod["Nod planifica una acción"] --> TC{"Trust check"}
TC -- "permitida" --> Srv["Servidor de Nod"]
TC -- "retenida" --> Tu["Tú apruebas"]
Tu -- "sí" --> Srv
Srv --> Comp["Servicio de conexión<br/>y Composio"]
Srv --> MCP["Servidores MCP<br/>Notion · Linear · n8n · otros"]
Srv --> Own["Rutas de acceso propias<br/>API HTTP · CLI"]
Comp --> Apps["Gmail · Calendar · Slack · Drive y más"]
| Camino | Para qué | Dónde se configura |
|---|---|---|
| Apps del catálogo | Gmail, Google Calendar, Drive, Sheets, Docs, Slack y muchas otras | Apps → Connect |
| Servidores MCP | Notion, Linear, n8n y cualquier servidor MCP HTTPS público | Apps → Connect o Connect MCP |
| Rutas de acceso propias | Una API HTTP o una CLI fuera del catálogo | Pidiéndoselo a Nod en el chat |
Conectar apps del catálogo
- Abre Apps, busca la app y selecciona Connect. La búsqueda tolera erratas y abreviaturas, y Categories filtra los resultados.
- Inicia sesión en la pantalla de consentimiento de la app y elige a qué puede acceder Nod. La pantalla puede mostrar Composio en lugar de Nod.
- Vuelve a Nod cuando la app esté conectada. El diálogo de inicio se cierra cuando Nod confirma la conexión.
También puedes pedirlo en el chat. Nod busca en el mismo catálogo y, cuando hace falta una conexión nueva, te envía un enlace privado que aparece como botón de conexión. Los enlaces de inicio de sesión nunca pasan por Telegram ni WhatsApp: ahí Nod te pide que abras Nod, donde el botón espera en el chat.
Si el inicio de sesión falla:
| Situación | Qué seleccionar |
|---|---|
| El inicio falló o el enlace no está disponible | Try again, que abre una ventana nueva |
| Cerraste el navegador antes de terminar | Start again |
| El navegador confirma la conexión | Close page, o cierra la pestaña |
| El inicio falló en el navegador | Return to Nod para comprobar y reintentar |
Termina siempre en la ventana más reciente: un enlace reemplazado ya no puede completar el inicio.
Por dónde pasan los datos
Nod usa Composio para las apps del catálogo. Por defecto, las peticiones y los resultados pasan por el servicio de conexión alojado por n8n y por Composio. Una instalación desde código o un servidor pueden elegir otro servicio de conexión con NOD_COMPOSIO_PROXY_URL (capítulo 7).
Cada instalación firma sus peticiones con una identidad aleatoria propia. El servicio guarda solo la parte pública, tus cuentas conectadas, contadores de uso y el estado de las conexiones, de modo que conocer un ID de cuenta no da acceso.
Gestionar cuentas conectadas
- Las tarjetas conectadas en Apps muestran el número de cuentas junto al icono de personas. Al seleccionarlo puedes revisar las identidades, volver a conectarlas o desconectarlas.
- El icono ”+” conecta otra cuenta de la misma app.
- Reconnect inicia sesión de nuevo en una cuenta guardada. Sirve para aceptar otra vez el consentimiento tras un cambio de permisos.
- Sign-in unavailable significa que el proveedor no está configurado o no admite esa app en el servicio de conexión.
Desconectar quita el acceso de Nod a través de esa conexión. El acceso también se puede revisar o revocar en la configuración del proveedor.
Permisos y alcances
La pantalla de consentimiento de la app decide qué puede leer o cambiar Nod en tu cuenta. El operador del servicio de conexión elige los scopes que se piden por app: si falta uno en esa configuración, reconectar no basta.
Cuando una acción necesita un permiso que falta, Nod explica la acción bloqueada, conserva el trabajo preparado y compara las opciones de recuperación. Las demás acciones permitidas siguen disponibles.
Actualizaciones automáticas
Mientras está en marcha, Nod revisa Gmail en busca de correo nuevo. El servicio de conexión no recibe webhooks de las apps, así que Calendar, Slack y las demás no despiertan a Nod de forma inmediata; las consulta periódicamente (capítulo 10).
Notion y Linear
Notion y Linear se conectan a sus propios servidores MCP alojados, sin pasar por Composio.
- Abre Apps, selecciona Connect e inicia sesión.
- Si aparece una cuenta antigua Notion MCP que no puede leer páginas, vuelve a conectar Notion y, cuando la conexión nueva funcione, desconecta la antigua.
Nod puede usar todas las herramientas de estos servidores, así que puede leer y cambiar páginas, incidencias y proyectos. Cada cambio pasa por la misma comprobación que cualquier acción de app. Si el inicio de sesión caduca o se revoca, Apps muestra Sign-in required con Reconnect.
Conectar otro servidor MCP
- Abre Apps y selecciona Connect MCP.
- Escribe un nombre y la URL pública HTTPS del servidor.
- Elige inicio de sesión en el navegador, token de acceso o API key.
- Selecciona Continue para terminar la autenticación en el diálogo privado. Connection details muestra instrucciones adicionales.
Los tokens quedan fuera del chat. Para pedir ayuda con una herramienta, usa Ask Nod en la tarjeta Connect another tool, debajo del catálogo.
Una nota sobre validación: antes de la validación estructural local, Nod quita pattern y patternProperties de los esquemas de entrada de servidores MCP externos y relaja las reglas que dependían de esos patrones. El servidor MCP sigue siendo responsable de hacer cumplir su contrato completo.
Rutas de acceso propias: MCP, API y CLI
También puedes pedir a Nod que conecte un servicio que no aparece en el catálogo. Nod propone una ruta de acceso (access path) y te envía un enlace a una página privada donde pegas un token o inicias sesión. El modelo nunca ve el token.
| Ruta de acceso | Qué llama Nod | Cómo se autentica |
|---|---|---|
| Servidor MCP | Herramientas de un servidor MCP HTTPS público | Un token en una cabecera, o inicio de sesión OAuth |
| API HTTP | Un método y una ruta de la API | Un token en una cabecera |
| CLI | Un comando con argumentos | Tokens en variables de entorno |
Nod guarda el token cifrado en Vault y el servidor lo añade a cada llamada. En resultados y errores elimina el texto plano del token y sus representaciones codificadas.
Cómo se protege el token de una CLI
flowchart LR
Src["Origen declarado<br/>npm · PyPI · HTTPS"] --> Inst["Instalación sellada<br/>usuario Linux propio"]
Vault["Tokens en Vault"] --> Env["Variables de entorno<br/>de la ejecución"]
Env --> Inst
Files["Archivos del workspace"] -- "como argumentos" --> Inst
Inst -- "texto" --> Nod["Nod"]
- Una ruta de acceso de CLI declara de dónde se instala: un paquete npm, un paquete PyPI instalado con
pipx, o una descarga HTTPS consha256opcional. - Nombra las variables de entorno de las que la herramienta lee sus credenciales, por ejemplo
GITHUB_TOKEN, oAWS_ACCESS_KEY_IDyAWS_SECRET_ACCESS_KEY. - Cada nombre debe terminar en
TOKEN,KEY,SECRET,PASSWORD,_IDo_SID. Así no puede ser una variable que cargue código, comoLD_PRELOAD. - La página de configuración muestra el origen y un campo por variable, para revisarlos antes de pegar nada.
- Nod instala cada herramienta como un usuario de Linux propio, en una carpeta que solo ese usuario puede abrir. Ni el usuario del workspace ni otra herramienta pueden modificarla ni leer su token.
- Cada ejecución recibe un entorno construido desde cero. Un programa que el modelo escriba o reemplace en el workspace nunca recibe el token.
- Un comando se ejecuta hasta 59 minutos, salvo que Nod pida más tiempo.
Archivos en acciones de apps
| Límite | Valor |
|---|---|
| Tamaño por archivo adjunto a una acción de Composio | 15 MB |
| Total por acción | 90 MB |
| Archivo devuelto por una app | Hasta 90 MB |
| Imágenes que Nod ve de un resultado | Hasta cuatro, de 5 MB o menos |
Tu confirmación cubre exactamente los archivos que Nod te mostró. Si uno cambia o se borra antes de ejecutar la acción, no se envía nada y Nod vuelve a preguntar.
Qué comprueba el trust check en estas conexiones
El verificador ve los argumentos de cada llamada tal como Nod los envía: método, ruta y cuerpo; herramienta MCP y entrada; o argumentos de la CLI.
- Las lecturas y los borradores se ejecutan directamente.
- Cualquier otra acción solo se ejecuta si tus palabras la piden, o si lo permiten la instrucción de una programación, tu instrucción permanente o tus reglas. Si no, Nod pregunta antes.
- Una llamada a una ruta de acceso que no has guardado se rechaza antes de llegar a esa comprobación.
El trabajo en segundo plano redacta por defecto y hace más solo si tu instrucción permanente lo dice (capítulo 12).
Construir con n8n
Nod crea, prueba y modifica workflows y n8n Agents a través del servidor MCP de tu instancia de n8n.
Conectar n8n
- Abre Apps y selecciona Connect en n8n.
- Si n8n responde en
http://localhost:5678desde el servidor de Nod, la dirección ya aparece rellenada. Si no, escribe una dirección que ese servidor pueda alcanzar, comohttps://you.app.n8n.cloudolocalhost:5678. - Selecciona Connect n8n y aprueba a Nod en la página de consentimiento de n8n.
Para usar un token en lugar de iniciar sesión, abre Use an access token instead y pega el token que aparece en n8n en Settings → Instance-level MCP. Si n8n no responde, activa el acceso MCP en ese mismo lugar y reintenta.
Sobre la dirección:
- Puede estar en el equipo de Nod o en su red local, como un n8n autoalojado.
- Dentro de Docker,
localhostes el contenedor de Nod. - Solo puede ser local una dirección que escribes o confirmas tú, nunca una que proponga el modelo.
- Nod envía las peticiones y el token de esa conexión únicamente a esa dirección.
Qué pedir
Menciona n8n en el pedido, por ejemplo “build an n8n workflow that…”. Los seguimientos sobre un workflow que ya está en la conversación, como “Publish it”, también cuentan. Sin n8n en el pedido, Nod usa sus propias tareas y programaciones.
| Lo que dices | Lo que hace Nod |
|---|---|
| ”Every weekday at 8, post Berlin’s weather to Slack if rain is expected” | Construye el workflow, prueba ambos caminos y lo deja como borrador |
| ”Why did my invoice workflow fail last night?” | Lee la ejecución fallida, encuentra el paso que la causó y lo corrige |
| ”Add a Telegram alert to my order workflow” | Cambia el workflow existente y prueba el camino nuevo |
| ”Export last month’s form answers to a sheet, once” | Construye un workflow de una sola vez y, cuando dices que sí, lo ejecuta y te cuenta qué cambió |
| ”Make me a support assistant that answers from our help center” | Construye un n8n Agent con las herramientas y el canal que nombres |
| ”Publish it” | Publica el workflow y te da su dirección |
Nod pregunta primero solo cuando una elección cambia lo que construye, como el destino del resultado. No pide IDs ni nombres de credenciales: usa lo que dijiste y deja el resto para la configuración en n8n.
Cómo construye y prueba
sequenceDiagram
actor Tu as Tú
participant Nod
participant WS as Workspace
participant N8N as Tu n8n
Tu->>Nod: build an n8n workflow that…
Nod->>N8N: Lee las definiciones de nodos
Nod->>WS: Escribe el workflow como código
Nod->>N8N: Lo comprueba y lo crea como borrador
Nod->>N8N: Lo prueba con datos de muestra
N8N-->>Nod: Resultado de cada camino
Nod-->>Tu: Lienzo del workflow, caminos probados y pendientes
Tu->>Nod: Publish it
Nod->>N8N: Publica el workflow
- Nod sigue la guía de n8n para sus herramientas MCP y lee las definiciones de nodos de tu instancia.
- Escribe el workflow como código en su workspace, lo comprueba con n8n y lo crea en tu instancia.
- Lo prueba con datos de muestra. n8n reemplaza por esos datos los pasos que llaman a otro servicio, como Slack o una petición HTTP, y ejecuta el resto. Nod comprueba lo que habría enviado cada paso reemplazado.
- La respuesta muestra el workflow como un lienzo que se abre en el panel lateral, con Open in n8n para ir al editor. En Telegram, que no puede mostrar el lienzo, Nod envía una imagen.
- Nod dice qué caminos probó y cuáles no, y qué te queda por hacer, como añadir credenciales.
Antes de que corra de verdad
- Un workflow construido es un borrador hasta que le pides a Nod que lo publique.
- Nod nunca crea ni lee credenciales: n8n te las pide durante la configuración.
- Cada acción en n8n pasa por el trust check, así que Nod pregunta antes de cualquier cosa que no pediste, como una ejecución real.
Actividad
- Conecta una app del catálogo desde Apps y revisa su pantalla de consentimiento.
- Abre la tarjeta de la app conectada y localiza Reconnect y la opción de desconectar.
- Si usas n8n, conéctalo y pide: “build an n8n workflow that sends me a Telegram message every weekday at 9”.
- Abre el lienzo del resultado y anota qué caminos dice Nod que probó.
- Pide “Publish it” solo cuando hayas añadido las credenciales en n8n.
Autoevaluación
1. ¿Por dónde pasan las peticiones a una app del catálogo?
Por el servicio de conexión configurado, que por defecto aloja n8n, y por Composio. Nod comprueba cada acción antes de que llegue a ese servicio.
2. ¿Cómo se conectan Notion, Linear y n8n?
Mediante sus propios servidores MCP, sin pasar por Composio.
3. ¿Qué restricción tienen los nombres de las variables de una CLI conectada?
Deben terminar en TOKEN, KEY, SECRET, PASSWORD, _ID o _SID, para que no puedan ser variables que carguen código.
4. ¿Qué pasa con los pasos que envían datos a otro servicio durante la prueba de un workflow de n8n?
n8n los reemplaza por datos de muestra y ejecuta el resto. Nod comprueba qué habría enviado cada uno de esos pasos.
5. ¿Cuándo deja de ser un borrador un workflow construido por Nod?
Cuando le pides a Nod que lo publique.
Lista de control
- Conecté al menos una app y revisé sus permisos.
- Sé distinguir una app de Composio de una conexión MCP.
- Sé que los tokens de rutas propias se guardan en Vault y no llegan al modelo.
- Sé mencionar n8n en el pedido para que Nod construya un workflow.
- Sé que Nod no crea ni lee credenciales de n8n.
Anterior: Referencia de configuración · Siguiente: Chat, archivos y voz