Skip to main content
Glama
chrischall

tock-mcp

by chrischall

tock_verify_reservation

Read-only

Verify a Tock reservation actually exists after any booking attempt by re-querying reservation lists, returning confirmed, cancelled, or not_found verdicts to prevent false success.

Instructions

Verify that a Tock reservation actually exists, by re-querying the account's own reservation lists (upcoming, canceled and past) and returning an explicit verdict. Use this after ANY booking attempt — a success screen or screenshot is not proof that a booking landed. Returns verdict confirmed, cancelled (it existed and was voided) or not_found. A not_found must be reported to the user as "attempted, unverified", never as a failure to book and never as a success. Requires a browser tab signed in to exploretock.com via the fetchproxy extension.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
dateYesThe local date the reservation is for (YYYY-MM-DD).
venueYesRestaurant name or Tock slug; matched case-insensitively as a substring.
partySizeNoIf given, a candidate must also match this party size.
bookedMinutesAgoNoMinutes since the booking was attempted. Drives the lag caveat: an absence seen within a few minutes of booking is inconclusive, not proof. Omit if unknown (treated as inconclusive).

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv1.0.0
    • changedInput schema / $schema
      Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
  2. Addedv0.3.0

TDQS

A4.5/5.0
Behavior5/5

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

Beyond the readOnlyHint/openWorldHint annotations, it discloses the exact lists re-queried, the three possible verdicts, the required user-facing phrasing for not_found, and the prerequisite of a signed-in browser tab with the fetchproxy extension. This materially helps the agent interpret outcomes correctly.

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

Conciseness5/5

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

Three sentences are tightly organized: purpose first, usage trigger second, outcome semantics and prerequisites after. There is no filler, and critical caveats earn their place.

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

Completeness5/5

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

With no output schema, the description compensates by enumerating the return verdicts and their user-facing meaning. The prerequisite, lag handling via bookedMinutesAgo in the schema, and search scope are all covered sufficiently to invoke the tool correctly.

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

Parameters3/5

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

Schema description coverage is 100%, and the schema already defines date, venue, partySize, and bookedMinutesAgo including the lag caveat. The description adds context about verdict semantics but not additional parameter-level meaning, so the schema does the heavy lifting.

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?

The opening verb 'Verify' names a concrete action on a specific resource ('Tock reservation') and explains the mechanism ('re-querying the account's own reservation lists'). It differentiates from siblings by emphasizing the explicit verdict rather than list output, so an agent can distinguish it from tock_list_reservations.

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

Usage Guidelines4/5

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

The description gives an explicit trigger: 'Use this after ANY booking attempt', and reinforces that UI success is not proof. It does not name sibling alternatives or state when to prefer tock_list_reservations, so it stops short of full when/when-not guidance.

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