Skip to content
How to Use n8n AI Agent Nodes to Auto-Reply to Customer Enquiries (Free Self-Hosted) featured image
How-to Guides

How to Use n8n AI Agent Nodes to Auto-Reply to Customer Enquiries (Free Self-Hosted)

Build a free self-hosted n8n AI Agent that reads inbound enquiries, checks your calendar, and sends a personalised reply in under a minute. Step-by-step UK trades walkthrough.

n8n AI agents automation customer service self-hosted LangChain WhatsApp lead response
Ettan Bazil
Written by
Ettan Bazil
Founder & CEO (Tech / PropTech)
About Ettan Early Life and Career Ettan Bazil began his professional journey as a gas engineer and plumber, gaining hands-on experience working directly with households, landlords and property managers. His early trade background shaped his understanding of real-world operational challenges, from emergency repairs to workforce shortages and inefficiencies in the maintenance sector. In 2016, he founded Elite Heating & Plumbing, growing it into a successful business employing multiple engineers and apprentices.
20 hrs ago 19 min read Comments

Quick answer

You build an n8n AI Agent node that watches a webhook, classifies the enquiry, checks Google Calendar for the next free slot, and sends a personalised reply by WhatsApp or email. Self-hosted on a £4 a month VPS, it costs nothing to run beyond the LLM tokens. Setup takes about ninety minutes if you follow the steps below. Once it is live, your business answers customers in under a minute, every time, even when you are halfway up a ladder.

n8n logon8n
OpenAI logoOpenAI
Google Calendar logoGoogle Calendar
WhatsApp logoWhatsApp
34%
of UK tradespeople have lost work from missed phone calls (Fix Radio, 2024)
100x
more likely to convert when contacted within 5 minutes vs 30 minutes
£4/mo
VPS cost for a production self-hosted n8n instance
3-5
leads a tradesperson loses per week to slow responses

Why a faster reply is the cheapest lead-gen you will ever do

Tradesperson reading a customer message on a phone in a van
An enquiry that gets answered in under a minute converts at roughly a hundred times the rate of one answered after thirty minutes.

The maths on lead response is brutal and well documented. Leads contacted within five minutes are roughly a hundred times more likely to convert than leads contacted after thirty minutes. By the four-hour mark, most of those people have already booked someone else.

A 2024 Fix Radio survey of 220 UK tradespeople found 34 percent had lost work because they could not pick up the phone, and 60 percent said they struggled to answer calls while on site. The average tradesperson loses three to five leads a week this way. At an average job value of £400 to £2,000, that adds up to a serious revenue hole.

I have been on the receiving end of this. When I ran Elite Heating and Plumbing, every missed call between 8am and 6pm was a coin toss. Sometimes they rang back. Mostly they did not. By the time we got back to them that evening, half had already booked someone else.

An n8n AI Agent fixes the problem without hiring an answering service or paying someone £600 a month to sit by a phone. The agent reads the enquiry, works out what the customer wants, checks your live calendar, and sends a personalised reply in under sixty seconds. The customer is held. You finish the job you are on. You ring them back when you have a free moment, already knowing what they want and when you can fit them in.

The economics make this a no-brainer. A £4 a month VPS plus £5 to £15 a month in OpenAI tokens gives you a system that recovers two or three jobs a month. At even £400 a job, that is a 50-to-1 return.

What you will need

Before you start, get these accounts and tools sorted. Most are free. Total cost to set up is under £20.

  • A VPS with at least 2GB RAM. Hetzner CX22 is £4.20 a month. DigitalOcean's $6 droplet works too.
  • A domain name pointed at the VPS. Use a cheap subdomain on a domain you already own.
  • An OpenAI API account with $10 of credit, or an Anthropic API account for Claude.
  • A Google account for Calendar integration.
  • A WhatsApp Business account if you want WhatsApp replies, or just a Gmail account if you are sticking to email.
  • About ninety minutes of uninterrupted time.
  • Basic command line confidence. If you can copy and paste a Docker command, you can do this.
