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

Gaplessly Booking

Find free times at Gaplessly businesses on a plan with AI booking, then get a link to book.

Checks passed
13 / 22

1 failed · 8 not measured

Median response
1291 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
6

Tool definitions returned by this server

Independent monitoring

Health & checks

Status history

Responded

The server completed its last measured handshake. This is an observation, not a guarantee.

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?
400
Publisher identityCan the publisher be traced to its source?
312

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 1291 ms.

  • Pass
    Valid handshake

    protocolVersion 2025-11-25, serverInfo.name gaplessly-booking.

  • Pass
    Lists tools

    tools/list returned 6 tools.

  • Pass
    Current protocol

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

  • Pass
    HTTPS

    The endpoint URL is https.

Performance

  • Not measured
    Fast (p50)

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

  • Not measured
    Consistent (p95)

    95th percentile 1291 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.

  • Pass
    Parameters documented

    34 of 34 parameters have a description (100%). The bar is 80%.

  • Pass
    Safety hints

    Every tool sets readOnlyHint or destructiveHint.

Publisher

  • Pass
    Verified namespace

    Listed in the Official MCP Registry.

  • Pass
    Website matches publisher

    The website host matches 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-11-02T11:07:31.91783Z, within 180 days.

  • Not measured
    Open-source licence

    No GitHub repository to ask about a licence.

Start using Gaplessly Booking

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 gaplessly-booking https://gaplessly.com/api/mcp

Capabilities

Tools 6

find_appointment_times

Free appointment times at one venue for one service, over up to two weeks. For salons, clinics, studios and anywhere a guest books a named service with a provider. Use find_table_times for a restaurant instead. Needs a service id from get_venue. Each returned time has an `at` label to show the guest and a `slotToken`. The token is the booking handle: it is signed, it expires in about 30 minutes, and it is the only way a time can be booked later. Pass it back exactly as given, never edited, and never reuse one from a different venue. An empty `times` array for a day means that day is genuinely unavailable, not that something failed. Each day lists at most 10 times unless `maxPerDay` says otherwise, spread across the day; `omitted` says how many more exist. To answer "around 6pm" or "afternoons", send `near`, `partOfDay`, `notBefore` or `notAfter` instead of asking for everything.

Discovered
find_table_times

Free table times at one restaurant or venue for one party size, over up to two weeks. Use find_appointment_times for a salon or clinic instead. Each returned time has an `at` label to show the guest and a `slotToken`. The token is the booking handle: it is signed, it expires in about 30 minutes, and it is the only way a time can be booked later. Pass it back exactly as given, never edited, and never reuse one from a different venue. An empty `times` array for a day means the venue has nothing at that party size that day, which usually means closed or fully booked. Each day lists at most 10 times unless `maxPerDay` says otherwise, spread across the day; `omitted` says how many more exist. To answer "around 7pm" or "lunch", send `near`, `partOfDay`, `notBefore` or `notAfter`. A party above the venue's online limit gets no times: the result carries `groupEnquiry` (a link and any contact details the venue published) to give the guest instead.

Discovered
find_venues

Search the businesses that take bookings through Gaplessly by name, by suburb or postcode, or by kind, and get back each one's slug, name, kind, address and booking page link. Use this when the guest names a business or an area but you do not have a slug; every other tool needs one. Send at least one of `name`, `location` or `kind`. Only real businesses that have chosen to be found by assistants are searchable here, so an empty result means "not found here", not that the business does not exist or cannot be booked: ask the guest for its booking link, which works with every other tool. Then call get_venue with the slug.

Discovered
get_venue

Read a venue's public booking profile: what it is, where it is, what can be booked, and what time it is THERE right now. Call this first once you have a slug (find_venues turns a name or suburb into one): the other tools need it, and appointment searches need a service id from here. A detail the business has not entered (industry, address, phone) is left out and listed under `notProvided`; do not guess it. For a restaurant with an online party limit, `groupEnquiry` is where a larger party goes. Returns `venueClock`, which is the venue's own current date and time. Every date you ask for later is resolved against `venueClock.today`, not against your own today: the two are routinely different days. Times are given as text on purpose and there is no timezone identifier anywhere in the result, because converting them is how a booking ends up hours off.

Discovered
start_appointment_booking

Turn a time from find_appointment_times into a link the guest taps to finish booking. This does NOT book anything: it returns a short-lived URL on the venue's own booking page, already opened at that service, that staff member and that exact time, where the guest enters their own name, email and phone and confirms. Give the guest the `url` and say plainly that the booking is not made until they open it. Never ask the guest for their contact details to pass here; this tool does not take them, and the page collects them directly. Nothing is reserved in the meantime, so a popular time can still go before they tap.

Discovered
start_table_booking

Turn a time from find_table_times into a link the guest taps to finish booking. This does NOT book anything: it returns a short-lived URL on the venue's own booking page, already opened at that party size and that exact sitting, where the guest enters their own details and confirms. The venue holds the table from the moment the guest opens the link, for about ten minutes, which is what gives them time to fill the form in. Until they open it nothing is held, so give them the `url` promptly and say the table is not theirs until they do.

Discovered

Recent measurements

Probe history

View status
Latest stored probes. Raw probe rows are kept for 14 days.
CheckedResultResponseTools
Connected1291 ms6