Hi everyone,
I’m currently working on a fairly large healthcare conversational use case and would appreciate advice from the community on architecture and best practices.
Use Case Overview
The assistant is expected to handle end-to-end patient journeys, including (but not limited to):
- Fetching patient information
- Fetching a patient’s appointment details
- Confirming or cancelling appointments
- Booking appointments:
- Asking the user about symptoms
- Fetching hospitals near the user’s location
- Fetching clinics based on the selected hospital
- Fetching available doctors with dates and time slots
- Supporting both “nearest available” appointments and bookings on a specific date
- Sending appointment details via SMS or WhatsApp
- Sending hospital location via SMS or WhatsApp
- Fetching and updating insurance details
- Fetching insurance status
- Fetching user-submitted queries to doctors
All backend capabilities are exposed as tools via an MCP server.
Current Architecture
I’m using a multi-agent architecture:
- A supervisor agent created using
create_agent - Multiple sub-agents, also created using
create_agent, exposed as tools to the supervisor - Each sub-agent owns a specific domain and has access to its own set of tools
Challenges
- Flow reliability
In complex scenarios (especially booking), the supervisor sometimes skips steps or jumps ahead, even though the steps are logically required.
I’m concerned about whether this architecture can reliably handle all edge cases and long, structured workflows without missing mandatory steps. - Bilingual support (Arabic & English)
- ~90% of usage will be in Arabic, ~10% in English
- Arabic responses require heavy customization:
- Strict response structures for hospital lists
- Different formatting rules for doctor lists, appointment slots, confirmations, etc.
- This currently requires a lot of prompt-level instructions, and I’m worried about prompt complexity, maintainability, and consistency.
What I’m Looking For
I’d love guidance on:
- Whether this supervisor + sub-agent pattern is the right approach for such deterministic, step-heavy workflows
- Techniques to enforce step-by-step execution (e.g., state machines, planners, guardrails, or explicit workflow validation)
- Best practices for handling highly structured, multilingual responses, especially when one language (Arabic) dominates and has strict formatting requirements
- Any real-world patterns you’ve used successfully for similar healthcare or booking flows in LangChain
Any suggestions, examples, or references would be greatly appreciated.
Thanks in advance! ![]()