Skip to main content
Glama

Schedule a pickup (signed in)

book_my_pickup
Destructive

Requires the customer's connected Fold account. Schedules a pickup at one of their SAVED addresses using their saved card, gate code / access notes and laundry preferences — no payment link needed. Omit addressId to use their default address. pickupWindow must be one of the market's windows; if it is missing or invalid the response lists the valid windows and nothing is scheduled. Delivery is the next evening by default (Fold delivers in the evening only). sameAsLastOrder=true reuses the service, address and pickup window of the customer's most recent order (or of sameAsOrderCode, e.g. from a receipt); anything passed explicitly overrides it. This creates a real order. An optional idempotencyKey (UUID) makes retries return the same order instead of creating a second one.

Input Schema

NameRequiredDescriptionDefault
notesNoNotes for THIS order only (e.g. "wine stain on white shirt"). Standing preferences are applied automatically.
serviceNoWhat to clean. Default WASH_AND_FOLD.
addressIdNoOne of the customer's saved addressIds (from get_my_account). Default: their default address.
pickupDateNoYYYY-MM-DD, today or later (Pacific time).
deliveryDateNoYYYY-MM-DD. Default: the day after pickup.
pickupWindowNoPickup window label, e.g. "7:30 AM – 9:30 AM".
deliveryWindowNoEvening delivery window label. Default: the market's evening window.
idempotencyKeyNoUUID recommended. Retrying with the same key returns the same order.
sameAsLastOrderNoReuse service, address and pickup window from the most recent order ("same as last time").
sameAsOrderCodeNoReuse service, address and pickup window from this specific past order (e.g. FOLD-24083).

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedInput schema / properties / idempotencyKey / description
      Previous value: -"UUID recommended. Retrying with the same key returns the same booking."New value: +"UUID recommended. Retrying with the same key returns the same order."
  2. Changed2 schema fields changed
    • addedInput schema / properties / sameAsLastOrder
      Added value: +{
      +  "description": "Reuse service, address and pickup window from the most recent order (\"same as last time\").",
      +  "type": "boolean"
      +}
    • addedInput schema / properties / sameAsOrderCode
      Added value: +{
      +  "description": "Reuse service, address and pickup window from this specific past order (e.g. FOLD-24083).",
      +  "type": "string"
      +}
  3. First observed

TDQS

A4.5/5.0
Behavior5/5

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

Volunteers behavior well beyond the annotations: it creates a real order, delivery is next-evening only, invalid pickupWindow results in nothing being scheduled and returns the valid windows, and an idempotencyKey changes retry semantics. The idempotentHint=false annotation is consistent with the stated behavior (duplicates without a key), so 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.

Conciseness4/5

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

Dense but front-loaded — the precondition and the 'real order' consequence come before the option details. A few clauses (access notes, gate code) are slightly packed, but no sentence is 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?

For a 10-parameter, all-optional, destructive booking tool with no output schema, it covers defaults, failure mode, reuse semantics and delivery timing. Minor gaps: no mention of pricing/estimate confirmation, auth failure handling, or a pointer to reschedule_order/cancel_order after booking.

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-parameter meaning the schema cannot: omitted addressId falls back to the default, sameAsLastOrder/sameAsOrderCode prefill service, address and window, and any explicitly passed value overrides the prefill. That override precedence is genuinely additive.

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 concrete verb and resource ('Schedules a pickup') and immediately scopes it to signed-in customers with a connected Fold account and saved address/card, which separates it from guest and hotel booking siblings. The title's '(signed in)' plus the account precondition make the target persona unmistakable.

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?

Gives clear preconditions (connected Fold account, saved address, market-valid window) and explains defaulting behavior and the sameAsLastOrder shortcut. It stops short of naming the alternatives (book_residential_pickup / book_hotel_pickup) or saying when a not-signed-in agent should route elsewhere, so exclusion guidance is only implicit.

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