← Back to Advent of Code

Day 2 - Proof of concept of voice agent helping restaurants handle reservation booking

12/02/25

Update: I spent day 9 connecting this agent to a Twilio number I bought. Try it out at (669) 356-6407.

I wanted to try to build a tool-using voice agent for booking restaurant reservations and answering general inquiries (like questions about hours of operation). For the sake of getting up and running quickly, I settled on using Vapi, giving it access to a check_reservation tool deployed on Val Town. To simplify things and make sure that I got this done in a day, the check_reservation tool just checks whether or not the user's requested reservation matches against a hardcoded set of reservations.

Try it out below! Assume you're trying to book a table at Nobu in Palo Alto, CA. Here's the (made up) business hours of this Nobu as well as the already-booked reservation slots that I hardcoded, so it should refuse you if you try to book one of those slots with the same party size.

Hours of Operation:
Monday: 12:00 PM – 10:00 PM
Tuesday: 12:00 PM – 10:00 PM
Wednesday: 12:00 PM – 10:00 PM
Thursday: 12:00 PM – 11:00 PM
Friday: 12:00 PM – 11:30 PM
Saturday: 12:00 PM – 11:30 PM
Sunday: 12:00 PM – 9:30 PM

Already Booked Slots:
Friday, December 6th at 7:00 PM for 4 people
Saturday, December 7th at 8:00 PM for 2 people
Wednesday, December 11th at 6:30 PM for 6 people