Skill level: intermediate. No coding required, but you will be running a few Docker commands. If you have never touched a terminal before, set aside two and a half hours and follow each step exactly.

How the AI Agent node actually works

Abstract diagram of nodes connected on a workflow canvas
The AI Agent node sits at the centre, with the LLM, memory and tool nodes branching off it like spokes on a wheel.

n8n shipped its AI Agent nodes in 2024 and has been refining them ever since. The AI Agent node is built on LangChain, the open-source framework for tool-using language models. It is the orchestration layer that decides what to do with each enquiry.

Underneath the Agent node, you connect what n8n calls sub-nodes. Three matter for this workflow:

  1. Chat Model. The LLM that does the thinking. OpenAI GPT-5 Mini is the cheapest sensible choice. Claude 4.5 Haiku is the alternative if you prefer Anthropic.
  2. Memory. Holds the conversation context so the agent remembers what the customer said two messages ago. Postgres Chat Memory if you are running Postgres alongside n8n. Window Buffer Memory if you want something simpler.
  3. Tools. Functions the agent can call. For this workflow you want Google Calendar (check availability), Gmail or WhatsApp (send the reply), and optionally a Google Sheets or Notion node for logging the lead.

The Agent reads the incoming message, decides which tools to call in which order, and produces a final reply. It is not magic. It is a language model with the ability to call functions, wrapped in a workflow editor that lets you build the whole thing without writing any code.

I have built dozens of these flows for trades businesses through TrainAR. The pattern is always the same. The difference is the system prompt and the tools. Get those right and the agent does the rest.

Step 1: Install n8n on a VPS in fifteen minutes

Laptop showing a terminal window with green text on a workshop bench
A £4 Hetzner CX22 handles a small trades business workflow without breaking a sweat. Upgrade only when you outgrow it.

Spin up a fresh Ubuntu 24.04 VPS. Hetzner CX22 with 2 vCPU and 4GB RAM is the right sizing for any trades business doing fewer than a thousand enquiries a month.

SSH in and install Docker:

curl -fsSL https://get.docker.com | sh
sudo usermod -aG docker $USER
exit

Reconnect by SSH so the docker group permission takes effect. Now create a folder for n8n and pull the official image:

mkdir -p ~/n8n
cd ~/n8n
docker run -d --restart unless-stopped \
  --name n8n -p 5678:5678 \
  -e N8N_HOST=n8n.yourdomain.co.uk \
  -e WEBHOOK_URL=https://n8n.yourdomain.co.uk/ \
  -v ~/n8n:/home/node/.n8n \
  docker.n8n.io/n8nio/n8n

Point an A record from your subdomain to the VPS IP, then install Caddy as a reverse proxy with automatic SSL. Caddy handles the certificate for you in one config block:

n8n.yourdomain.co.uk {
  reverse_proxy localhost:5678
}

Restart Caddy, open the subdomain in your browser, and you should see the n8n setup wizard. Create your owner account and you are done with infrastructure.

Lock it down. n8n holds your API keys for OpenAI, Calendar and WhatsApp. Use a strong owner password, enable two-factor in n8n settings, and never expose port 5678 directly to the internet without Caddy or Nginx in front of it.

Step 2: Build the inbound webhook

Click "New workflow" and add a Webhook node as your trigger. Set the HTTP method to POST and give it a memorable path like customer-enquiry. Click "Listen for test event".

The webhook will give you a URL. That is what you point your contact form, your Facebook lead ad, or your WhatsApp Business webhook at. Different sources need different setup, but the principle is the same. Send a POST request with a JSON body containing at minimum:

{
  "customer_name": "Sarah Mills",
  "customer_phone": "07700900123",
  "message": "Hi, my boiler is making a clunking noise. Can someone come Tuesday?",
  "source": "website_form"
}

