MCP HeartbeatTHE MCP OBSERVATORY
Public workspace

Explore

Evidence for your next connection.

Independent measurements of remote MCP servers. Every observation has a timestamp.

Read-only probes

MCP server · Data access / search

Xona Dental Gateway

Find Canadian dentists; send an appointment request or book with a connected practice.

Checks passed
11 / 22

3 failed · 8 not measured

Median response
559 ms

Median of successful probes over 7 days

30-day uptime
Not measured

Share of countable probes over 30 days, including daily rollups. Auth challenges are excluded.

Discovered tools
20

Tool definitions returned by this server

Independent monitoring

Health & checks

Status history

Outdated check

Last connection measurement is over 24 hours old. Current availability is unknown.

Last checked
Check summary by test group
Test areaPassedFailedUnmeasured
ConnectionCan a client connect and discover tools?
500
Reliability & speedDoes it respond consistently and quickly?
004
Access & authenticationWhat is required to use this server?
102
Tool qualityAre the tool definitions usable by an agent?
310
Publisher identityCan the publisher be traced to its source?
222

Unmeasured means there is not enough evidence to decide. How these checks work

Inspect individual checks 22 recorded

Core

  • Pass
    Reachable

    Latest probe returned HTTP 200 in 559 ms.

  • Pass
    Valid handshake

    protocolVersion 2025-06-18, serverInfo.name Xona Dental Gateway.

  • Pass
    Lists tools

    tools/list returned 20 tools.

  • Pass
    Current protocol

    Negotiated 2025-06-18. The bar is 2025-06-18 or newer.

  • Pass
    HTTPS

    The endpoint URL is https.

Performance

  • Not measured
    Fast (p50)

    Median latency 559 ms over 1 samples in 7 days. The bar is 1000 ms. Need at least 5 samples.

  • Not measured
    Consistent (p95)

    95th percentile 559 ms over 1 samples in 7 days. The bar is 3000 ms. Need at least 20 samples.

  • Not measured
    Reliable (uptime)

    1 of 1 attempts returned a tool list in 30 days (100%). The bar is 99%. Need at least 30 samples.

  • Not measured
    Stable tool list

    Fewer than two successful probes in 30 days, so tool-list stability is not measured.

Access

  • Pass
    Open access

    tools/list succeeded with no credential, and the record declares none.

  • Not measured
    Standard auth

    Auth is not required, so the OAuth metadata check does not apply.

  • Not measured
    Free tier cited

    No publisher quote has been checked.

Tools

  • Pass
    Tools described

    Every tool description is at least 20 characters.

  • Pass
    Valid input schemas

    Every inputSchema is a JSON Schema object.

  • Fail
    Parameters documented

    35 of 73 parameters have a description (48%). The bar is 80%.

  • Pass
    Safety hints

    Every tool sets readOnlyHint or destructiveHint.

Publisher

  • Pass
    Verified namespace

    Listed in the Official MCP Registry.

  • Fail
    Website matches publisher

    The website host does not match the reverse-domain namespace.

  • Fail
    Source repo linked

    No repository URL is on file.

  • Not measured
    Repo owner matches

    This namespace is not an io.github login, so the owner comparison does not apply.

  • Pass
    Recently updated

    Updated 2026-09-23T07:12:46.49958Z, within 180 days.

  • Not measured
    Open-source licence

    No GitHub repository to ask about a licence.

Start using Xona Dental Gateway

Connect to this server

Choose your client, copy the configuration, then enable the server in your client’s MCP settings.

Run this command in your terminal, then restart Claude Code.

Claude Code

claude mcp add --transport http xona-dental-gateway https://book.xonark.com/mcp

Capabilities

Tools 20

abandon_xona_booking

Release the held time and drop the patient's details when the patient no longer wants it, at any step before it is booked. It never cancels a booked appointment. Calling again returns the same result.

Discovered
answer_dental_practice_question

Answer a bounded factual question from the selected practices' evidence. Unknown is returned explicitly; missing data is never inferred as no.

Discovered
change_xona_appointment

Move or cancel one of the patient's appointments. Xona texts the patient a link to a page that shows the exact change. When they press its button (or type the code from the text on book.xonark.com/code) the practice's schedule changes, or, at a practice that confirms changes itself, the practice receives the request. Calling again with the same arguments returns the result, read live from the practice's schedule.

Discovered
choose_public_booking_time

