Skip to main content
Glama

Pickup menu and times

biz_menu
Read-only

The PICKUP MENU for a business served through this connector: items, prices, allergens, notice needed, and the pickup windows on a date (default today). Businesses with a pickup menu 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) have no pickup menu here. longbeachbrunch sells cookies, bars, pastry, brunch boxes, platters, cakes and coffee. This tool only reads. Orders are placed with a separate tool, biz_order, which takes item ids and a pickup window id from this reply exactly as written; right now it takes pickup orders for Long Beach Brunch Bakehouse (longbeachbrunch). Pickup only. An 'unstated' hoursByDay row is NEVER spoken as closed.

Input Schema

NameRequiredDescriptionDefault
dateNoOptional YYYY-MM-DD; today in the business timezone.
businessNoWhich business, by name or id. Available: Long Beach Brunch Bakehouse (longbeachbrunch). The default (velvetandclay) has no pickup menu here, so NAME THE BUSINESS: an omitted argument is refused. An unclear name is REFUSED with the list, not answered about a different business.
businessIdNoAlias for `business`; ignored when `business` is given.

Output Schema

NameRequiredDescriptionDefault
okNo
openNo
errorNo
foundNo
notesNo
isDemoNo
messageNo
servedByNo
availableNo
sourceUrlNo
businessIdNo
categoriesNo
closedReasonNo
pickupWindowsNo
openWindowCountNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed3 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) has no pickup menu here, 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) has no pickup menu here, 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 / date / description
      Previous value: -"YYYY-MM-DD, defaults to today in the business timezone. Pickup windows for this date ride along with the menu."New value: +"Optional YYYY-MM-DD; today in the business timezone."
  2. Changed1 schema field changed
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "additionalProperties": true,
      +  "anyOf": [
      +    {
      +      "required": [
      +        "found",
      +        "businessId",
      +        "categories",
      +        "pickupWindows"
      +      ]
      +    },
      +    {
      +      "properties": {
      +        "ok": {
      +          "const": false
      +        }
      +      },
      +      "required": [
      +        "ok"
      +      ]
      +    },
      +    {
      +      "properties": {
      +        "found": {
      +          "const": false
      +        }
      +      },
      +      "required": [
      +        "found"
      +      ]
      +    },
      +    {
      +      "required": [
      +        "error"
      +      ]
      +    }
      +  ],
      +  "properties": {
      +    "available": {
      +      "items": {
      +        "type": "string"
      +      },
      +      "type": "array"
      +    },
      +    "businessId": {
      +      "type": "string"
      +    },
      +    "categories": {
      +      "items": {
      +        "type": "object"
      +      },
      +      "type": "array"
      +    },
      +    "closedReason": {
      +      "type": [
      +        "string",
      +        "null"
      +      ]
      +    },
      +    "error": {
      +      "type": "string"
      +    },
      +    "found": {
      +      "type": "boolean"
      +    },
      +    "isDemo": {
      +      "type": "boolean"
      +    },
      +    "message": {
      +      "type": "string"
      +    },
      +    "notes": {
      +      "items": {
      +        "type": "string"
      +      },
      +      "type": "array"
      +    },
      +    "ok": {
      +      "type": "boolean"
      +    },
      +    "open": {
      +      "type": "boolean"
      +    },
      +    "openWindowCount": {
      +      "type": "integer"
      +    },
      +    "pickupWindows": {
      +      "items": {
      +        "type": "object"
      +      },
      +      "type": "array"
      +    },
      +    "servedBy": {
      +      "type": "string"
      +    },
      +    "sourceUrl": {
      +      "type": [
      +        "string",
      +        "null"
      +      ]
      +    }
      +  },
      +  "type": "object"
      +}
  3. 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) has no pickup menu here, 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) has no pickup menu here, 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."
  4. 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) has no pickup menu here, 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."
  5. Changed1 schema field changed
    • changedInput schema / properties / business / description
      Previous value: -"Which business, BY NAME OR BY ID. Optional, defaults to velvetandclay. Available: Velvet and Clay (velvetandclay), Brightpoint Dental (brightpointdental), Long Beach Brunch Bakehouse (longbeachbrunch), Make Collectives (makecollectives), Kristin Dunn Bookbinding and Design (kdbooks). 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. 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."
  6. Changed1 schema field changed
    • changedInput schema / properties / business / description
      Previous value: -"Which business, BY NAME OR BY ID. Optional, defaults to velvetandclay. Available: Velvet and Clay (velvetandclay), Brightpoint Dental (brightpointdental), Long Beach Brunch Bakehouse (longbeachbrunch), Make Collectives (makecollectives). 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. Optional, defaults to velvetandclay. Available: Velvet and Clay (velvetandclay), Brightpoint Dental (brightpointdental), Long Beach Brunch Bakehouse (longbeachbrunch), Make Collectives (makecollectives), Kristin Dunn Bookbinding and Design (kdbooks). 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."
  7. Changed1 schema field changed
    • changedInput schema / properties / business / description
      Previous value: -"Which business, BY NAME OR BY ID. Optional, defaults to velvetandclay. Available: Velvet and Clay (velvetandclay), Brightpoint Dental (brightpointdental), Long Beach Brunch Bakehouse (longbeachbrunch). 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. Optional, defaults to velvetandclay. Available: Velvet and Clay (velvetandclay), Brightpoint Dental (brightpointdental), Long Beach Brunch Bakehouse (longbeachbrunch), Make Collectives (makecollectives). 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."
  8. First observed

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, and the description restates 'only reads', which is redundant. It adds genuine value beyond that: pickup-only, default date is today in the business timezone, and the output rule that an 'unstated' hoursByDay row must never be spoken as closed — a behavioral nuance the annotations cannot convey.

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

Conciseness3/5

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

Scope and the ordering alternative are front-loaded, which is good, but the middle sags into a catalogue of four unrelated businesses with no pickup menu and a product list for the bakery. Some of that guards against wrong-business queries, yet it reads as unfiltered dump and dilutes the actionable guidance.

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 values needn't be explained, and the description still covers the one output pitfall agents need (the 'unstated' hoursByDay rule). Combined with the read-only annotation, it gives an agent enough to call this correctly.

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 100%, so all three parameters are already documented, including the refusal-on-omitted-business rule and the businessId alias. The description reinforces the date default but does not add syntax or semantics beyond the schema, so the baseline 3 applies.

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?

Names a specific resource (the PICKUP MENU for a business) and enumerates what it returns: items, prices, allergens, notice needed, pickup windows. It explicitly separates itself from biz_order, which is the sibling an agent might otherwise confuse it with.

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?

Clearly states the complementary flow — read here, order via biz_order using item and window ids from this reply — and warns that Velvet and Clay, Brightpoint Dental, Make Collectives and Kristin Dunn Bookbinding have no pickup menu here. It never routes the agent to other read siblings such as biz_availability or biz_storefront, so the alternative coverage is partial rather than complete.

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