Trigger one test event from your form or send a manual POST with curl. n8n captures the structure and uses it to populate the rest of the workflow. This bit is important: get the test data flowing before you build anything else. Trying to wire up the agent without real test data is the fastest way to waste an evening.

Pro tip: if you are catching enquiries from multiple sources (web form, Facebook, Trustpilot, Checkatrade), point all of them at the same webhook and let the agent figure out where it came from. One workflow, all your inbound lead channels.

Step 3: Drop in the AI Agent node

Close-up of a workflow editor showing an AI agent node being configured
The system prompt is the single most important part of the build. Spend an hour on it. You will thank yourself later.

Add an AI Agent node after the Webhook. Choose the "Tools Agent" type. This is the variant that supports calling external tools, which is what you need for calendar checking.

For the Chat Model, add an OpenAI Chat Model sub-node and select gpt-5-mini. It costs roughly £0.0001 per enquiry and answers in under three seconds. If you prefer Anthropic, use claude-haiku-4-5 with similar pricing.

For Memory, add a Window Buffer Memory sub-node with a window size of 10. This lets the agent remember the last ten back-and-forth messages with each customer, which covers nearly every domestic enquiry.

Now the important bit, the system prompt. This is where you tell the agent who it is and what to do. Here is the version I use for plumbing and heating businesses:

You are the booking assistant for {company_name}, a {trade} business
covering {service_area}. Your job is to acknowledge enquiries quickly,
work out what the customer needs, and offer them the next sensible
appointment slot.

Rules:
- Always reply within sixty seconds of the enquiry.
- Be warm, professional, plain-speaking. No jargon.
- Classify the enquiry as: emergency, repair, install quote, service,
  or other. Tell the customer which it is.
- If it is an emergency (boiler off, water leak, no heating in winter),
  flag it as urgent and offer same-day or next-day slots.
- For non-urgent jobs, check the calendar with the get_availability tool
  and offer the next two free morning slots.
- Always finish by asking for the postcode if you do not already have it.
- If the customer asks a question you cannot answer (price, parts, technical),
  reply with: "I will pass that on to {owner_name} and they will be in
  touch personally."

Never invent prices. Never guess at parts. Never promise we can do a job
without checking first.

That last paragraph matters. Without it, the model will cheerfully quote made-up prices to customers. Be paranoid about what it is allowed to claim.

Step 4: Wire up Google Calendar as a tool

Underneath your AI Agent node, click the "Tools" connector and add a Google Calendar node. Choose the operation "Get Events" and give it a description the agent can read, like:

"Returns the next available 2-hour slots in the engineer's calendar over the next seven working days. Use this when the customer wants to book a non-emergency appointment."

The description is how the agent decides when to call the tool. Be specific. If your description is vague, the agent will either call it too often (eating tokens) or never call it at all (sending generic replies).

Authenticate with OAuth, point it at your business calendar, and set the time range to "next 7 days". You can add a second Google Calendar tool called "Book Appointment" that creates a new event with the customer's details if you want full automation, but most trades businesses I work with prefer to confirm bookings manually. The agent offers the slot, the customer accepts, you eyeball it and create the calendar event yourself.

Pro tip: create a separate Google Calendar called "Customer Booking Availability" and only put actually-bookable slots in it. The agent reads that calendar instead of your full diary. That way it never offers a slot when you are at the dentist or picking the kids up from school.

Step 5: Send the reply via WhatsApp or email

Phone showing a WhatsApp conversation with an automated reply
WhatsApp gives you a 70 percent open rate inside five minutes. Email is roughly 20 percent. Use WhatsApp where you can.

Add a Respond to Webhook node, then either a WhatsApp Business Cloud node or a Gmail node depending on where the enquiry came from. The WhatsApp route gets a 70 percent open rate inside five minutes. Email is closer to 20 percent.

If you are using WhatsApp Business Cloud, you will need to register a Meta business account, verify your number, and create a template message for the initial reply. Meta requires templates for any message sent outside a 24-hour customer service window. Once you have the template approved (usually two days), the agent fills in the dynamic fields.

