Skip to main content
Glama

Start a service request

start_service_request
Idempotent

Use this immediately when the user asks to book a supported local service. Pass the complete user intent and every public service detail already stated. The tool determines the vertical, creates the server-side request, and returns a vertical-specific introduction plus either one intake field batch or matching data when intake is already complete. In one customer-facing reply, lead with the introduction and immediately continue with the returned next step; do not wait for acknowledgment. Send provider_hint only when the user explicitly named a company. Do not collect contact PII.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
answersNo
user_intentYes
provider_hintNo
vertical_hintNo
idempotency_keyYes

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes

TDQS

A4.1/5.0
Behavior5/5

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

Beyond the annotations, the description adds meaningful behavioral detail: the tool creates the request, returns either an intake field batch or matching data, requires an immediate customer-facing reply without waiting for acknowledgment, and should not collect PII. This is substantial context that annotations alone do not provide.

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 deliver the trigger, parameter pointers, behavioral output, response protocol, and a PII constraint with no filler. The most important usage instruction is front-loaded, and every sentence earns its place.

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?

For a tool with five parameters, an output schema, nested objects, and many sibling tools, this description covers the call flow, response shape, and customer-reply behavior well. It is not fully complete because it omits idempotency_key and vertical_hint semantics and sibling routing, but the output schema helps cover return structures.

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?

With 0% schema description coverage, the description must compensate, and it partially does: it explains user_intent, provider_hint, and implicitly the answers field via 'every public service detail already stated.' However, it gives no guidance on idempotency_key, vertical_hint, or what belongs in the answers object, leaving several parameters under-explained.

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 description states a clear action ('start a service request'), explains that the tool determines the vertical, creates a server-side request, and returns a next step. It does not explicitly distinguish this tool from nearby siblings like create_service_booking or render_service_request_form, so it is clear but not fully differentiated.

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?

It gives an explicit trigger ('Use this immediately when the user asks to book a supported local service') and useful constraints like sending provider_hint only when a company is named and not collecting contact PII. It does not state when to prefer a sibling tool or provide when-not-to-use guidance, so it falls short of a 5.

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