https://mcp.arlohealth.ai. The server uses OAuth 2.1 with PKCE and supports continuous conversations that can include multiple provider visits.
Tool categories
Authentication
init_signup, check_account_statusProfile
get_user_profile, update_patient_infoHealth Records
connect_insurance, disconnect_connection, get_health_recordsConversations
list_conversations, start_conversation, get_conversation, cancel_requestMessaging
send_message, wait_for_reply, get_media_urlPrescriptions
get_prescriptionsCare Pricing
search_care_prices, check_network_status, get_provider_evidenceCare Jobs
create_care_job, get_care_jobs, respond_to_care_jobWebhooks
register_webhookTool access by host
Connector hosts such as Claude, ChatGPT, and Grok manage OAuth in their interface. They do not advertiseinit_signup, check_account_status, or register_webhook. Agent runtimes can use the full tool set; init_signup is for clients that connect before obtaining a bearer token.
The
arlo.health/idempotencyKey call metadata can carry a retry key on any host. Use the same key only to retry the same intended action.
Read-only and state-changing tools
These lists follow each tool’sannotations.readOnlyHint.
Read-only: check_account_status, get_user_profile, get_health_records, list_conversations, get_conversation, wait_for_reply, get_media_url, get_prescriptions, search_care_prices, check_network_status, get_provider_evidence, get_care_jobs.
State-changing: init_signup, update_patient_info, connect_insurance, disconnect_connection, start_conversation, cancel_request, send_message, register_webhook, create_care_job, respond_to_care_job.
Typical flow
- Read
get_user_profilefortier,capabilities, patient profiles, insurance connections, and health-record counts. - Gather a first-person description and the patient’s current physical region, then call
start_conversationwithcontextMessageand an ISO 3166-2region. - Answer triage with
send_message. It waits for the reply by default; usewaitForReply: falsewhen the agent will callwait_for_replyseparately. - When the conversation reaches
PAYMENT_REQUIRED, relay the summary and offer the Stripe page atpaymentGate.paymentUrl. The patient approves a temporary hold there; it is captured only if a doctor joins, and released otherwise. No card setup is required. - Use
wait_for_replyduring an active turn, or configure a webhook for notifications between turns.
updates array: care-job events since your last call, such as the care team asking the patient a question. Act on each item’s agentInstructions. See Care Jobs.
Conversation states
A conversation remains available after a request finishes or is canceled. A visit is a provider engagement within that conversation.