Skip to main content
Glama

Create the confirmed service booking

create_service_booking
DestructiveIdempotent

Use only from the protected final card with its one-time authorization after the user presses Confirm. Provider, request, hold, time and protected answers come from server context; do not pass or reconstruct them. Safe retries must reuse the same idempotency key.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
sourceYes
campaign_idNo
correlation_idYes
idempotency_keyYes
anonymous_session_idYes
booking_authorization_tokenYes

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes

TDQS

A4.4/5.0
Behavior5/5

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

Beyond the annotations, the description discloses that this operation relies on server context, requires one-time authorization, and must reuse an idempotency key for safe retries. These are meaningful behavioral details not present in readOnlyHint, idempotentHint, or destructiveHint. No contradiction with annotations is present.

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 dense sentences, each earning its place: the critical invocation guardrail, the server-context rule, and the retry rule. Information is front-loaded and there is 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?

The description gives strong operational guardrails and enough context for safe invocation, especially with the output schema available. It falls slightly short on documenting several required parameters, but the required context is largely conveyed through the schema, enum, and clear guardrail language.

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 0%, so the description must compensate. It clarifies the idempotency key's retry semantics and warns against passing server-context fields, but it does not explain source, campaign_id, correlation_id, anonymous_session_id, or how to obtain the booking_authorization_token. Coverage is partial, not comprehensive.

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

Purpose4/5

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

The title and tool name clearly identify this as creating a confirmed service booking, and the description adds the precise context of the protected final card after user confirmation. It is distinguishable from siblings like cancel or reschedule, though the description does not explicitly name an alternative.

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?

The description explicitly states when this tool may be used: only from the protected final card with one-time authorization after the user presses Confirm. It also gives a clear negative rule: do not pass or reconstruct server-context fields, and explains safe retry behavior with the idempotency key.

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.1/5.0
Disambiguation4/5

Most tools map to distinct lifecycle stages: request intake, option selection, booking creation, and booking management. The main potential confusion is between get_service_options and select_service_option, and between prepare_service_booking_change versus the actual cancel/reschedule tools, but per-tool guidance makes the boundaries clear enough for an agent.

Naming Consistency5/5

All tool names follow a snake_case verb_noun pattern such as start_service_request, update_service_request, get_service_options, and reschedule_service_booking. Minor variations like get_my_service_bookings and prepare_service_booking_change are still natural and predictable.

Tool Count5/5

Twelve tools is well-scoped for a booking and appointment-management domain. Each tool serves a necessary step in the flow: starting a request, updating intake, selecting options, creating bookings, listing/getting bookings, and handling changes.

Completeness4/5

The lifecycle is largely complete: request creation and updates, option selection, booking creation, read/list, reschedule, and cancelation. Obvious gaps are minor, such as no explicit tool to abandon a service request or retrieve a single service request alone, but the core user journey has no dead ends.

Resources