Skip to main content
Glama

Place a pickup order

biz_order

Places a pickup pre-order at a business served through this connector: placing an order, a pickup order, or the checkout after biz_menu. Needs items and a pickupWindowId from biz_menu and the collector's first name; no phone, email, surname or card is collected. Businesses served here: Long Beach Brunch Bakehouse (longbeachbrunch, a neighborhood bakery and coffee bar). Reachable here but not through this tool: Velvet and Clay (velvetandclay), Brightpoint Dental (brightpointdental), Make Collectives (makecollectives) and Kristin Dunn Bookbinding and Design (kdbooks) take no pickup orders. Most orders are paid at pickup; where the reply is HELD, its payUrl is the only payment link this connector issues: give it exactly as returned. isDemo true reserves nothing.

Input Schema

NameRequiredDescriptionDefault
noteNoOptional note, 140 characters; contact details are removed.
itemsYesOrder lines, at least one.
businessNoWhich business, by name or id. Available: Long Beach Brunch Bakehouse (longbeachbrunch). The default (velvetandclay) takes no pickup orders, so NAME THE BUSINESS: an omitted argument is refused. An unclear name is REFUSED with the list, not answered about a different business.
firstNameYesFirst name only.
businessIdNoAlias for `business`; ignored when `business` is given.
pickupWindowIdYesWindow id from biz_menu.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed8 schema fields changed
    • changedInput schema / properties / business / description
      Previous value: -"Which business, BY NAME OR BY ID. Available: Long Beach Brunch Bakehouse (longbeachbrunch). The default (velvetandclay) takes no pickup orders, so NAME THE BUSINESS: an omitted argument is refused. A common short form works too (\"the bakehouse\", \"the dentist\"). A name that does not clearly match one of these is REFUSED with the list, and it is not answered about a different business."New value: +"Which business, by name or id. Available: Long Beach Brunch Bakehouse (longbeachbrunch). The default (velvetandclay) takes no pickup orders, so NAME THE BUSINESS: an omitted argument is refused. An unclear name is REFUSED with the list, not answered about a different business."
    • changedInput schema / properties / businessId / description
      Previous value: -"Alias for `business`, accepted because every reply carries this name. Takes a NAME OR AN ID, exactly like `business`. Ignored when `business` is also given."New value: +"Alias for `business`; ignored when `business` is given."
    • changedInput schema / properties / firstName / description
      Previous value: -"First name only. No surname, phone number or email address."New value: +"First name only."
    • changedInput schema / properties / items / description
      Previous value: -"The order lines. At least one."New value: +"Order lines, at least one."
    • changedInput schema / properties / items / items / properties / id / description
      Previous value: -"An item id from biz_menu, exactly as written"New value: +"Item id from biz_menu."
    • changedInput schema / properties / items / items / properties / qty / description
      Previous value: -"How many, within the item minQty/maxQty"New value: +"Quantity."
    • changedInput schema / properties / note / description
      Previous value: -"Optional short preparation note, 140 characters, e.g. \"no nuts\" or \"happy birthday Ada\". Contact details are removed server side: this is not a message channel."New value: +"Optional note, 140 characters; contact details are removed."
    • changedInput schema / properties / pickupWindowId / description
      Previous value: -"A window id from biz_menu, e.g. 2026-09-10T10:00"New value: +"Window id from biz_menu."
  2. Changed1 schema field changed
    • changedInput schema / properties / business / description
      Previous value: -"Which business, BY NAME OR BY ID. Available: Long Beach Brunch Bakehouse (longbeachbrunch). The default (velvetandclay) takes no pickup orders, so NAME THE BUSINESS: an omitted argument is refused. A common short form works too (\"the bakehouse\", \"the dentist\"). A name that does not clearly match one of these is REFUSED with the list, never silently answered about a different business."New value: +"Which business, BY NAME OR BY ID. Available: Long Beach Brunch Bakehouse (longbeachbrunch). The default (velvetandclay) takes no pickup orders, so NAME THE BUSINESS: an omitted argument is refused. A common short form works too (\"the bakehouse\", \"the dentist\"). A name that does not clearly match one of these is REFUSED with the list, and it is not answered about a different business."
  3. Changed1 schema field changed
    • changedInput schema / properties / business / description
      Previous value: -"Which business, BY NAME OR BY ID. No business served here takes pickup orders right now. A common short form works too (\"the bakehouse\", \"the dentist\"). A name that does not clearly match one of these is REFUSED with the list, never silently answered about a different business."New value: +"Which business, BY NAME OR BY ID. Available: Long Beach Brunch Bakehouse (longbeachbrunch). The default (velvetandclay) takes no pickup orders, so NAME THE BUSINESS: an omitted argument is refused. A common short form works too (\"the bakehouse\", \"the dentist\"). A name that does not clearly match one of these is REFUSED with the list, never silently answered about a different business."
  4. Added

TDQS

A4.5/5.0
Behavior5/5

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

Beyond the annotations, it discloses payment behavior ('Most orders are paid at pickup; where the reply is HELD, its `payUrl` is the only payment link this connector issues: give it exactly as returned'), privacy handling ('no phone, email, surname or card is collected', note contact details removed), and the meaning of `isDemo`. This is exactly the kind of context annotations cannot carry, and it does not contradict them.

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?

The most important constraints are front-loaded (what it does, required inputs, business scoping), and the dense business list is justified by the exclusion risk. It is a single long paragraph, so structure could be improved with sentence breaks, but there is little wasted content.

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 non-idempotent, open-world mutation with no output schema, the description covers prerequisites, business eligibility, payment behavior, demo semantics, and privacy handling. It does not describe the full response shape beyond the HELD/payUrl and isDemo cases, but the critical invocation context is present.

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 would be 3, but the description adds real semantics: `items` and `pickupWindowId` must come from biz_menu, the business must be named because the default takes no pickup orders, and only a first name is collected. It adds cross-tool provenance rather than merely repeating field descriptions.

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?

The description opens with a specific verb and resource: 'Places a pickup pre-order at a business served through this connector,' and immediately clarifies that it is the ordering/checkout step after biz_menu. It also scopes which businesses are served, so an agent can distinguish this tool from browsing or status-checking siblings.

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 explicit preconditions ('Needs `items` and a `pickupWindowId` from biz_menu and the collector's first name') and clear exclusions ('Velvet and Clay... Brightpoint Dental... take no pickup orders'). It does not explicitly route the agent to biz_order_status for checking an existing order, which keeps it just short of full when-to-use/when-not/alternatives coverage.

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