By Sagar Shankaran, Founder of CallSphere
A technical guide to designing a multi-agent hotel PMS from scratch — agent boundaries, tool design, handoff patterns, and PMS integration.
Key takeaways
Building an agentic hotel PMS requires careful agent decomposition, tool design, handoff logic, and PMS integration. Here is the architecture blueprint, drawn from CallSphere's production 11-agent stack.
A monolithic "super agent" trying to handle every hotel workflow fails in production. Problems:
flowchart LR
CALLER(["Guest or Prospect"])
subgraph TEL["Telephony"]
SIP["Twilio SIP and PSTN"]
end
subgraph BRAIN["Hotel Concierge AI Agent"]
STT["Streaming STT<br/>Deepgram or Whisper"]
NLU{"Intent and<br/>Entity Extraction"}
TOOLS["Tool Calls"]
TTS["Streaming TTS<br/>ElevenLabs or Rime"]
end
subgraph DATA["Live Data Plane"]
CRM[("CRM and Notes")]
CAL[("Calendar and<br/>Schedule")]
KB[("Knowledge Base<br/>and Policies")]
end
subgraph OUT["Outcomes"]
O1(["Reservation confirmed"])
O2(["Room service order"])
O3(["Front desk handoff"])
end
CALLER --> SIP --> STT --> NLU
NLU -->|Lookup| TOOLS
TOOLS <--> CRM
TOOLS <--> CAL
TOOLS <--> KB
NLU --> TTS --> SIP --> CALLER
NLU -->|Resolved| O1
NLU -->|Schedule| O2
NLU -->|Escalate| O3
style CALLER fill:#f1f5f9,stroke:#64748b,color:#0f172a
style NLU fill:#4f46e5,stroke:#4338ca,color:#fff
style O1 fill:#059669,stroke:#047857,color:#fff
style O2 fill:#0ea5e9,stroke:#0369a1,color:#fff
style O3 fill:#f59e0b,stroke:#d97706,color:#1f2937
Multi-agent decomposition solves these by giving each agent a narrow domain.
Tools should be:
Example tool schema for create_reservation:
Hear it before you finish reading
Talk to a live CallSphere AI voice agent for hospitality in your browser — 60 seconds, no signup.
{
name: "create_reservation",
description: "Create a confirmed reservation in the PMS",
parameters: {
guest_id: "string",
check_in: "ISO 8601 date",
check_out: "ISO 8601 date",
room_type: "enum: standard|deluxe|suite",
rate_plan: "string",
payment_token: "string (Stripe token)"
},
returns: {
reservation_id: "string",
confirmation_number: "string"
}
}
Each handoff includes:
Example handoff from Concierge to Reservation:
{
"from": "concierge",
"to": "reservation",
"context": {
"guest_phone": "+15551234567",
"guest_name": "John Smith",
"loyalty_tier": "Gold",
"intent": "book_room",
"dates_mentioned": ["2026-05-15", "2026-05-17"],
"language": "en"
}
}
Build a PMS abstraction layer so agent code is PMS-agnostic:
[Agents] -> [PMS Abstraction] -> [Opera|Mews|Cloudbeds|ASI adapters]
Each adapter implements the same interface (create_reservation, update_folio, get_room_status, etc.) but translates to the specific PMS API.
Multi-layer guardrails:
Log every:
Still reading? Stop comparing — try CallSphere live.
See the hospitality AI agent handle a real call — complete, industry-specific, and live in your browser. No signup.
Feed into LangSmith, Langfuse, or a custom observability stack.
Production deployment uses:
Q: How many agents is too many? A: Depends on domain. Hotels benefit from ~10–12 agents. Fewer = monolithic, more = handoff chaos.
Q: Can I use LangGraph instead of OpenAI Agents SDK? A: Yes. LangGraph, CrewAI, AutoGen all work.
Q: What's the biggest production pitfall? A: Handoff context loss. Invest in typed context contracts.
Related: CallSphere hotel stack | Hotel industry
#Architecture #MultiAgent #Design #CallSphere

Written by
Sagar Shankaran· Founder, CallSphere
LinkedInSagar Shankaran is the founder of CallSphere, where he builds production AI voice and chat agents deployed across healthcare, hospitality, real estate, and home services. He writes about agentic AI, LLM engineering, and shipping voice agents that handle real calls in production.
See how AI voice agents work for your industry. Live demo available -- no signup required.
A2A unlocks cross-vendor agent coordination, but most enterprise voice/chat workloads still ship faster on a single-vendor stack. Here is how to choose.
When to use Pinecone vs pgvector vs Qdrant vs Weaviate. A decision framework that maps team size and workload to the right pick without endless evaluation loops.
Enterprise CIO Guide perspective on AutoGen 0.5 brings async-first execution, an extension architecture, and tighter Azure integration.
Enterprise CIO Guide perspective on Cursor 2.0 ships background agents, parallel branches, and a redesigned composer — multi-agent coding is no longer an experiment.
Enterprise CIO Guide perspective on Claude Code 2.1 ships background agents, sub-agent spawning, and a hooks API that turn it into a true multi-agent coding platform.
Enterprise CIO Guide perspective on CrewAI Studio is the visual layer over the most-popular multi-agent framework, opening the toolkit to non-engineers.
© 2026 CallSphere Inc. All rights reserved.
Made within San Francisco