For Gmail, no template approval is needed. Use the Send Message operation with the customer email as the recipient and the AI Agent output as the body.

Add a final node that logs every conversation to a Google Sheet. Five columns: timestamp, customer name, phone, classified intent, and full reply text. That gives you an audit trail, lets you spot patterns in enquiries, and gives you something to point at when a customer claims they never heard back.

Step 6: Test, debug and go live

Switch the workflow to "Active" and send three test enquiries through your contact form. One emergency (boiler off), one repair (tap dripping), one install quote (new bathroom). Watch how the agent classifies each one and what slots it offers.

If something is wrong, n8n shows you the exact step that failed and the error message. The two debug screens you will use most are the Execution log (shows the full trace of every node) and the AI Agent's own "Verbose" toggle (shows the model's reasoning, what tools it called, and why).

Run it for a week with live customer enquiries before you trust it. Set up an alert in n8n that pings your phone if any execution fails. The Slack node or a Twilio SMS node both work for this. Do not skip the alert. The day the workflow fails silently is the day you lose a £5,000 boiler install.

Never let the agent quote prices. Even with strict system prompts, LLMs occasionally hallucinate numbers. The reply template should say "I will get back to you with a price by the end of the day" rather than ever stating a figure. The agent's job is to hold the customer, not to close the sale.

Common mistakes that wreck this workflow

Mistake 1: Skimping on the system prompt. Most builds fail because the prompt is two paragraphs of vague instructions. Spend a proper hour on it. Test with twenty different enquiry types. Tighten it until the agent behaves correctly every time.
Mistake 2: No fallback for emergencies. If the agent classifies something as urgent, it should also send an SMS to your phone. Do not rely on the customer reading the auto-reply and waiting for you to ring back. People with no heating in January want a human.
Mistake 3: Forgetting WhatsApp template approval. Meta takes 24 to 48 hours to approve a new message template. Submit yours the day you start building, not the day you go live.
Mistake 4: Pointing the agent at your full calendar. The agent will happily offer a slot at 7am Sunday morning if it sees you are free. Use a dedicated "Availability" calendar with only the hours you actually want bookings.
Mistake 5: No logging. When a customer complains about the reply, you need the exact text the agent sent. Without a Google Sheet log, you are guessing.
Mistake 6: Treating it as set-and-forget. Review the log weekly for the first month. You will find awkward replies, missed intents, and tone problems. Tighten the prompt each time.

Real-world pattern: how this looks in practice

Here is what a real morning looks like once this is running properly. You are on a boiler swap in Hemel Hempstead. Phone is on silent. At 9:17am a website enquiry comes in.

Within forty seconds the customer gets a WhatsApp message: "Hi Sarah, thanks for getting in touch. Sounds like a service rather than a breakdown, which we can usually fit in within a week. I have got Tuesday morning between 9 and 11, or Thursday afternoon between 1 and 3. Which works better? Also, can you confirm your postcode?"

You finish the boiler swap at 11:30. You check the n8n Sheet log. Sarah has replied with Tuesday morning and her postcode. You ring her at lunchtime, confirm the appointment, and add it to your real calendar.

That is the difference between losing Sarah to a competitor and winning a £180 service that turns into a £400 boiler service plan next year. Multiply that by the three enquiries a week you were losing and you have just added £30,000 a year to your top line, for £15 a month in running costs.

Where to take this next: once the auto-reply flow is solid, the same n8n stack handles invoice automation, calendar sync, lead capture from multiple sources, and review chasing. See our guide on 7 n8n workflows that replace a full-time admin for the next steps.

What tradespeople are saying

Recommended videos

n8n Quick Start Tutorial: Build Your First AI Agent

n8n Quick Start Tutorial: Build Your First AI Agent

n8n (official channel)

n8n Tutorial for 2026: How To Build AI Agents for FREE

