Skip to main content
Glama
arnouthoebreckx

albert-heijn-be-mcp

Albert Heijn: Remove from Shopping List

ah_remove_from_shopping_list
Destructive

Remove one or more items from an Albert Heijn Belgium shopping list by passing product IDs for product items or free-text names for items without IDs.

Instructions

Remove one or more items from the Albert Heijn Boodschappenlijst. For product items pass product_ids; for free-text items pass names. Get product_ids from ah_get_shopping_list.

Input Schema

NameRequiredDescriptionDefault
namesNoFree-text item names to remove, e.g. ["verse bloemen"]. Use for items without a product ID.
product_idsNoProduct IDs to remove, e.g. [123456, 789012]. Use for product items.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.1.0

TDQS

A3.8/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=false and destructiveHint=true, so the mutation/irreversibility signal is covered structurally. The description adds useful operational context about which identifier type to supply and where to source product_ids, but says nothing about error behavior when an item is absent, partial-success semantics across arrays, or auth requirements.

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?

Three short sentences, front-loaded with the action and scope, then the parameter routing, then the dependency. Nothing is wasted and nothing important is buried.

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 simple two-optional-parameter mutation with no output schema, this is nearly sufficient. The remaining gap is behavior when both arrays are omitted or when only some items match, which an agent would need to know to call it safely.

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 description coverage is 100%, so both parameters are already documented, including the 'use for items without a product ID' guidance. The description largely restates this; its only genuine addition is the cross-tool pointer to ah_get_shopping_list as the source of product_ids.

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?

States a specific verb and resource ('Remove one or more items from the Albert Heijn Boodschappenlijst') with a clear scope of one-or-more, which implicitly distinguishes it from ah_clear_shopping_list. It never names a sibling explicitly, so differentiation relies on inference.

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 concrete routing guidance: pass product_ids for product items, names for free-text items, and directs the agent to ah_get_shopping_list to obtain product_ids. It does not mention the ah_clear_shopping_list alternative or prerequisites such as login, but the primary selection logic is clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.