Skip to main content
Glama

Products Update

tiendanube_products_update
Idempotent

Update product metadata such as name, description, tags, images, SEO fields, and visibility; use variant tools for price, stock, or SKU changes.

Instructions

Update product metadata. Does NOT modify variants; use the variants tools for price/stock/SKU. HTTP: PUT /products/{id} Required scope: write_products API version: 2025-03

Input Schema

NameRequiredDescriptionDefault
idYesProduct ID
nameNoProduct name — i18n object keyed by language code, e.g. {"es": "...", "pt": "...", "en": "..."}
tagsNoComma-separated tags
brandNoBrand
handleNoURL slug — i18n object keyed by language code, e.g. {"es": "...", "pt": "...", "en": "..."}
imagesNoImages: [{src:'https://...', position, alt}]
variantsNoVariants. Price/SKU/weight/stock live here, not on the product. Each: {price, promotional_price, stock, stock_management, sku, weight, width, height, depth, values:[{es:'M'}], inventory_levels:[{location_id,stock}]}. Infinite stock = stock null
publishedNoWhether visible in the storefront
seo_titleNoSEO title — i18n object keyed by language code, e.g. {"es": "...", "pt": "...", "en": "..."}
video_urlNoVideo URL
attributesNoUp to 3 variant attribute names, each an i18n object (e.g. [{"es":"Talle"},{"es":"Color"}])
categoriesNoCategory IDs
descriptionNoProduct description (HTML allowed) — i18n object keyed by language code, e.g. {"es": "...", "pt": "...", "en": "..."}
free_shippingNoFree shipping
seo_descriptionNoSEO description — i18n object keyed by language code, e.g. {"es": "...", "pt": "...", "en": "..."}
additional_fieldsNoExtra raw API body fields not covered above; merged into the request body
requires_shippingNoWhether the product needs shipping

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.0

TDQS

A3.9/5.0
Behavior3/5

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

Annotations already declare non-read-only, non-destructive, idempotent, open-world, so credit goes to what the description adds: the required OAuth scope (write_products), the underlying HTTP verb, and the pinned API version. What it omits is material for a 17-parameter mutation: whether omitted fields are left untouched or cleared (PUT semantics), and the consequence of sending a partial body.

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?

Four short lines, front-loaded with the purpose and the critical negative constraint before the operational metadata. No sentence is padding; the HTTP path, scope, and API version each carry distinct value.

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 17-parameter nested mutation with no output schema, the definition is serviceable but thin on the two things an agent most needs: update semantics (full replace vs partial merge, and what happens to unspecified fields) and the reconciliation of the 'variants' property with the stated exclusion. Everything else is adequately covered by the rich schema.

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% and every one of the 17 parameters carries an inline description, so the schema already does the heavy lifting and the baseline of 3 applies. The description adds no field-level syntax, defaults, or merge behavior beyond the variants exclusion.

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 a specific verb+resource ('Update product metadata') and immediately bounds the scope with an explicit negative ('Does NOT modify variants'). An agent can distinguish it from the variants_update / variants_batch_update siblings without opening any schema.

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?

Names the alternative explicitly ('use the variants tools for price/stock/SKU'), which is the single most likely misrouting for this tool. Minor deduction: the schema nonetheless exposes a 'variants' array with price/stock/SKU guidance, so the exclusion is not fully consistent with the tool's own contract, leaving an agent unsure whether passing variants routes them elsewhere.

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