Skip to main content
Glama

Waitwhile MCP by usefulapi

Update a visit (state, tags, time, party)

waitwhile_update_visit
DestructiveIdempotent

WRITE: change ONE visit — its state (e.g. WAITING to SERVING to COMPLETE, or BOOKED), add/remove tags (e.g. ARRIVED, CONFIRMED, NO-SHOW), booking date/duration or party size. Only the fields you pass change. By default the request asks Waitwhile to suppress the customer message; this may only stop the immediate status message, and scheduled reminders/follow-ups can still go out per the location's settings. With send_notifications=true Waitwhile may text/e-mail this ONE customer. Use waitwhile_cancel_visit to cancel. POST /visits/{visitId}.

Input Schema

NameRequiredDescriptionDefault
dateNoNew booking start, local time YYYY-MM-DDThh:mm.
stateNoNew state.
add_tagsNoTags to add.
durationNoNew booking duration in seconds.
visit_idYesVisit id.
party_sizeNo
remove_tagsNoTags to remove.
send_notificationsNoDefault false: the request asks Waitwhile not to send the immediate confirmation/status message. This may not stop everything: scheduled reminders and follow-ups can still go out according to the location's own settings. Set true to let Waitwhile send its normal messages to the customer.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations declare destructive/idempotent/openWorld, but the description adds genuinely non-obvious behavior: default notification suppression may only stop the immediate status message while scheduled reminders still fire per location settings, and send_notifications=true contacts this ONE customer. It also discloses the partial-update mutation model and the HTTP verb/path, none of which structured fields carry.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with 'WRITE:' so the mutation nature is visible immediately, and each sentence carries routing or behavioral content. The notification caveat is stated in the description and then again in the schema, a mild redundancy, but overall density is appropriate for an 8-parameter mutation.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Covers mutation scope, notification side effects, and the endpoint for a tool with no output schema. The one soft spot is the response shape — since there is no output schema, the agent gets no signal about what the update returns, though this is minor for a field-patch tool whose annotations already flag it as destructive.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 88%, so the schema already documents parameters; the description still contributes domain meaning via state-flow examples (WAITING to SERVING to COMPLETE, or BOOKED) and concrete tag examples (ARRIVED, CONFIRMED, NO-SHOW). The send_notifications explanation largely restates its schema description, so it adds domain color more than net-new parameter semantics.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('change ONE visit') and enumerates the mutable surface: state, tags, booking date/duration, party size. It is immediately distinguishable from siblings by contrasting with waitwhile_cancel_visit and by scoping to a single visit versus create/list operations.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Names an explicit alternative ('Use waitwhile_cancel_visit to cancel') with the condition that selects it, and clarifies the partial-update contract ('Only the fields you pass change'), which tells the agent it need not supply the full object. Nothing about tool selection is left dangling.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.