Skip to main content
Glama

Reservio MCP by usefulapi

Book a group event

reservio_create_group_booking
Destructive

WRITE: book a client into an existing group event (event id from reservio_list_events). Reservio may notify the client. Not safe to repeat: a second call books a second seat. Reservio API: POST /businesses/{businessId}/bookings.

Input Schema

NameRequiredDescriptionDefault
clientYes
event_idYesGroup event id.
business_idNoBusiness id. Default: the business you entered at login.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.6/5.0
Behavior5/5

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

Goes well beyond the destructiveHint annotation: it warns that the client may be notified, that a second call books a second seat (non-idempotent), and names the underlying endpoint POST /businesses/{businessId}/bookings. These are exactly the side-effect facts an agent needs before writing.

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 short sentences, front-loaded with the WRITE classification and the core action, then risk warnings, then endpoint. No filler.

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?

Complete for a mutation with no output schema except that it never says what a successful booking returns (e.g., a booking id), which an agent chaining calls would want. All other decision-relevant facts are present.

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 67%; the description adds provenance for event_id (must come from reservio_list_events) and clarifies the seat-per-call semantics. It adds nothing about the nested client fields (name/email/phone), which remain schema-only.

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 ("book a client into an existing group event") and names the source for the event id (reservio_list_events). The "group event" qualifier distinguishes it from reservio_create_appointment_booking without the agent needing to compare schemas.

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?

Gives clear preconditions: the event must already exist and its id comes from reservio_list_events. It also warns the call is not repeatable, which is a usage constraint. It stops short of explicitly routing individual (non-group) bookings to reservio_create_appointment_booking.

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.