AI Agent Claude n8n

The right match —
not just the next available slot.

Most booking systems match on availability alone, first come first served. This one matches on fit. A conversational agent gets to know the person booking, reasons over background and shared interests against a live pool of providers, and hands back a ranked shortlist with a real reason for each pick. Built here around teacher matching, but the matching engine has nothing to do with tutoring specifically.

Live
reasoning per match, not a static filter
Any
data source — Postgres, ClickUp, Sheets
1
webhook in, structured match out

Any business pairing customers with a specific person, not just an open seat, runs into this. A salon matching clients to stylists. A staffing agency matching candidates to shifts. A coaching business matching clients to consultants.

Usually it's a form and someone manually scanning a list, or no matching at all — whoever answers first. Either way, fit gets left to chance, and mismatches quietly cost repeat business.

"Fit gets decided by whoever answers the phone first, not by who's actually the right person for the job."

A short conversational onboarding collects who's booking, their background, and what they're into. That gets passed to an AI agent that pulls the live pool of providers, weighs subject fit, context fit, and genuine shared interests, and explains its reasoning in plain language for each match — not just a score.

Onboarding chat
n8n webhook
AI Agent reasoning
Structured JSON
Live booking link

Every field in the onboarding chat is validated before it's sent, no empty submissions, no guessing what the agent meant. Every match comes back with a real photo, a plain-language reason, and a live booking link, ready to render straight into the UI with no parsing required.

Claude n8n Structured output Validated form inputs Graceful fallback handling

This is the actual onboarding flow, running against a live sample data pool and a real agent. Try it as yourself, or on behalf of a child — the questions adapt either way.

Live demo · matching reasoned in real time, not pre-scripted

The engine doesn't know it's matching teachers. It knows how to weigh a person's needs against a pool of providers and explain the fit. The data source is interchangeable — a Postgres table, a ClickUp board, a live spreadsheet, whatever the business already runs on. Swap the source and the prompt's vocabulary, and the same build becomes:

Salons
Matching clients to the right stylist
Staffing
Matching candidates to open shifts
Services
Matching jobs to the right technician

Same reasoning pattern, different data source, different niche.