Case study · Portfolio build

AI Restaurant Concierge

Type
AI voice assistant with automated order, reservation and callback logging. It answers customer calls, responds from a restaurant knowledge base, and records requests in a log the owner can see.
My role
Designed and built the full assistant
Timeline
5 Days
Tools
Conversational AI, LLM, Knowledge base, Chat widget, MCP server. n8n, Vapi.
Illustration of the AI restaurant concierge assistant

The problem

In the brief, guests waited for answers about menus, opening hours and bookings whenever no staff member was free. The same handful of questions arrived all day, and every one of them pulled someone away from service. Typical questions per day: [20 calls/day].

The workflow

  1. Trigger: guest asks a question in the chat widget
  2. Step: LLM detects what the guest is asking
  3. Step: answer is pulled from the knowledge base
  4. Output: instant reply, with staff handoff when needed

[ADD SCREENSHOT OF THE CHAT WIDGET]

Open project files

Version 1 vs version 2

Version 1: [a voice agent with a general prompt and the menu pasted in]]. What broke in testing: [It treated reservations as open to everyone instead of groups of 5 or more with 24 hours’ notice and a N5,000 deposit]. Version 2 fix: [I added the reservation rules (groups of 5 or more, 24 hours’ notice, N5,000 deposit) as a fixed section of the knowledge base and made party size the first question the assistant asks. Parties under 5 are told walk-ins are welcome and no booking is logged. Eligible bookings get the deposit explained, a read-back of all details, and then a log entry. Requests inside the 24-hour window or changes to existing bookings are handed to staff for a callback. I retested with several phrasings to confirm the behaviour held].

Edge cases

  • Question outside the knowledge base → [The assistant doesn’t guess. It tells the caller someone will call them back, collects their name and number, and logs the request for staff. This is what the brief asks for.]
  • Same question asked many ways → [asking about opening hours as “what time do you close”, “are you open Sunday” and “do you open on holidays”, then checking each call gave the same correct answer from the knowledge base.]
  • Request only staff can handle → [Complaints, catering quotes (5 days’ notice, menu and pricing discussed by phone) and any change to an existing booking are handed to the team. The assistant says someone will call back, and the request is logged with the caller’s details.]

Result

In testing, a guest question was answered in seconds at any hour, and staff were only pulled in when a request truly needed them. The live business results to report; [tested across community live calls covering menu, hours, delivery, orders, reservations and callbacks].

Reflection

[-Add payment confirmation, so the assistant can share the GTBank transfer details and the log can mark delivery orders as paid before dispatch. -Add a WhatsApp channel, since the restaurant already takes orders there, so the same knowledge base serves calls and messages. -Add a daily summary for the owner of orders, reservations and callbacks, plus a list of unanswered questions to improve the knowledge base. -Add support for Pidgin and other languages, since callers may not all speak standard English. -Add real-time checks for the Friday Catfish Pepper Soup (it sells out) and for opening hours changed on Instagram.]