Skip to main content
Glama

904 Digital Media: book a call

904 Digital Media: send a booking request

request_booking

Send 904 Digital Media a booking REQUEST for one appointment on the customer's behalf. Nothing is confirmed until 904 Digital Media confirms it. Use a start from get_availability. Needs the customer's name, phone and email (904 Digital Media emails the customer when it confirms, declines or suggests another time), answers to any required questions from list_services (by question id), and the street address when the service happens at the customer's address. No payment is taken here. What happens next: 904 Digital Media is notified right away and the customer gets an email saying the request was received, then another when 904 Digital Media answers. If the customer will not share an email, use request_callback instead.

Input Schema

NameRequiredDescriptionDefault
nameYesThe customer's full name.
emailNoThe customer's email. 904 Digital Media sends the confirmation here, so a booking request needs it.
notesNoAnything the customer wants 904 Digital Media to know (up to 1000 characters).
phoneYesThe customer's US phone number: 10 digits with area code, no extension.
startYesThe exact start from get_availability (ISO 8601 date-time with offset), unchanged.
addressNoThe full street address, when the service happens at the customer's address.
answersNoAnswers to the service's questions from list_services, keyed by question id. For a checklist question (pick: "any"), send only the options that apply, joined with "; ".
staff_idNoA particular person from list_services. Leave out to let the business assign someone.
service_idYesThe service's id from list_services.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedInput schema / properties / answers / description
      Previous value: -"Answers to the service's questions from list_services, keyed by question id."New value: +"Answers to the service's questions from list_services, keyed by question id. For a checklist question (pick: \"any\"), send only the options that apply, joined with \"; \"."
  2. First observed

TDQS

A4.8/5.0
Behavior5/5

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

Annotations only declare the mutation profile (readOnlyHint=false, openWorldHint=true, idempotentHint=false, destructiveHint=false); the description adds the operationally important facts: nothing is confirmed until the business answers, no payment is taken, the business is notified immediately, and the customer receives two emails. That is meaningful behavior beyond what the structured fields provide.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with purpose and non-confirmation status, then prerequisites, then what happens next — a logical order with no filler. It runs long and repeats the email rationale already present in the schema, but every sentence carries usable 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?

For a 9-parameter, nested-object mutation tool with no output schema, the description supplies exactly what is missing: the async confirmation flow, the no-payment guarantee, and the source of each dependent value. An agent can call this correctly and set expectations for the caller.

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 100%, so the baseline is 3, but the description adds cross-tool meaning: start must come from get_availability unchanged, answers must be keyed by question id from list_services, address is conditional on an at-customer-address service, and email is the channel the confirmation arrives on. It does not explain the checklist joining convention or staff_id, which the schema handles.

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 — 'Send 904 Digital Media a booking REQUEST for one appointment on the customer's behalf' — and immediately clarifies that this is a request, not a confirmation. That framing distinguishes it from siblings like get_availability and list_services without the agent needing to open any schema.

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 says to use a start from get_availability, to pull answers from list_services by question id, and to fall back to request_callback when the customer will not share an email. Both the positive path and the exclusion are named.

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.

Resources