Integration Options
Arlo Health provides three integration methods:MCP (Recommended)
Model Context Protocol for native AI agent integration. Tools are discovered automatically.
REST API
Traditional REST endpoints for direct HTTP integration (also wrapped by the OpenClaw plugin).
Core Workflow
Arlo’s core primitive is the conversation — a continuous health thread that never closes. Every provider visit flows through it:1
Gather Context
Have a natural conversation with the user to understand their health concern
2
Start a Conversation
Call
start_conversation with a first-person narrative and the patient’s current region3
AI Triage
Await replies with
wait_for_reply; answer follow-up questions with send_message4
Payment Gate
Present the consultation summary; the patient explicitly confirms via
confirm_provider_connection5
Provider Match
User is matched with a licensed clinician (
MATCHING → WITH_PROVIDER)6
Provider Visit
User exchanges messages with the provider asynchronously
7
Back to IDLE
The visit wraps up with clinical notes (
get_visit_notes) and any prescriptions; the conversation stays open for follow-upStep 1: Gather Context
Before starting a conversation, talk with the user to understand their health concern:- What’s the main symptom?
- How long has it been going on?
- Any associated symptoms?
- Has this happened before?
Step 2: Start the Conversation
Callstart_conversation with a first-person narrative and the region:
Before starting a new conversation, call
list_conversations — if a relevant conversation already exists, continue it with send_message instead. Messaging an idle conversation re-runs triage on the same thread, preserving continuity of care.Step 3: Respond to AI Triage
start_conversation returns immediately (fast-ack). Call wait_for_reply to await the AI’s response — it’s resumable, so re-call it if it returns stillWaiting.
Answer follow-up questions with send_message, which by default sends and waits for the next reply in one call:
send_message enforces a read-first gate: pass lastSeenMessageId from your last get_conversation/wait_for_reply result, or call get_conversation first. If triage returned an informationNeed checklist, batch all the answers into one send_message call.Step 4: Handle the Payment Gate
After triage completes, the conversation entersPAYMENT_REQUIRED. Arlo is pay-per-use and never auto-charges — the patient must explicitly confirm:
- Present the
paymentGate.consultationSummaryto the user - If a card is on file: on the user’s confirmation, call
confirm_provider_connectionto place the per-visit hold - If not: call
create_payment_setup, direct the user to the Stripe card-setup URL, pollget_payment_statusuntilACTIVE, then confirm - If the user declines:
cancel_requestdismisses the gate and the conversation returns to AI-only chat
Step 5: Provider Visit
Once a provider is matched, the conversation becomesWITH_PROVIDER. Messaging is asynchronous — use wait_for_reply to await provider messages and relay them. Providers can:
- Ask additional questions
- Provide diagnosis and treatment recommendations
- Write prescriptions and order labs
IDLE — fetch the clinical note with get_visit_notes, and check get_prescriptions for any prescriptions.
Authentication
On connector hosts (Claude.ai, ChatGPT): the platform’s connector UI handles OAuth — nothing to build. On agent runtimes (Claude Code, OpenClaw, custom agents): callinit_signup to start the OAuth flow:
- Call
init_signup— returns anauthUrl - User opens the URL and completes signup
- Poll
check_account_statusuntilauthenticated: true
Onboarding
New users need a complete profile before care. Callget_user_profile and follow its nextStep. On widget-capable hosts, start_onboarding opens an interactive setup flow that handles records import, demographics, terms, and payment in one place.
Webhooks (Agent Runtimes)
Within a session,wait_for_reply delivers replies without polling. For waking your agent when it isn’t actively waiting, register a webhook:
Next Steps
MCP Tools Overview
Explore all available MCP tools
Consultation Lifecycle
Understand conversation status flow
Authentication
Deep dive into OAuth 2.1 setup
Payments
Learn how pay-per-use works