Skip to main content
Glama

Your AI Kitchen (YAK)

Shopping lists

shopping_list
Destructive

Build and edit shopping lists. Reads: list, get. Writes (blocked on read-only accounts): generate (from menu_id, merges amounts), add, categorize, check, remove, share; delete is permanent (ask, then confirm=true). ALWAYS pass exclude (what to leave off) and aisles. Show it grouped by aisle. Returns the list {id, title, sections:[{section, items:[{id, name, amount, checked}]}], remaining, total} or {lists:[...]}.

Input Schema

NameRequiredDescriptionDefault
idNoList id (from list)
newNogenerate: make a 2nd list for a menu that has one (else refreshes it)
itemsNoadd: "2 lb chicken" or {name, amount, aisle}; categorize: [{id, aisle}]
titleNoList title
actionYesWhat to do
aislesNo{item name: aisle}; aisle one of Produce|Meat & Seafood|Dairy & Eggs|Bakery|Pantry|Spices & Seasonings|Frozen|Beverages & Alcohol|Other
checkedNocheck: true = got it, false = uncheck; default true
confirmNoMust be true for delete, only after the user agreed
excludeNoItems to leave off (e.g. pantry staples the user has), or []
menu_idNogenerate: menu id
item_idsNocheck/remove: item ids from get
visibilityNoshare: private or family

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.8/5.0
Behavior5/5

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

Annotations declare destructiveHint=true and readOnlyHint=false, but the description adds the specifics that matter: delete is permanent and gated behind a user confirmation, writes fail on read-only accounts, generate merges amounts and 'new' creates a second list rather than refreshing. These are non-obvious side effects and preconditions not derivable from the annotations.

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?

Front-loaded with purpose and action inventory, then rules, then return format — a sensible ordering with no filler. It is densely telegraphic ('Reads: list, get.'), which is efficient but slightly cryptic on first read.

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

Completeness5/5

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

For a 12-parameter, nested-object tool with no output schema, the description supplies the missing piece: the exact return shape ({id, title, sections[...], remaining, total} or {lists:[...]}). Combined with the write-gating and confirmation rules, an agent has everything needed to invoke it safely.

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 baseline is 3; the description still adds value by tying parameters to actions ('generate (from menu_id)', 'exclude (what to leave off)', 'aisles') and by surfacing the return shape. It stops short of explaining interactions such as how item_ids differ for check vs remove, leaving some of that to the schema.

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 the resource (shopping lists) and then enumerates the exact operations, split into reads (list, get) and writes (generate, add, categorize, check, remove, share, delete). This is specific enough that an agent can map any intended operation onto this tool without consulting siblings like manage_menu or manage_categories.

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

Usage Guidelines5/5

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

Routes explicitly: reads vs writes, writes blocked on read-only accounts, delete requires asking the user first then confirm=true, and 'ALWAYS pass exclude and aisles'. The mandatory-call-shape guidance ('exclude = what to leave off', 'show grouped by aisle') tells the agent not just when to use it but how to use it correctly.

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