Skip to main content
Glama

Albert Heijn: Activate Personal Offer

ah_activate_personal_offer
Destructive

Activate selected Albert Heijn Bonus Box personal offers so discounts apply in store and online. Use offer IDs from the personal offers list; already active offers are skipped.

Instructions

Activate one or more of the user's personal Albert Heijn offers (Bonus Box) so the discount applies in the store and online. Get offer ids from ah_get_personal_offers. AH allows only a limited number of activations per week (max_activations) and an activation cannot be undone, so only activate the offers the user chose. Offers that are already active are skipped.

Input Schema

NameRequiredDescriptionDefault
periodNoBonus week of the offers: 'current' (default) or 'next'
offer_idsYesOffer ids from ah_get_personal_offers, e.g. ["575604"]

Output Schema

NameRequiredDescriptionDefault
failedYes
activatedYes
already_activeYes
activated_countYes
max_activationsNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv1.8.0

TDQS

A4.7/5.0
Behavior5/5

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

Annotations already flag destructiveHint=true, but the description goes further: the mandatory weekly activation limit, irreversibility, and the fact that already-active offers are silently skipped. These are consequences an agent could not infer from the annotations or schema.

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 sentences, front-loaded with purpose, then dependency, then constraints. Every clause carries operational weight with no repetition of the title or annotations.

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 destructive two-parameter mutation with full schema coverage and an output schema, nothing essential is missing: purpose, id source, hard limits, irreversibility, and skip behavior are all covered.

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 both offer_ids and the period enum are already documented in the schema, including the id source example. The description reinforces where ids come from but says nothing about the 'next' period option. Baseline 3 is appropriate.

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?

Specific verb+resource+outcome: activate personal AH offers (Bonus Box) so the discount applies in store and online. It is clearly distinguished from the read-only sibling ah_get_personal_offers, which is named as the id source.

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?

Explicitly routes the agent to ah_get_personal_offers for ids, states the weekly activation cap tied to max_activations, warns that activation is irreversible, and instructs to activate only user-chosen offers. Both when-to-use and the governing constraint are given.

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