Skip to main content
Glama
ApparelHub-AI

apparelhub-mcp

Official

describe_listing_attributes

Read-only

Discover channel-defined listing attributes and allowed values before setting them to avoid dropped values from incorrect field names.

Instructions

Discover the channel-defined listing fields you can set — TikTok product attributes, eBay item specifics, WooCommerce product attributes — and what is currently set. READ-ONLY. Call this BEFORE set_listing_attributes or set_channel_settings: the field names and their allowed values are defined by the channel, so guessing them gets the value dropped.

Pass product_uuid for one listing, or integration_uuid alone for the shop-wide settings (compliance answers, the shipping template, and a fallback size chart).

BRAND and the per-listing SIZE CHART are per-PRODUCT, not shop-wide — both describe the blank, so a shop selling two blanks needs two values, and a shop-wide size chart would replace the accurate per-garment one on every other listing at once. Ask for them with product_uuid.

Each field carries value_type, cardinality (single vs multi), free_text (whether a value outside the list is accepted) and requirement. Those are separate on purpose: most fields are enumerated AND accept free text, so neither flag alone tells you what is legal. requirement: "conditional" means the field only becomes required once required_when holds — typically after you answer a related question one particular way.

values is what is LIVE ON THE CHANNEL, which is not the same as what was last written from here: platform auto-fills and merchant edits made directly in the channel's own admin show up here too. That drift is usually the most useful thing in the response.

unset_required lists fields that are required and empty. Those are NOT filled in for you, deliberately — several are legal attestations. Left unset, the channel picks its own default or grades the listing down, so they are worth resolving with the merchant.

⚠️ CHECK resolved_for.resolution when it is present. explicit_override means the merchant chose the category. keyword_match means it was GUESSED from the product name, and a wrong guess means these fields belong to a different kind of product entirely — setting attributes against it is worse than setting none. Treat keyword_match as unverified and say so.

Big value lists are omitted by default and reported as allowed_values_count; pass include_values to expand them (one real field carries 647 values).

A field whose value_type is object takes a STRUCTURE, not a string, and publishes its shape in channel_ref.object_schema. Build the value from that schema — size_chart_measurements is one, and import_size_measurements will fill it for you from the fulfillment provider.

A channel with no listing attributes answers supported: false with an empty fields — a real answer, not an error.

[#b71f15]

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
workspaceNo
store_uuidYes
product_uuidNoThe listing to inspect. Omit for the shop-wide settings.
include_valuesNo'all', or a comma-separated list of field keys, to inline allowed values that are elided by default.
integration_uuidNoWhich connected sales channel. Required when `product_uuid` is omitted; otherwise only needed if the store has more than one channel connected.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.15.2

TDQS

A4.8/5.0
Behavior5/5

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

Annotations only cover readOnlyHint/openWorldHint; the description adds substantial context beyond them: `values` reflects live channel state including platform auto-fills and merchant edits (drift), `unset_required` fields are deliberately not auto-filled, `resolved_for.resolution` keyword_match is an unverified guess, large value lists are elided, and object value_type requires a channel_ref.object_schema structure.

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 the critical ordering rule, and paragraphs are logically grouped by concern (scope, response fields, warnings). It is long and includes a stray trailing artifact token, so it is efficient but not maximally tight.

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?

With no output schema, the description carries the full burden by explaining the return shape (fields, value_type, cardinality, free_text, requirement, values, unset_required, resolved_for) and edge cases like supported:false. An agent has everything needed to call it and interpret results.

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 60%, and the description compensates by explaining product_uuid (one listing) vs integration_uuid (shop-wide) and the include_values expansion. store_uuid and workspace remain only self-evident from the schema, so it stops short of full coverage.

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 and resource: 'Discover the channel-defined listing fields you can set ... and what is currently set.' It explicitly names the sibling tools it complements (set_listing_attributes, set_channel_settings), so an agent can distinguish it from the write-side tools without opening schemas.

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?

Gives an explicit sequencing rule ('Call this BEFORE set_listing_attributes or set_channel_settings') with the reason (guessing field names gets the value dropped), and explains the product_uuid-vs-integration_uuid selection condition for shop-wide vs per-listing scope.

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