Skip to main content
Glama

Sonlight Window Cleaning

Book the appointment

book_window_cleaning
Destructive

Reserve a REAL calendar slot with Sonlight Window Cleaning. The customer immediately receives an SMS + email confirmation and a technician arrives at the chosen time. Payment is collected after service. Nothing is charged at booking. ALWAYS confirm name, phone, address, selected services, date, and time with the user before calling this. Requires a prior get_quote for the same address (prices are re-validated server-side).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
nameYesCustomer's full name.
emailNoCustomer email, recommended but optional.
notesNoGate codes, pets, focus areas. Anything the technician should know.
phoneYesUS mobile number for the confirmation SMS.
addressYesFull service address (street, city, state, zip).
preferred_dateYesYYYY-MM-DD. Same-day cutoff: 6pm Mountain the prior evening.
preferred_timeYes
discount_dollarsNoDiscount from check_availability for the chosen day, if any (server re-validates).
selected_servicesYesinterior_exterior = full service windows; exterior = outside-only windows; gutter = gutter cleaning; soft_wash = siding soft wash.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
dateNo
kindNo
timeNo
totalNoFinal booked USD total after validated discounts
successNo
servicesNo
duplicateNo
discountAppliedNo
bookingReferenceNoConfirmation reference the customer can quote to the office

TDQS

A4.7/5.0
Behavior5/5

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

Discloses that nothing is charged at booking, payment after service, and server-side re-validation, which adds meaningful context beyond annotations (destructiveHint=true is consistent). No contradiction.

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?

Four sentences: action, outcome, process, pre-conditions. No wasted words, efficiently front-loaded with key information.

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?

Covers booking flow, prerequisites, and user confirmation needs. Output schema exists, so return values are not required in description. Complete for agent decision-making.

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 coverage is high (89%), so baseline 3. Description ties parameters to confirmation steps but does not add new semantic meaning beyond the schema.

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?

Clearly states it reserves a calendar slot, sends confirmations, and collects payment after service. Distinguishes from siblings by mentioning prerequisite get_quote.

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?

Explicitly instructs to confirm key details with user before calling, and states requirement of a prior get_quote. Provides clear when-to-use guidance.

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

Each tool has a distinct purpose: get_quote provides pricing, check_availability shows scheduling options, and book_window_cleaning confirms a booking. No overlap or ambiguity.

Naming Consistency5/5

All tools follow a consistent verb_noun pattern using lowercase and underscores: get_quote, check_availability, book_window_cleaning.

Tool Count4/5

Three tools is appropriate for a simple booking service, covering the essential steps of quoting, availability, and booking. Slightly on the low side but well-scoped.

Completeness5/5

The tool set covers the complete user workflow: getting a quote, checking availability, and booking. There are no obvious missing operations for the stated domain.

Resources