Voice agents that answer your phone calls
Incident intake, support lines, bookings and call routing, including keypad (DTMF) flows.
See how our agents handle a call
Four agents from real projects. Choose one and watch the call move through the system, step by step.
Security officers report incidents by phone, across time zones. Every call has to end with a complete report the dispatch team can act on. Long calls were losing fields, and some reports arrived empty.
A first-line dispatcher and an incident agent on Retell, with n8n behind them. We later rebuilt the incident agent from a single prompt into a flow-based agent, tested on live calls with the previous agent kept as a rollback.
Incident intake Security services · USA
Click any block to see what happens thereSwipe the map, tap any blockAn officer calls the incident line, from any time zone.
The first-line dispatcher picks up. The caller is recognised by phone number, which makes the call shorter.
Press 1 for the incident agent, 2 for a person. A key pressed mid-sentence stops the agent and routes the call. Wrong key: a short reply, not a dead end. No key: the call continues by voice.
Sites and officers are described out loud. Fuzzy and phonetic matching runs during the call, across thousands of sites and employees. Confident match: fill in and confirm. Several candidates: read the options. No match: ask again.
The agent collects who, where and what: caller identity and employee ID, callback number, site, job number and address, supervisor and officers involved, incident category and risk level. Then it confirms the details with the caller.
A structured report is created with a strict schema at every level and a server-side fallback.
An email goes to dispatch and the record goes into the incident system.
The caller gets an SMS with the incident number.
Empty reports
The report function was not strictly validated, so long calls lost fields. We enforced a strict schema at every level and added a server-side fallback.
Skipped lookups
The model sometimes skipped the directory functions. We made those calls mandatory and top priority.
A 955-line prompt
One prompt grew until the model lost steps. We rebuilt it as a flow-based agent.
Bad data in
Duplicate job numbers caused phantom changes and single-line addresses broke the parser. We re-keyed the sync, rewrote the parser and added guards against empty payloads.
A European cloud phone company wanted an AI agent on its own support line first, to learn the technology before offering it to customers.
A front-line receptionist on Retell and n8n. It says up front that it is an AI, knows who is calling, answers from the Help Center, works with tickets and transfers to a person.
Support receptionist Cloud phone company · Europe
Click any block to see what happens thereSwipe the map, tap any blockThe agent answers on the company's own SIP trunk and says up front that it is an AI.
The number is looked up during the greeting. A known number gets no questions.
An unknown number asking about an account is verified with three factors: account ID, company and contact name, matched by spelling and by sound. Only the failed factor is asked again, three tries at most.
General questions are answered from 200+ Help Center articles, with no verification needed. If the answer is not covered, the agent says so and offers a person.
The agent reads the caller's open tickets, gives the status and the last update, adds an internal note, reopens a ticket or creates a new one.
The agent checks office hours, public holidays and daylight saving, then transfers to the daytime or after-hours line.
A filter that did nothing
The contacts API silently ignored phone filters. A nightly n8n sync of thousands of contacts brought lookups down to about a second.
Transfers that failed
Calls would not transfer. A full SIP URI and caller ID passthrough fixed it, proven on a live call.
Saved, before saving
The agent announced a save before the tool had run. Each result now has its own node and fixed wording.
Long silences
Tool calls left up to 13 seconds of silence. The agent now speaks during and after execution.
An Australian founder built an AI receptionist and booking platform for pet care facilities. The first test calls showed the agent was not ready for real customers.
We ran scripted test calls, analysed each recording for transcript and intonation, turned them into one prioritised defect list and fixed the agent. Then we took on the platform around it.
Booking receptionist Pet care facilities · Australia
Click any block to see what happens thereSwipe the map, tap any blockA customer calls the facility and the AI receptionist answers.
Returning customers are recognised on the call.
Pet details are read from the record, so the customer does not repeat them.
The booking request is captured, in honest words: it is a request, and the team confirms.
Every request reaches the dashboard, tagged by source.
The facility team confirms the booking.
Looped on goodbye
Call endings now close cleanly.
Said “all set” when the backend call failed
Honest wording now: a request, and the team confirms.
Did not recognise returning customers
Returning customers are recognised on the call.
Repeated the same phrases
Natural, less repetitive phrasing.
A US security services company hiring across many locations wanted new applicants contacted, pre-screened and booked for an interview without a recruiter doing each step by hand.
An AI recruiting agent on n8n. It writes to candidates by SMS and email, runs the pre-screen, offers interview slots and books the interview in the applicant CRM.
Recruiting agent Security services · USA · SMS and email
Click any block to see what happens thereSwipe the map, tap any blockA new applicant appears in the applicant CRM and the agent picks it up.
Only an email on file: email. Only a phone number: SMS. Both: SMS first, then email.
The agent asks the screening questions one by one and understands free-text answers.
It offers the slots that are open and books the interview.
Every message, screening result, stage and booked interview is written to the CRM, which stays the source of truth.
One channel at a time
A candidate is never written to on both channels at once.
The reply leads
Wherever the candidate replies, the conversation continues there.
Unsubscribe means stop
Unsubscribing from email also stops texts.
Undelivered email
An undelivered email continues by text.
What breaks on a real phone line, and how we handle it
A demo works in a quiet room. Real callers interrupt, go quiet, press the wrong key and say things nobody wrote in the script. Here is how we handle each of these.
The caller cuts in mid-sentence and the agent loses its place.
Interruptions are part of the flow, not an error. A key pressed mid-sentence stops the agent and routes the call, and we tune the flow on real recordings where callers cut in.
The agent goes quiet while it waits for your systems, and the caller thinks the line dropped.
The agent speaks during and after every tool call. Slow lookups move into a sync: a nightly n8n sync brought one contact lookup down to about a second.
Callers press a key mid-sentence, press the wrong key or press nothing at all.
Every case has an answer. A wrong key gets a short reply, not a dead end. No key means the call continues by voice.
The agent says "saved", but nothing reached your system.
Each result has its own step and fixed wording, so the agent never announces a save before it happens. Reports follow a strict schema with a server-side fallback, and every request reaches the dashboard.
Real callers say things nobody wrote in the script.
We run scripted test calls, analyse each recording for transcript and intonation and fix from one prioritised defect list. Changes go live on a parallel number, with the previous agent kept as a rollback.
Single prompt or flow-based
We build both, and we move an agent to a flow when it grows.
Single prompt
Faster to ship. The right choice for small agents.
Flow-based
More stable. The right choice for large agents. One of our receptionists went from 8 to 18 to 39 nodes as its scope grew.
What clients said
“production-ready n8n automations, Retell AI voice agents, custom API integrations”
“from a home built AI to an enterprise grade solution”
One team for the whole system
Stack
We build on Retell, Gemini Live or a custom stack with Claude, ElevenLabs and Twilio.
Everything around the agent
The voice agent, the automation, the website, the app and the integrations between them.
A small first step, checked on your data
A clear, limited scope
We start with a clear, limited scope and agree up front how we'll check the result.
A fixed-price first piece
A pilot, a first stage or one module. You pay half at the start and half after we check it on your data.
Your code
You own the code and IP when the project is completed.
NDA
We sign an NDA on request and share project details only with your approval.
Questions we hear
Incident intake, support lines, bookings and call routing, including keypad (DTMF) flows. Behind the agent, n8n workflows match callers against your records and write the result to your systems.
Retell, Gemini Live or a custom stack with Claude, ElevenLabs and Twilio.
Yes. The first step is a small, fixed-price piece: a pilot, a first stage or one module. You pay half at the start and half after we check it on your data.
You own the code and IP when the project is completed.
Yes. We sign an NDA on request and share project details only with your approval.
- Head/Development Office