Skip to main content
Glama

request_reservation

Request a table at a restaurant. THE RESTAURANT IS NOT NOTIFIED YET: the request is held and a confirmation email is sent to the address you provide, and only when that person clicks the link does the restaurant receive it. Tell the user to check their inbox — the link expires in 24 hours. Use a real address belonging to the person you are acting for; the confirmation link is deliberately not returned to you. This is a request, not a confirmed booking: the restaurant confirms out of band.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
nameYesName the table is under.
emailYesThe guest's own email — the confirmation link is sent here.
phoneNoOptional phone number for the restaurant to reach the guest.
messageNoOptional note (occasion, dietary needs, seating preference).
partySizeYesNumber of people (1–30).
place_slugYesRestaurant place slug from search_places.
requestedAtYesDesired date and time as an ISO instant. Must be in the future.

TDQS

A4.6/5.0
Behavior5/5

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

No annotations provided, so description carries full burden. Discloses that restaurant is not notified until confirmation link is clicked, email is sent, link expires, and confirmation is not returned. Comprehensive behavioral disclosure.

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?

Concise and well-structured: front-loaded with purpose, then key behavioral notes. Every sentence adds value, no redundancy.

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?

No output schema, but description adequately explains the outcome (email sent, restaurant not notified) and what the agent should tell the user. Minor gap: does not explicitly state the function's return value (e.g., success status), but the flow is clear enough.

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%, so baseline is 3. The description does not add significant extra meaning beyond what the schema already provides for each parameter.

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 description clearly states the tool requests a table at a restaurant and explains the asynchronous confirmation flow. It distinguishes itself from the sibling 'create_booking' by emphasizing this is a request, not a confirmed booking.

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?

Provides explicit guidance: use a real email belonging to the person, tell user to check inbox, link expires in 24 hours. Explicitly contrasts with a confirmed booking, helping the agent choose between this and alternatives.

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.

TDQS

A4/5.0
Disambiguation5/5

All 28 tools have clearly distinct purposes. Overlaps like create_booking vs request_reservation are well-delineated by descriptions: one for appointments with checkout URL, the other for table requests via email confirmation. Similarly, reserve_event_tickets vs rsvp_event, and get_restaurant_menus vs search_dishes are complementary.

Naming Consistency5/5

Tool names follow a consistent verb_noun pattern in snake_case (e.g., create_booking, get_availability, list_events, search_places). Verbs indicate action type (get/list for retrieval, create/reserve for creation), and nouns are specific entities. No mixing of conventions.

Tool Count4/5

28 tools is above the typical 3-15 range but appropriate for the broad scope of a neighborhood directory with multiple Wix integrations (Bookings, Events, Stores, Reviews, etc.). Each tool covers a distinct feature, and no tool feels redundant.

Completeness4/5

The tool surface covers the main user workflows: searching places, viewing details and menus, checking availability, making bookings/reservations, and managing event tickets. Minor gaps exist (e.g., no update/cancel for bookings, no booking status check), but these are acceptable as the server focuses on initiating actions.

Resources