🔄 Configurazione n8n MCP Server
Guida completa per integrare n8n con AI4CALL: connetti il tuo assistente alla potente piattaforma di automazione workflow open-source tramite webhook
Vai in "MARKET" → "Marketplace Plugin" e clicca su Acquista di "n8n" → FREE
Vai in "MARKET" → "I Miei Plugin" e clicca su Configura di "n8n"
🚀 Navigazione rapida:
⚠️ Servizi di terze parti
Le integrazioni descritte fanno riferimento a servizi di terze parti.
Rate limit, modalità di autenticazione, configurazioni tecniche, costi e policy sono definiti esclusivamente dai rispettivi provider e possono variare nel tempo.
I costi dei servizi esterni sono sostenuti direttamente dall’utente finale a favore dei fornitori dei servizi stessi e non sono in alcun modo gestiti o intermediati dal nostro portale (es. Meta o altri fornitori per WhatsApp, Zapier, Calendly, ecc.).
Vantaggi:
- ✅ nessun limite di task/esecuzioni mensili
- ✅ controllo completo dati (privacy, GDPR)
- ✅ logica workflow complessa con JavaScript
- ✅ connessione diretta a database SQL
- ✅ costi prevedibili (solo server hosting)
- ✅ personalizzazione illimitata
Svantaggi:
- ⚠️ richiede setup server (Docker, cloud VM, o n8n.cloud)
- ⚠️ meno app pre-integrate vs Zapier (ma HTTP Request copre il 90%)
- ⚠️ curva apprendimento più ripida
Quando usare n8n: alto volume chiamate, logica complessa, controllo dati, budget limitato long-term
Quando usare Zapier: setup rapido, molte app pre-integrate, no gestione server
Cos'è n8n e come funziona l'integrazione
n8n (nodo a nodo) è una piattaforma di automazione workflow open-source che permette di connettere app e servizi tramite interfaccia visuale drag-and-drop.
→ ogni nodo = una operazione (leggi file, chiama API, invia email, query database)
Trigger:
→ timer (cron), webhook HTTP, monitoring file/database, eventi esterni
Nodi Action:
→ HTTP Request, Database Query, Email, Slack, Google Sheets, IF/Switch logic
Execution:
→ visibile in tempo reale con debugging dettagliato per ogni nodo
[Cliente chiama AI4CALL]
↓
[Assistente AI raccoglie dati]
↓
[AI formatta dati in JSON]
↓
[POST al webhook n8n]
↓
[Workflow n8n si attiva]
↓
[Nodi n8n elaborano dati]
↓
[Azioni eseguite (CRM, Email, DB, etc.)]
↓
[n8n restituisce response (opzionale)]
Differenza chiave vs Zapier: n8n ti dà controllo totale sulla logica del workflow - puoi scrivere JavaScript custom, fare query SQL dirette, implementare retry logic complessa, tutto visivamente debuggabile.
- ✅ setup immediato, nessuna gestione server
- ✅ piano gratuito disponibile (5.000 workflow executions/mese)
- ✅ URL webhook già configurato:
https://[instance].app.n8n.cloud/webhook/[path] - ⚠️ costi crescono con executions (simile a Zapier)
2. Self-hosted Docker (raccomandato):
- ✅ controllo completo, nessun limite executions
- ✅ costi fissi (solo server: $5-20/mese VPS)
- ✅ privacy totale dei dati
- ⚠️ richiede server Linux con Docker installato
3. Cloud providers (AWS, Azure, GCP):
- ✅ scalabilità enterprise
- ✅ alta affidabilità
- ⚠️ setup più complesso, costi variabili
Per iniziare: usa n8n.cloud piano gratuito. Per produzione: valuta self-hosted su VPS economico.
Crea workflow n8n con nodo Webhook
Per ricevere dati da AI4CALL, devi creare un workflow n8n che inizia con un nodo Webhook configurato correttamente.
- Accedi alla tua istanza n8n (n8n.cloud o self-hosted)
- Clicca "New workflow" (o "+" in alto)
- Nella palette nodi a sinistra, cerca "Webhook"
- Trascina il nodo "Webhook" nel canvas
- Clicca sul nodo Webhook per configurarlo:
- HTTP Method: seleziona
POST - Path: inserisci percorso custom (es.
ai4call-integration) - Authentication: scegli tipo (None, Basic Auth, Header Auth)
- Response Mode: "On last node" per response sincrona, "Webhook node" per immediata
- HTTP Method: seleziona
- n8n mostrerà l'URL webhook generato:
https://your-n8n-instance.com/webhook/ai4call-integration - Copia questo URL (lo userai in AI4CALL)
- Aggiungi nodi successivi al workflow per elaborare i dati ricevuti
- SALVA il workflow (Ctrl+S o Save button)
- ATTIVA il workflow (toggle ON in alto a destra)
- Webhook: riceve dati da AI4CALL (POST /webhook/ai4call)
→ payload: {nome, email, telefono, note} - Google Sheets: aggiungi riga al foglio
- Mappa campi:
{{$json.nome}}→ colonna Nome - Mappa campi:
{{$json.email}}→ colonna Email - etc.
- Mappa campi:
- Respond to Webhook: conferma successo
→ response: {"status": "success", "row_id": "..."}
Salva, attiva, e il workflow è pronto per ricevere dati da AI4CALL! 🎉
n8n genera DUE URL per ogni webhook:
Test URL:
https://.../webhook-test/...
- ❌ temporaneo - si disattiva dopo timeout
- ❌ solo per testing manuale in n8n
- ❌ NON usare per integrazioni persistenti
Production URL:
https://.../webhook/...
- ✅ permanente finché workflow è attivo
- ✅ usa questo per AI4CALL
- ✅ richiede workflow salvato e attivato (toggle ON)
Copia sempre il Production URL nel campo "URL Webhook" di AI4CALL!
Configura il webhook in AI4CALL
Inserisci l'URL webhook n8n nella configurazione AI4CALL per permettere all'assistente di inviare dati ai tuoi workflow.
- Seleziona "n8n" dall'elenco dei tuoi Plugin
- Nel campo "URL Webhook", incolla l'URL Production completo copiato da n8n
- Verifica che l'URL sia completo:
- Deve iniziare con
https:// - Deve contenere
/webhook/(NON/webhook-test/) - Deve includere il path configurato in n8n
- Deve iniziare con
- Procedi con configurazione autenticazione (vedi step successivo)
- Clicca "SALVA CONFIGURAZIONE"
https://[your-instance].app.n8n.cloud/webhook/[your-path]
Esempio: https://johndoe.app.n8n.cloud/webhook/ai4call-integration n8n self-hosted:
https://[your-domain-or-ip]/webhook/[your-path]
Esempio: https://n8n.mycompany.com/webhook/ai4call-integration o:
http://123.45.67.89:5678/webhook/ai4call-integration (se HTTP) ⚠️ Self-hosted: se usi HTTP (no HTTPS), assicurati che AI4CALL accetti connessioni non sicure, o meglio configura HTTPS con Let's Encrypt/Cloudflare.
Test con curl:
curl -X POST https://your-n8n-instance.com/webhook/ai4call-integration \
-H "Content-Type: application/json" \
-d '{"test": "data"}'
Risposta attesa: HTTP 200 OK con JSON response
Se ottieni errore:
- ❌ 404 Not Found → verifica URL e path webhook
- ❌ 401/403 Unauthorized → problema autenticazione
- ❌ Connection refused → workflow non attivo o server non raggiungibile
- ❌ Timeout → firewall blocca traffico o server n8n down
Configura autenticazione webhook
Proteggi il webhook n8n configurando il tipo di autenticazione appropriato sia in n8n che in AI4CALL.
- Quando usare: webhook pubblico, testing, demo
- Sicurezza: ❌ chiunque abbia l'URL può inviare dati
- Configurazione n8n: Authentication = None
- Configurazione AI4CALL: Tipo Autenticazione = "Nessuna Autenticazione"
2. Bearer Token
- Quando usare: autenticazione standard, API REST comuni
- Sicurezza: ✅ richiede token segreto nell'header Authorization
- Configurazione n8n: Authentication = Header Auth
→ Header Name:Authorization
→ Header Value:Bearer YOUR_SECRET_TOKEN - Configurazione AI4CALL: Tipo Autenticazione = "Bearer Token"
→ Token:YOUR_SECRET_TOKEN(senza "Bearer " prefix)
3. Header Auth (custom)
- Quando usare: autenticazione personalizzata, legacy API
- Sicurezza: ✅ header HTTP custom con valore segreto
- Configurazione n8n: Authentication = Header Auth
→ Header Name:X-API-Key(o nome custom)
→ Header Value:your-secret-api-key - Configurazione AI4CALL: Tipo Autenticazione = "Header Auth"
→ Header Name:X-API-Key
→ Header Value:your-secret-api-key
Step su n8n:
- Nel nodo Webhook, Authentication = Header Auth
- Header Name:
Authorization - Header Value:
Bearer sk_live_abc123xyz789(genera token casuale lungo) - Salva workflow
Step su AI4CALL:
- Tipo Autenticazione: seleziona "Bearer Token"
- Token: inserisci
sk_live_abc123xyz789(SENZA "Bearer " prefix) - Salva configurazione
AI4CALL invierà automaticamente:
Authorization: Bearer sk_live_abc123xyz789 Genera token casuali lunghi (32+ caratteri) con:
Metodo 1 - Online:
https://randomkeygen.com → 504-bit WPA Key
Metodo 2 - Linux/Mac:
openssl rand -hex 32
Metodo 3 - Node.js:
require('crypto').randomBytes(32).toString('hex')
Esempio token sicuro:
7f3a9b2c8d1e4f5g6h7i8j9k0l1m2n3o4p5q6r7s8t9u0v1w2x3y4z5 Conserva il token in modo sicuro (password manager) e NON committarlo in Git!
Istruisci l'assistente per usare n8n
Configura il prompt dell'assistente per utilizzare correttamente i webhook n8n nei workflow automatici.
"Quando il cliente fornisce nuovi dati contatto (email, telefono, indirizzo), aggiorna immediatamente il CRM usando webhook n8n. Invia: {customer_id, field_name, new_value, timestamp}. Workflow n8n aggiornerà HubSpot/Salesforce con validazione."
2. Ticket support automatico:
"Se il cliente segnala problema tecnico o richiesta assistenza, crea automaticamente ticket Jira/Zendesk via n8n. Invia: {customer_name, email, issue_type, description, priority}. Conferma al cliente il numero ticket ricevuto da n8n response."
3. Notifiche team real-time:
"Per lead qualificato o urgenza critica, invia notifica immediata a Slack/Teams via n8n. Usa webhook n8n dedicato per notifiche. Formato: {alert_type, customer_info, urgency_level, action_required}."
4. Sincronizzazione database:
"Dopo ogni appuntamento prenotato, sincronizza con database aziendale via n8n. Workflow n8n eseguirà query SQL INSERT/UPDATE. Gestisci errore se database non disponibile e informa cliente."
- Chiama l'assistente AI4CALL
- Attiva un workflow che dovrebbe invocare n8n (es. "aggiorna la mia email")
- L'assistente dovrebbe inviare dati al webhook n8n
- Su n8n, vai a Executions e verifica che il workflow si sia eseguito
- Controlla il payload ricevuto e l'output di ogni nodo
- Verifica sul sistema finale (CRM, DB, etc.) che i dati siano arrivati
Debugging:
- n8n Executions Log mostra payload ricevuto, output nodi, errori dettagliati
- Se workflow non si attiva: verifica URL, autenticazione, workflow ON
- Se workflow fallisce: controlla error message nel nodo rosso
- Usa nodo "Edit Fields" in n8n per debug transformation dati
🛠️ Sistema Webhook n8n
Specifiche tecniche su come l'assistente AI comunica con n8n tramite webhook HTTP POST e formato dati JSON.
Architettura comunicazione
L'assistente AI invia dati a n8n tramite richiesta HTTP POST con payload JSON e header di autenticazione.
POST https://your-n8n.com/webhook/ai4call-integration
Content-Type: application/json
Authorization: Bearer sk_live_abc123xyz789
{
"customer_name": "Mario Rossi",
"email": "mario.rossi@example.com",
"phone": "+393331234567",
"action": "update_contact",
"timestamp": "2025-01-03T14:30:00Z"
}
HTTP/1.1 200 OK
Content-Type: application/json
{
"status": "success",
"workflow_id": "wf_12345",
"execution_id": "exec_67890",
"result": {
"crm_updated": true,
"record_id": "contact_999"
}
}
Nota: la response dipende da come hai configurato il workflow n8n. Con nodo "Respond to Webhook" puoi customizzare completamente il JSON di risposta che l'assistente riceverà.
Esempi workflow n8n comuni
1. Webhook (riceve dati AI4CALL)
2. HubSpot node: Update Contact
- Email:
{{$json.email}} - Phone:
{{$json.phone}} - Last Updated:
{{$json.timestamp}}
1. Webhook (riceve dati AI4CALL)
2. IF node: verifica priority
3a. Priority HIGH: Jira Create Issue + Slack Alert
3b. Priority NORMAL: Jira Create Issue
4. Respond to Webhook: {"ticket_id": "PROJ-123"}
1. Webhook (riceve dati AI4CALL)
2. Postgres node: INSERT INTO calls
INSERT INTO calls (customer, phone, notes)
VALUES ('{{$json.name}}', '{{$json.phone}}', '{{$json.notes}}')
3. Respond to Webhook: {"inserted": true} 1. Webhook (riceve dati AI4CALL)
2. Function node: genera email HTML template
3. Send Email node (SMTP/Gmail)
- To:
{{$json.customer_email}} - Subject:
Conferma {{$json.request_type}} - Body: HTML template con merge fields
❓ Domande Frequenti
Risposte alle domande più comuni sull'integrazione n8n MCP Server
n8n è una piattaforma di automazione workflow open-source self-hosted, simile a Zapier ma con controllo completo sull'infrastruttura. A differenza di Zapier (cloud SaaS), n8n può essere installato sul tuo server, offrendo maggiore privacy, personalizzazione illimitata, nessun limite di task mensili e costi prevedibili. L'integrazione con AI4CALL funziona tramite webhook HTTP.
In n8n, crea un nuovo workflow, aggiungi un nodo "Webhook", configura il metodo HTTP (POST), imposta il path del webhook (es. /ai4call-webhook). n8n genererà automaticamente l'URL completo nel formato https://your-n8n-instance.com/webhook/ai4call-webhook. Se usi n8n.cloud, l'URL sarà https://[your-instance].app.n8n.cloud/webhook/[path].
Tre tipi: (1) Nessuna Autenticazione - webhook pubblico senza protezione, (2) Bearer Token - header Authorization: Bearer YOUR_TOKEN per autenticazione standard, (3) Header Auth - header HTTP personalizzato con nome e valore specifico per autenticazione custom. Scegli il tipo corrispondente alla configurazione del webhook n8n.
Entrambe le opzioni funzionano con AI4CALL. n8n.cloud è la versione hosted ufficiale (piano gratuito disponibile con limiti), ideale per iniziare rapidamente. n8n self-hosted richiede server proprio (Docker, npm, o cloud provider) ma offre controllo totale, nessun limite task, e costi fissi. L'integrazione webhook funziona identicamente in entrambi i casi.
Metodo 1: usa il "Test Webhook" integrato in n8n - attiva la modalità test nel nodo Webhook, invia una richiesta POST manuale con payload JSON di esempio usando Postman/curl. Metodo 2: configura l'URL in AI4CALL e fai una chiamata di prova all'assistente chiedendogli di inviare dati test. Verifica nell'Execution Log di n8n che il workflow si sia eseguito e controlla il payload ricevuto.
Sì. I webhook n8n in modalità "Test" sono temporanei e si disattivano dopo timeout. Per l'integrazione AI4CALL permanente, il workflow deve essere: (1) salvato e attivato (toggle ON in alto a destra), (2) il webhook impostato su "Production URL" non "Test URL". Altrimenti AI4CALL non potrà raggiungere il webhook dopo qualche minuto.
n8n ha error handling integrato: (1) aggiungi nodo "Error Trigger" nel workflow per catturare errori e gestirli (es. retry, notifica, logging), (2) configura webhook response per restituire errore HTTP 4xx/5xx che AI4CALL può interpretare, (3) usa Execution Log di n8n per debugging dettagliato, (4) imposta notifiche email/Slack automatiche in n8n per workflow failed.
n8n webhook: self-hosted, controllo completo logica workflow, nodi illimitati, execution visibile in tempo reale, debugging dettagliato, trasformazione dati avanzata con JavaScript, connessioni database dirette. Zapier webhook: cloud managed, più semplice da configurare, 6000+ app pre-integrate, nessuna gestione server, ma limitato a task mensili e costi variabili. n8n offre più flessibilità, Zapier più rapidità.
Non direttamente nel payload JSON. Per file: (1) carica il file su storage cloud (Google Drive, S3, etc.) usando altro tool MCP, (2) ottieni URL pubblico/temporaneo del file, (3) passa l'URL tramite webhook n8n, (4) nel workflow n8n usa nodo HTTP Request per scaricare il file dall'URL, (5) processa il file con nodi specifici (PDF, Excel, Image, etc.).
n8n Execution Log mostra tutte le esecuzioni in tempo reale: vedi payload ricevuto, output di ogni nodo, errori, durata. Accedi da menu Executions in n8n. Puoi filtrare per workflow, status (success/error/running), periodo temporale. Per monitoring avanzato: esporta execution data, integra con Prometheus/Grafana, configura alerting personalizzato via webhook n8n stesso.
Entrambe. Il nodo Webhook n8n può rispondere sincronamente: il workflow elabora i dati e restituisce una response HTTP immediata con payload JSON personalizzato. L'assistente AI4CALL può ricevere questa response e usarla nella conversazione (es. "Il sistema ha confermato l'ordine #12345"). Per processi lunghi, usa modalità asincrona: webhook risponde subito 200 OK, workflow continua in background.
Sì, usa "Header Auth" in AI4CALL. Configura un header HTTP personalizzato (es. X-API-Key: your-secret-key). Nel workflow n8n, aggiungi nodo "If" dopo Webhook per validare l'header: leggi $request.headers["x-api-key"], confronta con valore atteso, se non match restituisci 401 Unauthorized. Puoi anche implementare validation più complessa con JavaScript code node.
n8n ha nodi database integrati: PostgreSQL, MySQL, MongoDB, SQLite, MSSQL. Nel workflow dopo il Webhook: (1) aggiungi nodo database corrispondente, (2) configura connessione (host, port, user, password, database), (3) scrivi query SQL o usa query builder visuale, (4) usa dati dal webhook nel WHERE/VALUES: {{$json.customer_id}}, (5) restituisci risultati query nella response webhook se necessario.
Assolutamente. Esempio workflow: (1) Webhook riceve dati da AI4CALL, (2) nodo HTTP Request cerca cliente su CRM API, (3) nodo Switch valida se cliente esiste, (4a) se esiste: nodo MySQL update database, (4b) se non esiste: nodo HTTP POST crea cliente, (5) nodo Slack invia notifica, (6) nodo Email conferma. n8n eccelle nell'orchestrazione multi-step con branching condizionale.
n8n self-hosted non ha rate limit intrinseco (dipende da risorse server). Per gestire alto volume: (1) scala n8n orizzontalmente con queue mode + Redis, (2) usa nodo "Rate Limiter" personalizzato con code JavaScript, (3) implementa caching con Redis/database per ridurre carico downstream, (4) monitora CPU/memoria n8n e scala container/VM se necessario.
Sì, è una feature chiave. n8n Credentials gestisce centralmente API keys, OAuth tokens, database passwords in modo sicuro (encrypted). Nel workflow: (1) configura credenziali per servizio (es. Google, Slack, custom API), (2) nei nodi HTTP Request seleziona credenziale salvata invece di hardcodare token, (3) n8n inietta automaticamente header/auth corretto. Migliora sicurezza e manutenzione.
Verifica checklist: (1) workflow è attivato (toggle ON)? (2) webhook è Production non Test? (3) metodo HTTP corretto (POST)? (4) path webhook match esattamente? (5) controlla Execution Log per errori, (6) verifica firewall/network se self-hosted, (7) testa webhook manualmente con curl/Postman, (8) controlla n8n logs di sistema (Docker logs o PM2 logs se self-hosted).
Sì. Tuttavia nei flussi telefonici non è consigliato superare pochi secondi di esecuzione sincrona.
Usa:
- Webhook con risposta immediata (ack) verso il sistema telefonico
-Workflow asincroni (Execute Workflow, code, eventi) per elaborazioni lunghe
-Wait node solo per pause brevi e controllate
La chiamata non deve mai aspettare il workflow.
Non c'è import automatico diretto, ma puoi ricreare logica manualmente: (1) mappa Zapier triggers → n8n Webhook, (2) mappa Zapier actions → nodi n8n corrispondenti (es. Google Sheets Zapier action → Google Sheets n8n node), (3) trasforma filters Zapier → nodi If/Switch n8n, (4) multi-step Zaps → workflow n8n con nodi sequenziali. n8n è più flessibile ma richiede configurazione manuale iniziale.