Skip to main content
Glama

Update product (offer) availability by id

toggle_product_availability
Destructive

Update a product's availability to mark it as purchasable or unavailable. Provide the product ID and availability value to enable or disable buying.

Instructions

Rate limit: 100 requests / 10 seconds per shop. See Rate limiting.

Updates a product (offer) availability

Input Schema

NameRequiredDescriptionDefault
accountNoExact private shop profile label; not a provider identity or authorization proof.
confirmNoSet true only when the user asked for exactly this action.
payloadNoComplete current native JSON body; cannot mix with native body flags or payload_file.
availableNo
product_idYesNative productId
payload_fileNoAbsolute regular non-symlink native JSON body file, at most1MiB. Cannot mix with payload or body flags.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv3.0.0
    • changedInput schema / properties / confirm / description
      Previous value: -"Explicit approval for this exact provider effect or local private-file operation."New value: +"Set true only when the user asked for exactly this action."
  2. First observedv2.0.0

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare destructiveHint=true, idempotentHint=false, and openWorldHint=true, so the safety profile is largely covered. The description adds genuinely useful context beyond that: a concrete rate limit of 100 requests / 10 seconds per shop. But it never explains what 'availability' means here (product vs offer), nor the side effects of taking an item unavailable.

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?

Two short lines with no filler; the rate limit constraint is front-loaded and the purpose follows. Nothing is wasted, though the sparseness arguably reflects under-specification rather than disciplined concision.

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

Completeness3/5

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

For a destructive mutation with 6 parameters, a nested request body, and no output schema, the description is thin. It covers the rate limit but omits what happens on success/failure, whether 'confirm' is required, and how the payload and top-level fields interact. Annotations carry the safety profile, which keeps this at a minimum-viable 3.

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 83%, above the 80% threshold, so the schema already documents most parameters and the baseline is 3. The description adds no parameter meaning at all, and notably does not clarify the ambiguity between the top-level 'available' boolean and the nested 'payload.available', or the role of 'confirm'.

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 states a specific verb and resource: 'Updates a product (offer) availability.' That is clear enough for an agent to know it mutates availability state. However, it does nothing to distinguish this tool from close siblings like update_product_state, archive_product, or update_collection_availability, so sibling differentiation is absent.

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

Usage Guidelines2/5

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

There is no when-to-use guidance, no prerequisites, and no named alternative. The only contextual note is a rate limit, which is operational rather than a usage rule. An agent gets no help deciding between this and update_product_state or archive_product.

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

Deploy Server

Other Tools