Skip to main content
Glama

Build an order link

build_order_link
Read-onlyIdempotent

Checks that the given dishes can be ordered now in those quantities (stock, cutoff, quantity rules, one shared pickup time) and returns a link to the kitchen's own storefront with them already in the cart. It does not place an order or take payment: the customer reviews and submits the order request on the storefront, and the cook confirms it.

Input Schema

NameRequiredDescriptionDefault
itemsYes
kitchenYesKitchen slug or storefront link, e.g. "stephanie-s-bite-of-heaven" or "https://app.stovefront.com/<slug>"

Output Schema

NameRequiredDescriptionDefault
urlYesThe kitchen's storefront with these items in the cart
itemsYes
notesYes
pickupYes
kitchenYes
currencyYes
orderModelYes
instructionYes
estimatedSubtotalCentsYesBefore any delivery fee

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare readOnly/idempotent/non-destructive/closed-world, and the description adds real value on top: it enumerates the four validation rules applied and explains that the downstream ordering happens elsewhere via customer submit and cook confirmation. Undisclosed is what happens when validation fails (error vs. partial result) and whether the generated link expires.

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?

Two sentences, zero filler: the validation/return behavior is front-loaded, and the 'does not place an order' caveat follows immediately where it prevents the most likely misuse.

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?

An output schema exists, so return-value detail is rightly omitted, and annotations cover the safety profile. Given a two-parameter tool, the remaining gap is failure behavior when a dish fails stock/cutoff checks, which an agent would want before calling.

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 50%: kitchen and dish_id carry descriptions, quantity has only min/max bounds. The description mentions quantities being checked against rules and a single shared pickup time, which adds a little semantic framing, but it doesn't explain the quantity limits, the 20-item cap, or what a valid kitchen identifier looks like beyond the schema. Mid-coverage baseline of 3 fits.

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?

The description gives a specific verb+resource: validates dishes/quantities against stock, cutoff, quantity rules and shared pickup time, then returns a storefront link with the cart pre-filled. That is precise enough to tell what the tool produces. It never names a sibling (get_menu, get_pickup_windows, search_kitchens), so the differentiation is implicit rather than stated.

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?

The second sentence sets a clear boundary: this does not place an order or take payment, the customer submits on the storefront and the cook confirms. That is an explicit when-not, which keeps the agent from treating it as a checkout tool. What's missing is routing guidance for the alternatives (e.g. call get_menu first to obtain dish_ids, get_pickup_windows for timing), which the schema only hints at.

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