For a public_provider_booking action: keeps one time from list_public_booking_slots (or a soonest search row's earliest) and returns continue_url, Xona's page where the patient enters their own details and presses Book. Xona then books that time in the clinic's own scheduler. It takes the action and the time (service_id, slot_id, starts_at) only, reads that time again and keeps it only if it is still open; the page collects the patient's details.

Discovered
confirm_dental_request

Report a started request's status. It never sends: waiting_for_patient until the patient presses "Send this request" on Xona's page, then the stored result: sent, delivery unknown or failed, expired, or stopped by the patient. A sent request is never a confirmed booking.

Discovered
confirm_xona_booking

Get the result once the patient has tapped the text link and pressed Book this appointment. Until then it returns waiting_for_patient. Xona finds an existing patient itself; when it cannot tell, it returns the practice's booking page instead of guessing. If the booking stopped before it was written, the first call tries it once more. Calling again returns the same outcome.

Discovered
get_canadian_dental_practice

Get one public dental practice profile, fact evidence, citations, and current public actions.

Discovered
get_dental_action_status

Read the exact outcome of an expiring dental action. Handoff, request, and confirmed booking outcomes remain distinct.

Discovered
hold_xona_booking_slot

Hold one open time and text the patient a link to it. The page the link opens shows the time and the details above a Book this appointment button. When the patient presses it the appointment is booked, or, at a practice that confirms bookings itself, sent to the practice as a request.

Discovered
list_dental_practice_actions

List current public booking, request, form, call, and website actions for a dental practice in preference order.

Discovered
list_public_booking_services

Read the services a clinic's own online scheduler offers, by practice_slug: a clinic whose search row is live_schedule, or whose action option has reads_times. The answer carries booking_url, the page where the patient books this clinic; a clinic whose scheduler can't be read answers readable false with that booking_url. An answer may be up to 5 minutes old: read_at says when the clinic's scheduler was read and age_seconds how long ago; fresh: true reads this clinic again (twice a minute per clinic; past that the answer says when it next can). Provider locators remain server-owned.

Discovered
list_public_booking_slots

Read open times from a clinic's own online scheduler, by practice_slug, for one service_id between date_from and date_to (the clinic's dates, both included, at most 14 days). Each time carries starts_at, start_local (the time at the clinic), time_zone and booking_url, the page where the patient books that time (Xona's page on that service and day where Xona books the clinic's scheduler, else the clinic's own booking page); earliest is the first one; preferred_time puts the closest times first. An answer may be up to 5 minutes old: read_at says when the clinic's scheduler was read and age_seconds how long ago; fresh: true reads this clinic again (twice a minute per clinic; past that the answer says when it next can).

Discovered
list_xona_appointments

Read the named patient's upcoming appointments at the practice, live from its schedule, after the patient tapped the text link. Works with the action_id of a booking made in this conversation (for 30 minutes after the tap, and for that appointment until its day) or of start_xona_appointment_access. Before the tap it says it is still waiting.

Discovered
list_xona_booking_services

List the services a practice that connected its schedule to Xona books online. Use it where list_dental_practice_actions marks the Xona booking route as completes_in_conversation.

Discovered
list_xona_booking_slots

List open times at a connected practice for one service between date_from and date_to (inclusive, at most 8 weeks out). Returns the closest ten to preferred_time (else a balanced spread) plus the earliest open time, with a reason when empty. Each slot has a slot_fingerprint and date for hold_xona_booking_slot.

Discovered
list_xona_reschedule_times

List open times one of the patient's appointments can move to, for its own service and provider, between date_from and date_to. appointment_ref comes from list_xona_appointments.

Discovered
prepare_dental_practice_action

Creates a short-lived action for one capability the clinic's action options list (its scheduler page, a Xona request, a request form, a call or its website) and returns the URL of the page for it. A capability the clinic does not list is refused. A connected practice's time from list_xona_booking_slots is held with hold_xona_booking_slot, not through this tool.

Discovered
search_canadian_dentists

Search evidence-backed public profiles in the Canadian dental directory by name or place, and filter by a service, a language, published weekend or evening hours, a booking route you can use now, and a payment plan the clinic says it accepts (the Canadian Dental Care Plan). Each row says which published fact matched and when it was read. A search with order=soonest, the patient's postal code or city and the service returns live rows that already carry each clinic's earliest time, its services and booking_url, the page where the patient books that time; opening it starts the booking there, with no call in the conversation. A row's read.read_at says when its times were read, at most 5 minutes before. The tool a row's next_step names reads more times. Each earliest is only a first pick: the first service in the clinic's own list whose name holds the need's word, an adult's before a child's. Clinic service names often say more than that word: "New Patient Exam (No Cleaning)", a new-patient bundle of exam, x-rays and cleaning, a service for children only, a fee or insurance note. Read service_name against what the patient needs; when it does not fit, choose the service that does from services and read its times with list_public_booking_slots. No login or clinic membership is required.

Discovered
start_dental_request

Start an appointment request for Xona to send to the selected clinic (by email, or through the clinic's own website form). It takes the patient's details and preferred times. Xona emails the patient a link that shows the exact request; the request goes to the clinic only when the patient presses "Send this request" there, or enters the email's code on continue_url. The result carries consent_text and continue_url; confirm_dental_request reports the status. Use it where list_dental_practice_actions marks xona_email_appointment_request as completes_in_conversation.

Discovered
start_xona_appointment_access

Text a patient one link to see, move or cancel the appointments they already have at a practice connected to Xona, for a conversation with no booking action_id that still works. If the mobile number, name and date of birth match a patient there, Xona texts them the link; after they tap it and press Show my appointments, list_xona_appointments reads their appointments. The answer is the same whether or not the details match.

Discovered

Recent measurements

Probe history

View status
Latest stored probes. Raw probe rows are kept for 14 days.
CheckedResultResponseTools
Connected559 ms20