Skip to main content
Glama

shopmonkey

Book an appointment

shopmonkey_create_appointment
Destructive

Book an appointment on the shop calendar, optionally for a customer, vehicle and order and assigned to technicians. Confirmation/reminder messages are only sent if you ask. Shopmonkey: POST /v3/appointment.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
nameYesWhat the appointment is for, e.g. 'Oil change'.
noteNoNotes for the appointment.
colorNoCalendar color. Default blue.blue
allDayNoAll-day appointment.
useSMSNoUse SMS for confirmation/reminder.
endDateYesEnd, ISO 8601 date-time.
orderIdNoA work order to link.
useEmailNoUse email for confirmation/reminder.
startDateYesStart, ISO 8601 date-time.
vehicleIdNoThe vehicle's id.
customerIdNoThe customer's id.
sendReminderNoSend the customer a reminder before the appointment.
technicianIdsNoUser ids of the assigned technicians.
sendConfirmationNoSend the customer a confirmation now.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.6/5.0
Behavior4/5

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

The only annotation is destructiveHint=true, which the description neither explains nor contradicts. What the description does add is meaningful beyond the annotations: outbound SMS/email side effects are opt-in ('only sent if you ask'), which is exactly the kind of behavioral fact an agent needs to avoid spamming customers.

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?

Two compact sentences front-load the purpose and the messaging caveat, with the raw endpoint appended as a developer breadcrumb. Nothing is redundant, though the trailing 'Shopmonkey: POST /v3/appointment' adds little for an agent choosing the tool.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 14-parameter mutation with no output schema and a bare destructiveHint annotation, the description covers the core behavior but omits a couple of dependencies an agent should know (e.g., that sending reminders/confirmations presumably requires a customer, and why the operation is flagged destructive). It is adequate but not fully self-sufficient.

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 100%, so all 14 parameters (including required name/startDate/endDate, ISO 8601 formats, enum color, and the send flags) are already documented in the schema. The description only summarizes the association fields, adding no syntax or default detail beyond the schema, so the baseline of 3 applies.

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?

States a specific verb and resource ('Book an appointment on the shop calendar') plus the optional associations (customer, vehicle, order, technicians), so the agent knows exactly what is created. It does not explicitly contrast itself with the sibling shopmonkey_search_appointments, but the create-vs-search distinction is inferable from the verb.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage through 'optionally for a customer, vehicle and order', and it adds the useful condition that confirmation/reminder messages are only sent if requested. However, it never states when to book via this tool versus, say, creating an order first, nor whether linking customer/vehicle/order is preferred or required for follow-up messaging.

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.