Support tickets pile up while you sleep, and hiring a night‑shift team isn’t cheap. You want an AI that can answer common questions, escalate the tricky ones, and keep your brand voice consistent. By the end of this article you’ll have a working prototype and know whether to build it yourself or grab the blueprint.
I’ve run this exact flow for three micro‑SaaS products and it’s saved me roughly fifteen hours a week of manual triage. The setup isn’t magic, but it’s repeatable once you know the moving parts.
What most guides get wrong
Most tutorials treat the AI like a magic black box and skip the plumbing. They show you a prompt that works in a chat playground, then assume it will survive real‑world traffic. In practice the model will hallucinate, ignore your escalation rules, or hit rate limits you never saw coming.
The missing piece is a deterministic layer that decides when to hand off to a human or pull a canned response. Without that layer you get either over‑aggressive bots that promise refunds they can’t deliver, or overly shy bots that never answer anything useful.
I learned this the hard way when a client’s bot started offering discounts on products that didn’t exist. The fix wasn’t a better prompt; it was a simple rule‑engine that checked the intent before letting the model speak.
One‑sentence paragraph: Never trust the model to enforce your business logic.
How I built a working agent with Make, Airtable, and Claude
First, I created an Airtable base called SupportKB with three tables: FAQ, Escalations, and Logs. The FAQ table holds question‑answer pairs; the Escalations table holds keywords that trigger a human hand‑off; the Logs table captures every interaction for later review.
Next, I built a Make scenario that runs whenever a new message arrives via a webhook from my website’s chat widget. The scenario does three things:
- Search the FAQ table for an exact match on the incoming text.
- If no match, check the Escalations table for any keyword; if found, send a Slack notification to the support team and log the event.
- If neither FAQ nor escalation hits, call the Claude API with a tightly scoped prompt that instructs the model to answer only from the knowledge base and to say “I don’t know” when unsure.
Here’s the exact prompt I use (note the backticks are part of the prompt string):
You are a helpful support agent. Answer the user's question using only the information in the knowledge base. If you do not know the answer, respond exactly with: I don’t know. Keep your tone friendly and brief.
Knowledge base: {{faq_content}}
User question: {{user_message}}
The {{faq_content}} variable is populated by the Make step that pulls the top three FAQ rows and concatenates their answer fields. This keeps the prompt under Claude’s token limit and reduces hallucination.
Cost breakdown: Airtable’s free tier handles up to 1,200 records, which is enough for a few hundred FAQ entries. Make’s free plan gives 1,000 operations a month; I upgraded to the $10/mo tier for 10,000 operations, which comfortably covers 500 chats a day. Claude’s API is $0.008 per 1,000 tokens; with an average of 400 tokens per call I spend about $0.003 per interaction, or roughly $9/mo for 3,000 chats.
I think the $10/mo Make plan is a fair price for the reliability it gives — honestly, the free tier felt too risky for production.
