Inspiration

AI can find hotels in Kyoto instantly. But ask whether a 70-year-old can reach the room without stairs, whether two rooms connect, or whether a restaurant can handle an allergy, and it often has no answer. That information isn't online. Someone has to call.

ConciergeOS turns that phone call into an AI workflow.

How We Built It

We built one end-to-end scenario: a family of five planning 10 days in Japan.

  1. Intake: Vapi turns the client's call into a structured trip profile.
  2. Research: Stay22 pulls live hotel inventory and pricing — verified live against real listings (a Gatlinburg test run returned real $270–$302 nightly rates, confirming we're hitting Stay22's actual API, not a fixture). Tavily does three jobs: experience search, per-property snippets that ground the fact ledger, and public-profile style signals for personalization.
  3. Gap Detection: We deterministically identify which required facts are missing, with zero LLM calls.
  4. Supplier Call: ElevenLabs' front-desk voice agent phones the property and asks only what's missing, in live testing, 2 facts came back stamped VERIFIED from a real call.
  5. Decision: Verified facts become a grounded recommendation and itinerary.

We also added optional flight pricing and public-persona enrichment.

What's Next

The supplier agent is designed for multilingual calls. With one language flag, an advisor could call a ryokan in Japanese. We scoped it, but kept the demo English-only.

What We Learned

The most useful information is sometimes knowing what you don't know.

Every fact has a source, and unresolved questions stay unresolved. For a $20,000 recommendation, "I don't know yet" is better than a confident guess.

Challenges

Two people, one workflow, and no time for auth, databases, or booking execution. We focused on proving:

request → research → gaps → supplier call → verified facts → decision

The hardest part was making the uncertainty real. The supplier's answers don't exist to the system until it actually asks, and we proved every stage of that against live data, not canned responses: real Stay22 rates, a real outbound call, real facts stamped VERIFIED in testing.

Search what the internet knows. Ask humans what it doesn't. Give the advisor the decision.

Built With

  • anthropic-claude
  • elevenlabs
  • elevenlabs-conversational-ai
  • fastapi
  • google-flights
  • pydantic
  • python
  • react
  • serpapi
  • stay22
  • tavily
  • typescript
  • vapi
  • vite
Share this project:

Updates