n8n Tutorial for 2026: How To Build AI Agents for FREE (step by step)

David Ondrej

Build Your First AI Agent with n8n's RAG System in 2026

Build Your First AI Agent with n8n's RAG System in 2026

TechBridgeByTasleem

n8n AI Agent Tutorial for Beginners 2026

n8n AI Agent Tutorial for Beginners 2026 - Step by Step

Metics Media

Master n8n AI Agents in 2 Hours

Master n8n AI Agents in 2 Hours: Beginner's Guide for 2026

Jono Catliff

Build an AI Agent System with n8n (Full Tutorial)

Build an AI Agent System with n8n (Full Tutorial)

Beau Carnes (freeCodeCamp)

Frequently asked questions

No. The whole build is visual. You will run about four Docker commands to install n8n, but you do not have to read or write any code beyond that. If you can copy and paste a terminal command, you can do this.

For a typical trades business handling 200 to 500 enquiries a month on GPT-5 Mini, expect £5 to £15 of OpenAI tokens. Each enquiry costs roughly £0.0001 to £0.0003. If you process thousands of enquiries a month, switch to Claude Haiku 4.5 or run a local model with Ollama. The infrastructure cost is the £4 a month VPS.

Cost and control. n8n Cloud's Pro plan is roughly £50 a month. A self-hosted instance on a £4 VPS handles the same workload. Same software, same features. You also own the data. For trades businesses worried about customer phone numbers and addresses sitting on someone else's servers, self-hosting is the cleaner answer.

It can, but it should not. Language models occasionally hallucinate numbers, and there is no quicker way to lose trust than quoting £80 for a job that turns out to need £400 of parts. Have the agent acknowledge the enquiry and promise a price by end of day. The closing happens human-to-human.

You are the data controller. When you self-host, the customer data flows through your VPS to OpenAI's API and back. Add a privacy notice to your contact form mentioning the AI assistant, set the OpenAI account to data retention off (a setting they offer free), and you are compliant. If you are nervous, use a UK-based VPS like Hetzner Helsinki or DigitalOcean London.

Not in this build. You can extend it with Twilio plus ElevenLabs to handle voice, but voice agents need a different setup, a more careful prompt, and a higher tolerance for the occasional weird reply. Start with text. Layer voice on once the text agent is solid. For more on AI customer service patterns, see our free AI customer service bot guide.

Set up a healthcheck. UptimeRobot is free and pings your n8n URL every five minutes. If it fails, you get a text. Also set up an error trigger inside n8n itself, which fires a Slack or SMS alert any time a workflow execution fails. Two minutes of setup, never wakes you up unless something is actually broken.

n8n has nodes for ServiceM8, Commusoft, Tradify, Jobber and most of the big platforms. Add an extra node at the end of the workflow that creates a new lead in your FSM with the customer name, classified intent and proposed slot. For an end-to-end example, see our walkthrough on AI quoting from job photos.

My verdict

This is the single highest-leverage automation a trades business can build in 2026.

Lead response time is the cheapest and most ignored lever in the trade. Most businesses lose more money to slow replies than they spend on advertising. An n8n AI Agent flips that around for £15 a month all in.

I would build this before I would build anything else. The quoting automation, the invoice pipeline, the calendar sync are all useful. But none of them recover lost leads. This one does, and the maths is hard to argue with: three recovered jobs a month at £400 each pays for the system five hundred times over.

Set aside a Saturday morning. Get it built. Run it for two weeks. Watch the missed-lead rate drop. Then come back and build the next workflow. The 2026 n8n stack for UK trades is the best self-hosted automation platform we have ever had, and the AI Agent node is what makes it click.

Share this article

Ready to Transform Your Business?

Turn every engineer into your best engineer and solve recruitment bottlenecks

Join the TrainAR Waitlist

Stay Updated

Get weekly insights delivered to your inbox.

Recommended Articles

comments powered by Disqus