Skip to main content
Glama

Server Details

Search and get fashion products recommendations across multiple e-ecom stores

If you are the author of this connector, you can claim ownership by verifying the domain or GitHub account it belongs to. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Uptime
99.9% over 58 days
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL
Repository
vistoya/vistoya-mcp
GitHub Stars
0
Server Listing
Vistoya

TDQS

A4.2/5.0

Scored across 6 tools

Disambiguation5/5

Each tool occupies a distinct niche: discover_* for browsing/search, find_similar_* for seed-based recommendation, get_filters for facet enumeration, and get_product for detail. The descriptions explicitly route ambiguous cases (e.g. plain 'brands like X' → find_similar_brands), leaving no real overlap.

Naming Consistency4/5

All names are snake_case with consistent plural/singular noun handling (brands/products vs product/filters). The verb set mixes discover_, find_, and get_, but the variation is semantically meaningful rather than arbitrary, so it reads predictably.

Tool Count5/5

Six tools is well-scoped for a fashion discovery server, cleanly covering search, similarity, faceting, and detail lookup without redundancy. Every tool earns its place.

Completeness4/5

The read-only discovery lifecycle is well covered: brand/product search, similarity, filters, and product detail. A dedicated brand-detail tool (get_brand) is missing, and there's no cross-entity brand-to-products bridge, but agents can work around both via discover_products.

Available Tools

6 tools
discover_brandsAInspect

Find fashion brands using natural language, structured filters, or both. Best for queries like "Italian streetwear brands", "Scandinavian minimalist brands", "Japanese technical outerwear", "brands with avant-garde tailoring", or qualified similarity such as "brands like Rick Owens for technical outerwear". For a plain "brands like X" request, use find_similar_brands. Country adjectives ("Italian", "Scandinavian", "Nordic", "Japanese", "Iberian", "Benelux") are parsed server-side into shipping-origin filters; you don't need to translate them to ISO codes. query is optional — provide a query, structured filters, or both. Brand country/shipping signals are best-effort and separate from product availability.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum number of brands to return (1-20, default 12).
queryNoNatural language brand search query, e.g. "Italian streetwear brands", "Scandinavian minimalist brands", "Japanese technical outerwear", or qualified similarity such as "brands like Rick Owens for technical outerwear". Use find_similar_brands for a plain "brands like X" request. Similarity seeds must resolve to an active catalog brand or merged alias; unknown or ambiguous seeds return no brands. Country adjectives are parsed server-side — no need to translate them into ISO codes. Optional: when omitted, results are filtered by the structured fields below.
styleNoOptional style filter, e.g. streetwear, minimalist, elegant, avant-garde, techwear.
countryNoOptional shopper location as an ISO-3166-1 alpha-2 country code (e.g. "US", "GB", "DE"). Recorded for analytics and used to improve future offer geo-matching. Omit if unknown — absence preserves current behavior.
price_tierNoOptional public brand price-tier focus filter: budget, mid, premium, or luxury. Input "budget" maps to the brand-level output tier "value".
gender_focusNoOptional brand audience focus filters.
category_focusNoOptional brand category focus filters, e.g. ["clothing", "shoes"].
ships_from_countryNoOptional ISO-3166-1 alpha-2 country filter for best-effort store shipping origin, e.g. "IT", "US", "GB". Lowercase input is accepted and normalized to uppercase. This is not the same as brand origin.

Output Schema

ParametersJSON Schema
NameRequiredDescription
brandsYes

TDQS

A4.5/5.0
Behavior4/5

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

Annotations declare readOnlyHint=false and destructiveHint=false, and the description usefully explains the non-obvious side effect behind that: `country` is "recorded for analytics and used to improve future offer geo-matching." It also discloses failure behavior (unknown or ambiguous similarity seeds return no brands) and that country/shipping signals are best-effort. It does not cover pagination or rate behavior, so not a 5.

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?

The lead sentence front-loads purpose and the alternative-tool rule follows immediately, which is the right order. It is somewhat long and re-lists example queries that already appear verbatim in the `query` schema description, so it is not maximally tight.

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?

An output schema exists, so return values need no explanation. The description covers input modes, the sibling alternative, server-side parsing behavior, and best-effort caveats — enough for an agent to invoke it correctly. Only minor gaps remain (e.g. no hint about result breadth beyond the `limit` default).

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 description coverage is 100%, so the baseline is 3. The description adds cross-parameter semantics the schema cannot: `query` is optional and either a query, structured filters, or both may be supplied, plus the caveat that country adjectives map to shipping-origin filters rather than brand origin. That is genuine added meaning, though it partly repeats schema examples.

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 ("Find fashion brands") and explicitly scopes the input modes (natural language, structured filters, or both). It also names the sibling it is not (find_similar_brands) so an agent can route without opening either schema.

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 concrete query examples, an explicit exclusion ("For a plain 'brands like X' request, use find_similar_brands"), and the rule that country adjectives are parsed server-side rather than needing ISO translation. When-to-use and when-to-use-something-else are both covered.

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

discover_productsInspect

Find fashion products using natural language and/or structured filters. Provide a query for semantic ranking via multimodal text+image embeddings ("oversized wool coat", "black leather jacket", "minimalist gold jewelry", "linen shirt for a beach wedding under $200") — best for open-ended discovery. Keep queries concrete: noun-led with up to one or two modifiers works best ("summer linen shirt" beats "breathable linen shirt perfect for summer"). Provide only structured filters (category, brand, colors, gender, price, etc.) for pure browse — results are recency-ranked and paginate cleanly. Combine both for filtered semantic search. At least one of query or a filter must be provided.

Example calls (notice the sparse filter population — descriptive attributes stay in query, not in structured fields):

  • "linen wedding guest dress under $200" → {query: "linen wedding guest dress", gender: "women", max_price: 200, materials: ["linen"]}

  • "wool coat under $300" → {query: "wool coat", gender: "women", max_price: 300, materials: ["wool"]}

  • "browse women's black dresses $100-$300" → {gender: "women", category: "clothing/dresses", colors: ["black"], min_price: 100, max_price: 300}

  • "Acne Studios outerwear" → {query: "outerwear", brand: "Acne Studios", gender: "women"}

Returns compact product cards: AI-generated summary, price, images, tags, and compact availability by color/size; variant price differences are nested under the availability dimension that determines price. For merchant description, store info, SKU-level variants, exact variant prices, and all product images, call get_product with a product ID from these results. Multi-currency prices supported (e.g. "under 200 zł" or min_price=200 + currency="PLN"); returned prices render in the requested currency when provided.

ParametersJSON Schema
NameRequiredDescriptionDefault
pageNoPage number. Increment while the response indicates another page. Vistoya results are returned first; a later page may continue with an optional external catalog after owned results are exhausted. Provider failure does not fail normal discovery.
brandNoFilter by brand name
limitNoPage size (1-20, default 12)
queryNoNatural language search query — be descriptive for best results. Can include price with currency symbols (e.g. "white coat under 200 zł") which will be parsed automatically. Optional: when omitted, results are filtered by the structured fields below and ranked by recency. Provide either a query, structured filters, or both.
colorsNoFilter by lowercase colors: e.g. ["black", "navy", "sage green"]
genderNoGender filter.
seasonNoSeason filter. Soft descriptor — set ONLY when the user explicitly named the season. The `query` field already captures season semantically; over-specifying is the most common cause of zero-result calls.
stylesNoStyle filter (OR semantics — a product matches if any of its `styles` values is in this list). Pass a single value to filter by one style ("styles": ["minimalist"]); pass several to span a related set ("styles": ["basics", "minimalist", "preppy", "sportswear"] for a "Casual" bucket). Soft descriptor — set ONLY when the user explicitly named one or more styles. The `query` field already captures style semantically; over-specifying is the most common cause of zero-result calls.
countryNoOptional shopper location as an ISO-3166-1 alpha-2 country code (e.g. "US", "GB", "DE"). Recorded for analytics and used to improve future offer geo-matching. Omit if unknown — absence preserves current behavior.
patternNoPattern filter (e.g. solid, stripe, checked, floral). Soft descriptor — set ONLY when the user explicitly named the pattern. Default for unspecified ("solid") leaks into queries and zeros the candidate set; omit when unsure.
sleevesNoSleeve style filter. Soft descriptor — set ONLY when the user explicitly named the sleeve style. Do not infer from category or query.
categoryNoCategory slug, e.g. "clothing", "clothing/jackets", "clothing/jackets/bomber-jackets". Accepts last-segment shortcuts when unambiguous — e.g. "loafers-and-slip-ons" resolves the same as "shoes/loafers-and-slip-ons", and "bomber-jackets" resolves the same as "clothing/jackets/bomber-jackets".
currencyNoISO 4217 currency code for min_price/max_price (e.g. "PLN", "EUR", "GBP"). Prices are converted to USD for filtering. Omit for USD.
necklineNoNeckline filter. Soft descriptor — set ONLY when the user explicitly named the neckline. Do not infer from category or query.
occasionNoOccasion filter. Soft descriptor — set ONLY when the user explicitly named the occasion. The `query` field already captures occasion semantically; over-specifying is the most common cause of zero-result calls.
materialsNoFilter by lowercase materials: e.g. ["cotton", "silk", "leather"]
max_priceNoMaximum price (in the currency specified by "currency" param, or USD if omitted)
min_priceNoMinimum price (in the currency specified by "currency" param, or USD if omitted)
silhouetteNoSilhouette/fit filter (e.g. fitted, slim, regular, relaxed, oversized). Soft descriptor — set ONLY when the user explicitly named the fit. The `query` field already captures silhouette semantically; over-specifying is the most common cause of zero-result calls.
color_matchNoColor matching mode. "any" (default): product has at least one of the queried colors. "exact": product has at least one image where the ONLY colors are the queried colors — use for mono-color searches like "all black".any
store_domainNoFilter by store domain (e.g. "thereformation.com"). Accepts forms with protocol, www, locale subdomain, or path — they are normalized to match the registered store.
exclude_colorsNoExclude products with these colors: e.g. ["white", "beige"]
is_sustainableNoTrue when the user explicitly wants products with sustainability claims.
available_sizesNoFilter by available size labels, e.g. ["s", "m", "38"].
exclude_materialsNoExclude products with these materials: e.g. ["polyester", "nylon"]

Output Schema

ParametersJSON Schema
NameRequiredDescription
pageYes
productsYes
marketUrlYes
hasNextPageYes
externalCatalogStatusNo
find_similar_brandsAInspect

Given an active catalog brand name or merged alias, find similar brands using brand-profile vectors generated during product indexing. Unknown or ambiguous seeds return no brands. Returns up to 20 brands.

ParametersJSON Schema
NameRequiredDescriptionDefault
brandYesBrand name (case-insensitive), e.g. "Rick Owens".
limitNo
countryNoOptional shopper location as an ISO-3166-1 alpha-2 country code (e.g. "US", "GB", "DE"). Recorded for analytics and used to improve future offer geo-matching. Omit if unknown — absence preserves current behavior.

Output Schema

ParametersJSON Schema
NameRequiredDescription
brandsYes

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already declare destructiveHint=false and openWorldHint=false, but the description adds the important failure mode that unknown or ambiguous seeds return no brands. It does not explain why readOnlyHint is false for what reads like a lookup tool (the country parameter's analytics/geo-matching note hints at a write), which is an unexplained behavioral trait.

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?

Three tight sentences with the seed requirement front-loaded and no filler. The closing sentence is partially redundant with the schema's limit maximum of 20, which keeps it from being maximally efficient.

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?

An output schema exists, so return structure need not be explained. The description covers the seed requirement, the empty-result case, and the result cap, which is sufficient for a 3-parameter lookup tool; it does not clarify how similarity is ranked or whether country affects results.

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 67%: brand and country are well documented in the schema, while limit is not. The description only says 'up to 20 brands,' which restates the schema's limit maximum=20 rather than adding semantics such as whether similarity is ranked or scored.

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+resource (find similar brands) and adds the mechanism (brand-profile vectors generated during product indexing), which distinguishes it from discover_brands and find_similar_products in the sibling set. It is clear what the tool returns, though it never names a sibling explicitly.

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

Usage Guidelines3/5

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

The description implies when it is usable by requiring an 'active catalog brand name or merged alias' as the seed, and it warns that unknown or ambiguous seeds return nothing. However, it gives no guidance on when to prefer this over discover_brands or find_similar_products, leaving the routing decision to inference.

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

find_similar_productsAInspect

Given a product ID, find similar products across the entire catalog. Useful for "more like this" recommendations or finding alternatives. Returns compact product cards, not full variant detail; call get_product for SKU-level variants, exact variant prices, merchant description, store info, and all images. Returns page and hasNextPage. Returns up to 20 results per page, paginated (max 3 pages).

ParametersJSON Schema
NameRequiredDescriptionDefault
pageNoPage number (1-3)
limitNoPage size (1-20)
countryNoOptional shopper location as an ISO-3166-1 alpha-2 country code (e.g. "US", "GB", "DE"). Recorded for analytics and used to improve future offer geo-matching. Omit if unknown — absence preserves current behavior.
currencyNoISO 4217 currency code to render prices in (e.g. "GBP", "EUR", "USD"). Defaults to USD. Stored native prices are preferred; falls back to FX conversion when a merchant-set price isn't available.
product_idYesThe product ID (from a previous search result)

Output Schema

ParametersJSON Schema
NameRequiredDescription
pageYes
productsYes
hasNextPageYes

TDQS

A4.4/5.0
Behavior4/5

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

Annotation readOnlyHint=false is unusual for a lookup tool, but the description does not claim read-only behavior, so there is no contradiction; the schema's country param also hints at analytics recording. Beyond the annotations, the description discloses the return granularity ('compact product cards, not full variant detail') and the pagination contract (max 3 pages, up to 20 per page), which materially affects how an agent plans calls.

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?

Three sentences, front-loaded with the purpose before the routing advice, and the return/pagination contract comes last. It is tight overall, though the pagination limits slightly duplicate what the schema already states.

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?

An output schema exists so return values need not be spelled out, yet the description still characterizes the card-level payload and routes variant-level needs to get_product. Combined with the pagination bounds and country/currency behavior in the schema, an agent has everything needed to call and interpret this tool.

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 page, limit, country, currency and product_id are all already documented in the schema; the default 3 applies. The description's 'up to 20 results per page, paginated (max 3 pages)' restates limits the schema already encodes and adds no new syntax or format guidance.

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 (find) and resource (similar products) with an explicit scope: 'across the entire catalog' versus a single product. It also contrasts itself with the sibling get_product, so an agent can pick between them without opening either schema.

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 concrete use cases ('more like this' recommendations, finding alternatives) and names the alternative tool plus the exact condition that selects it: call get_product for SKU-level variants, exact variant prices, merchant description, store info, and images. This is explicit when-to-use and when-to-use-something-else guidance.

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

get_filtersAInspect

Returns available filter values in the catalog. By default returns categoryTree plus brands, colors, materials, genders, occasions, seasons, styles, silhouettes, currencies, and price range. Use "fields" to request only specific dimensions — faster and less data. "categoryTree" is a flat DFS-ordered list of { value, label } entries; hierarchy is encoded in the value slug (e.g. "clothing/jackets/bomber-jackets"), parents appear before descendants, and every value can be passed directly to discover_products.category. Use "brand_search" to search brands by prefix instead of listing all. Pass "gender" to scope categoryTree to that gender (women/men/girls/boys); omit to see the merged union.

ParametersJSON Schema
NameRequiredDescriptionDefault
fieldsNoWhich filter dimensions to return. Omit for all. Example: ["categoryTree", "colors", "priceRange"]
genderNoScope categoryTree to this gender. Omit to return the merged union across women/men/girls/boys.
countryNoOptional shopper location as an ISO-3166-1 alpha-2 country code (e.g. "US", "GB", "DE"). Recorded for analytics and used to improve future offer geo-matching. Omit if unknown — absence preserves current behavior.
brand_pageNoPage number for brands (12 per page). Use with or without brand_search.
brand_searchNoSearch brands by name (case-insensitive, prefix matches first). Only affects the brands field.

Output Schema

ParametersJSON Schema
NameRequiredDescription
brandsNo
colorsNo
stylesNo
gendersNo
seasonsNo
patternsNo
materialsNo
occasionsNo
currenciesNo
priceRangeNo
silhouettesNo
categoryTreeNo

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already provide readOnlyHint=false, openWorldHint=false, and destructiveHint=false. The description adds meaningful behavior beyond that: country is recorded for analytics and offer geo-matching, fields is faster/less data, brand_search uses prefix matching, and categoryTree has a flat DFS structure with slugs encoding hierarchy.

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?

The description is front-loaded with the core purpose and then spends each sentence on actionable details. It is dense but not bloated; every clause about defaults, fields, categoryTree, brand_search, and gender earns its place.

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 an output schema and 100% schema description coverage, the description does not need to document return values exhaustively. It still supplies the key structural detail about categoryTree and covers the main behavioral and parameter-selection context an agent needs to call the tool correctly.

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 already 100%, so the baseline would be 3. The description adds real semantic value for fields, categoryTree ordering, brand_search behavior, and gender scoping, though it does not add much beyond the schema for brand_page or country.

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?

The description states a specific verb and resource: it returns available filter values in the catalog. It clearly distinguishes the tool from siblings like discover_products and discover_brands by focusing on filter dimensions such as categoryTree, brands, and colors rather than products or brand details.

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?

It gives useful when-to-use guidance for parameters: use fields for faster/less data, use brand_search to search brands by prefix, and pass gender to scope categoryTree. However, it does not explicitly say when to choose get_filters over sibling tools, so it stops short of full alternative routing.

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

get_productAInspect

Get the detailed response for a specific product ID. Use this after discover_products or find_similar_products when you need merchant description, store info, all images, SKU-level availability variants, SKU, colorKey/size matrix, exact variant prices/compareAtPrice in the requested currency, and the direct link to purchase.

ParametersJSON Schema
NameRequiredDescriptionDefault
countryNoOptional shopper location as an ISO-3166-1 alpha-2 country code (e.g. "US", "GB", "DE"). Recorded for analytics and used to improve future offer geo-matching. Omit if unknown — absence preserves current behavior.
currencyNoISO 4217 currency code to render prices in (e.g. "GBP", "EUR", "USD"). Defaults to USD.
product_idYesThe product ID (from a previous search result)

Output Schema

ParametersJSON Schema
NameRequiredDescription
idYes
tagsNo
brandNo
priceYes
storeNo
titleYes
colorsNo
genderNo
imagesNo
inStockNo
sleevesNo
summaryNo
categoryNo
closuresNo
currencyYes
necklineNo
materialsNo
productUrlNo
silhouetteNo
availabilityYes
isSustainableNo
compareAtPriceNo
relevanceScoreNo
similarityScoreNo
merchantDescriptionNo

TDQS

A3.9/5.0
Behavior3/5

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

Annotations already declare destructiveHint=false, openWorldHint=false, and readOnlyHint=false, so the safety profile is covered by structured data. The description adds one useful behavioral note — prices are rendered in the requested currency — but says nothing about permissions, rate limits, caching, or error behavior (e.g. an unknown product_id). The readOnlyHint=false is mildly surprising for a 'Get', though it is consistent with the country parameter being 'recorded for analytics', so no hard contradiction.

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 sentences, front-loaded with the core action and followed by the routing/need clause — no preamble or filler. The second sentence is a long comma-separated inventory of return fields that slightly bloats the text, some of which the output schema already covers.

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?

With an output schema present, an annotations block, and 100% schema coverage on three parameters, the description only needs to convey purpose and positioning, which it does. Minor gaps remain around failure modes (invalid ID, unsupported currency) and whether repeated calls are cheap, but nothing an agent needs to invoke it correctly is missing.

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 product_id, currency, and country are already fully documented in the schema with format patterns and defaults. The description only reinforces currency behavior ('exact variant prices/compareAtPrice in the requested currency') and adds no syntax or constraint detail beyond the schema, so the baseline 3 applies.

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 ('Get the detailed response for a specific product ID') and immediately distinguishes itself from siblings by naming discover_products and find_similar_products as the upstream calls that produce the ID. The enumeration of returned content (merchant description, store info, images, SKU variants, price/compareAtPrice, purchase link) makes the resource unambiguous versus get_filters or the discover_* tools.

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?

It gives an explicit trigger ('Use this after discover_products or find_similar_products when you need ...'), which effectively routes the agent between search-stage and detail-stage tools. What it lacks is a when-not: nothing tells the agent to avoid this call when no product ID exists yet or to prefer a batch/search tool instead.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 1 tool update
    • Changeddiscover_products2 fields changed
      • changedInput schema / properties / page / description
        Previous value: -"Page number."New value: +"Page number. Increment while the response indicates another page. Vistoya results are returned first; a later page may continue with an optional external catalog after owned results are exhausted. Provider failure does not fail normal discovery."
      • addedOutput schema / properties / externalCatalogStatus
        Added value: +{
        +  "enum": [
        +    "temporarily_unavailable",
        +    "continuation_expired"
        +  ],
        +  "type": "string"
        +}
  2. 2 tool updates
    • Changeddiscover_brands2 fields changed
      • changedInput schema / properties / limit / default
        Previous value: -8New value: +12
      • changedInput schema / properties / limit / description
        Previous value: -"Maximum number of brands to return (1-20, default 8)."New value: +"Maximum number of brands to return (1-20, default 12)."
    • Changedfind_similar_brands1 field changed
      • changedInput schema / properties / limit / default
        Previous value: -8New value: +12
  3. 2 tool updates
    • Changeddiscover_brands6 fields changed
      • changedInput schema / properties / price_tier / description
        Previous value: -"Optional brand price-tier focus filter."New value: +"Optional public brand price-tier focus filter: budget, mid, premium, or luxury. Input \"budget\" maps to the brand-level output tier \"value\"."
      • changedInput schema / properties / query / description
        Previous value: -"Natural language brand search query, e.g. \"Italian streetwear brands\", \"Scandinavian minimalist brands\", \"Japanese technical outerwear\", or \"brands like Rick Owens\". Country adjectives are parsed server-side — no need to translate them into ISO codes. Optional: when omitted, results are filtered by the structured fields below."New value: +"Natural language brand search query, e.g. \"Italian streetwear brands\", \"Scandinavian minimalist brands\", \"Japanese technical outerwear\", or qualified similarity such as \"brands like Rick Owens for technical outerwear\". Use find_similar_brands for a plain \"brands like X\" request. Similarity seeds must resolve to an active catalog brand or merged alias; unknown or ambiguous seeds return no brands. Country adjectives are parsed server-side — no need to translate them into ISO codes. Optional: when omitted, results are filtered by the structured fields below."
      • changedInput schema / properties / ships_from_country / description
        Previous value: -"Optional ISO-3166 alpha-2 country filter for best-effort store shipping origin, e.g. \"IT\", \"US\", \"GB\". This is not the same as brand origin."New value: +"Optional ISO-3166-1 alpha-2 country filter for best-effort store shipping origin, e.g. \"IT\", \"US\", \"GB\". Lowercase input is accepted and normalized to uppercase. This is not the same as brand origin."
      • removedInput schema / properties / ships_from_country / maxLength
        Removed value: -2
      • removedInput schema / properties / ships_from_country / minLength
        Removed value: -2
      • addedInput schema / properties / ships_from_country / pattern
        Added value: +"^[A-Za-z]{2}$"
    • Changedfind_similar_brands1 field changed
      • changedInput schema / properties / limit / default
        Previous value: -12New value: +8
  4. 6 tool updates
    • Changeddiscover_brands1 field changed
      • addedInput schema / properties / country
        Added value: +{
        +  "description": "Optional shopper location as an ISO-3166-1 alpha-2 country code (e.g. \"US\", \"GB\", \"DE\"). Recorded for analytics and used to improve future offer geo-matching. Omit if unknown — absence preserves current behavior.",
        +  "pattern": "^[A-Za-z]{2}$",
        +  "type": "string"
        +}
    • Changeddiscover_products1 field changed
      • addedInput schema / properties / country
        Added value: +{
        +  "description": "Optional shopper location as an ISO-3166-1 alpha-2 country code (e.g. \"US\", \"GB\", \"DE\"). Recorded for analytics and used to improve future offer geo-matching. Omit if unknown — absence preserves current behavior.",
        +  "pattern": "^[A-Za-z]{2}$",
        +  "type": "string"
        +}
    • Changedfind_similar_brands1 field changed
      • addedInput schema / properties / country
        Added value: +{
        +  "description": "Optional shopper location as an ISO-3166-1 alpha-2 country code (e.g. \"US\", \"GB\", \"DE\"). Recorded for analytics and used to improve future offer geo-matching. Omit if unknown — absence preserves current behavior.",
        +  "pattern": "^[A-Za-z]{2}$",
        +  "type": "string"
        +}
    • Changedfind_similar_products1 field changed
      • addedInput schema / properties / country
        Added value: +{
        +  "description": "Optional shopper location as an ISO-3166-1 alpha-2 country code (e.g. \"US\", \"GB\", \"DE\"). Recorded for analytics and used to improve future offer geo-matching. Omit if unknown — absence preserves current behavior.",
        +  "pattern": "^[A-Za-z]{2}$",
        +  "type": "string"
        +}
    • Changedget_filters1 field changed
      • addedInput schema / properties / country
        Added value: +{
        +  "description": "Optional shopper location as an ISO-3166-1 alpha-2 country code (e.g. \"US\", \"GB\", \"DE\"). Recorded for analytics and used to improve future offer geo-matching. Omit if unknown — absence preserves current behavior.",
        +  "pattern": "^[A-Za-z]{2}$",
        +  "type": "string"
        +}
    • Changedget_product1 field changed
      • addedInput schema / properties / country
        Added value: +{
        +  "description": "Optional shopper location as an ISO-3166-1 alpha-2 country code (e.g. \"US\", \"GB\", \"DE\"). Recorded for analytics and used to improve future offer geo-matching. Omit if unknown — absence preserves current behavior.",
        +  "pattern": "^[A-Za-z]{2}$",
        +  "type": "string"
        +}
  5. 1 tool update
    • Changeddiscover_products9 fields changed
      • changedInput schema / properties / gender / description
        Previous value: -"Gender filter"New value: +"Gender filter."
      • changedInput schema / properties / neckline / description
        Previous value: -"Neckline filter"New value: +"Neckline filter. Soft descriptor — set ONLY when the user explicitly named the neckline. Do not infer from category or query."
      • changedInput schema / properties / occasion / description
        Previous value: -"Occasion filter"New value: +"Occasion filter. Soft descriptor — set ONLY when the user explicitly named the occasion. The `query` field already captures occasion semantically; over-specifying is the most common cause of zero-result calls."
      • changedInput schema / properties / pattern / description
        Previous value: -"Pattern filter (e.g. solid, stripe, checked, floral)"New value: +"Pattern filter (e.g. solid, stripe, checked, floral). Soft descriptor — set ONLY when the user explicitly named the pattern. Default for unspecified (\"solid\") leaks into queries and zeros the candidate set; omit when unsure."
      • changedInput schema / properties / season / description
        Previous value: -"Season filter"New value: +"Season filter. Soft descriptor — set ONLY when the user explicitly named the season. The `query` field already captures season semantically; over-specifying is the most common cause of zero-result calls."
      • changedInput schema / properties / silhouette / description
        Previous value: -"Silhouette/fit filter (e.g. fitted, slim, regular, relaxed, oversized)"New value: +"Silhouette/fit filter (e.g. fitted, slim, regular, relaxed, oversized). Soft descriptor — set ONLY when the user explicitly named the fit. The `query` field already captures silhouette semantically; over-specifying is the most common cause of zero-result calls."
      • changedInput schema / properties / sleeves / description
        Previous value: -"Sleeve style filter"New value: +"Sleeve style filter. Soft descriptor — set ONLY when the user explicitly named the sleeve style. Do not infer from category or query."
      • removedInput schema / properties / style
        Removed value: -{
        -  "description": "Style filter (e.g. minimalist, streetwear, elegant, y2k, techwear)",
        -  "enum": [
        -    "minimalist",
        -    "streetwear",
        -    "elegant",
        -    "avant-garde",
        -    "grunge",
        -    "vintage",
        -    "y2k",
        -    "techwear",
        -    "workwear",
        -    "preppy",
        -    "punk",
        -    "sportswear",
        -    "coquette",
        -    "quiet-luxury",
        -    "old-money",
        -    "gorpcore",
        -    "goth",
        -    "basics",
        -    "boho",
        -    "glam",
        -    "edgy",
        -    "classic",
        -    "western"
        -  ],
        -  "type": "string"
        -}
      • changedInput schema / properties / styles / description
        Previous value: -"Multi-style filter (OR). A product matches if any of its `styles` values is in this list. Use instead of `style` to span a related set, e.g. [\"basics\",\"minimalist\",\"preppy\",\"sportswear\"] for a \"Casual\" bucket. Combined with `style` if both are provided."New value: +"Style filter (OR semantics — a product matches if any of its `styles` values is in this list). Pass a single value to filter by one style (\"styles\": [\"minimalist\"]); pass several to span a related set (\"styles\": [\"basics\", \"minimalist\", \"preppy\", \"sportswear\"] for a \"Casual\" bucket). Soft descriptor — set ONLY when the user explicitly named one or more styles. The `query` field already captures style semantically; over-specifying is the most common cause of zero-result calls."
  6. 6 tool updates
    • Changeddiscover_brands1 field changed
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "http://json-schema.org/draft-07/schema#",
        +  "additionalProperties": false,
        +  "properties": {
        +    "brands": {
        +      "items": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "about": {
        +            "type": "string"
        +          },
        +          "categories": {
        +            "items": {
        +              "type": "string"
        +            },
        +            "type": "array"
        +          },
        +          "countryOfOrigin": {
        +            "type": "string"
        +          },
        +          "domains": {
        +            "items": {
        +              "type": "string"
        +            },
        +            "type": "array"
        +          },
        +          "genders": {
        +            "items": {
        +              "type": "string"
        +            },
        +            "type": "array"
        +          },
        +          "materials": {
        +            "items": {
        +              "type": "string"
        +            },
        +            "type": "array"
        +          },
        +          "name": {
        +            "type": "string"
        +          },
        +          "priceTier": {
        +            "type": "string"
        +          },
        +          "shipsFromCountries": {
        +            "items": {
        +              "type": "string"
        +            },
        +            "type": "array"
        +          },
        +          "similarityScore": {
        +            "type": "number"
        +          },
        +          "styles": {
        +            "items": {
        +              "type": "string"
        +            },
        +            "type": "array"
        +          }
        +        },
        +        "required": [
        +          "name"
        +        ],
        +        "type": "object"
        +      },
        +      "type": "array"
        +    }
        +  },
        +  "required": [
        +    "brands"
        +  ],
        +  "type": "object"
        +}
    • Changeddiscover_products4 fields changed
      • changedInput schema / properties / limit / default
        Previous value: -10New value: +12
      • changedInput schema / properties / limit / description
        Previous value: -"Page size (1-10, default 10)"New value: +"Page size (1-20, default 12)"
      • changedInput schema / properties / limit / maximum
        Previous value: -10New value: +20
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "http://json-schema.org/draft-07/schema#",
        +  "additionalProperties": false,
        +  "properties": {
        +    "hasNextPage": {
        +      "type": "boolean"
        +    },
        +    "marketUrl": {
        +      "type": "string"
        +    },
        +    "page": {
        +      "type": "integer"
        +    },
        +    "products": {
        +      "items": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "availability": {
        +            "additionalProperties": false,
        +            "properties": {
        +              "color": {
        +                "items": {
        +                  "additionalProperties": false,
        +                  "properties": {
        +                    "availableSizes": {
        +                      "items": {
        +                        "additionalProperties": false,
        +                        "properties": {
        +                          "inStock": {
        +                            "type": "boolean"
        +                          },
        +                          "label": {
        +                            "type": "string"
        +                          }
        +                        },
        +                        "required": [
        +                          "label",
        +                          "inStock"
        +                        ],
        +                        "type": "object"
        +                      },
        +                      "type": "array"
        +                    },
        +                    "color": {
        +                      "type": "string"
        +                    },
        +                    "colorKey": {
        +                      "type": "string"
        +                    },
        +                    "compareAtPrice": {
        +                      "type": [
        +                        "number",
        +                        "null"
        +                      ]
        +                    },
        +                    "compareAtPriceRange": {
        +                      "$ref": "#/properties/products/items/properties/availability/properties/color/items/properties/priceRange"
        +                    },
        +                    "currency": {
        +                      "type": "string"
        +                    },
        +                    "imageUrls": {
        +                      "items": {
        +                        "type": "string"
        +                      },
        +                      "type": "array"
        +                    },
        +                    "inStock": {
        +                      "type": "boolean"
        +                    },
        +                    "label": {
        +                      "type": "string"
        +                    },
        +                    "price": {
        +                      "type": "number"
        +                    },
        +                    "priceRange": {
        +                      "additionalProperties": false,
        +                      "properties": {
        +                        "currency": {
        +                          "type": "string"
        +                        },
        +                        "max": {
        +                          "type": "number"
        +                        },
        +                        "min": {
        +                          "type": "number"
        +                        }
        +                      },
        +                      "required": [
        +                        "min",
        +                        "max",
        +                        "currency"
        +                      ],
        +                      "type": "object"
        +                    }
        +                  },
        +                  "required": [
        +                    "colorKey",
        +                    "color",
        +                    "label",
        +                    "availableSizes"
        +                  ],
        +                  "type": "object"
        +                },
        +                "type": "array"
        +              },
        +              "dimensions": {
        +                "items": {
        +                  "enum": [
        +                    "color",
        +                    "size"
        +                  ],
        +                  "type": "string"
        +                },
        +                "type": "array"
        +              },
        +              "sizes": {
        +                "items": {
        +                  "additionalProperties": false,
        +                  "properties": {
        +                    "compareAtPrice": {
        +                      "type": [
        +                        "number",
        +                        "null"
        +                      ]
        +                    },
        +                    "compareAtPriceRange": {
        +                      "$ref": "#/properties/products/items/properties/availability/properties/color/items/properties/priceRange"
        +                    },
        +                    "currency": {
        +                      "type": "string"
        +                    },
        +                    "inStock": {
        +                      "type": "boolean"
        +                    },
        +                    "label": {
        +                      "type": "string"
        +                    },
        +                    "price": {
        +                      "type": "number"
        +                    },
        +                    "priceRange": {
        +                      "$ref": "#/properties/products/items/properties/availability/properties/color/items/properties/priceRange"
        +                    }
        +                  },
        +                  "required": [
        +                    "label",
        +                    "inStock"
        +                  ],
        +                  "type": "object"
        +                },
        +                "type": "array"
        +              },
        +              "variants": {
        +                "items": {
        +                  "additionalProperties": false,
        +                  "properties": {
        +                    "colorKey": {
        +                      "type": "string"
        +                    },
        +                    "compareAtPrice": {
        +                      "type": [
        +                        "number",
        +                        "null"
        +                      ]
        +                    },
        +                    "currency": {
        +                      "type": "string"
        +                    },
        +                    "imageUrl": {
        +                      "type": "string"
        +                    },
        +                    "inStock": {
        +                      "type": "boolean"
        +                    },
        +                    "price": {
        +                      "type": "number"
        +                    },
        +                    "size": {
        +                      "type": "string"
        +                    },
        +                    "sku": {
        +                      "type": "string"
        +                    }
        +                  },
        +                  "required": [
        +                    "inStock"
        +                  ],
        +                  "type": "object"
        +                },
        +                "type": "array"
        +              }
        +            },
        +            "required": [
        +              "dimensions",
        +              "color",
        +              "sizes"
        +            ],
        +            "type": "object"
        +          },
        +          "brand": {
        +            "type": "string"
        +          },
        +          "compareAtPrice": {
        +            "type": [
        +              "number",
        +              "null"
        +            ]
        +          },
        +          "currency": {
        +            "type": "string"
        +          },
        +          "id": {
        +            "type": "string"
        +          },
        +          "images": {
        +            "items": {
        +              "type": "string"
        +            },
        +            "type": "array"
        +          },
        +          "inStock": {
        +            "type": "boolean"
        +          },
        +          "price": {
        +            "type": [
        +              "number",
        +              "null"
        +            ]
        +          },
        +          "productUrl": {
        +            "type": "string"
        +          },
        +          "summary": {
        +            "type": "string"
        +          },
        +          "title": {
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "id",
        +          "title",
        +          "price",
        +          "currency",
        +          "availability"
        +        ],
        +        "type": "object"
        +      },
        +      "type": "array"
        +    }
        +  },
        +  "required": [
        +    "products",
        +    "page",
        +    "hasNextPage",
        +    "marketUrl"
        +  ],
        +  "type": "object"
        +}
    • Changedfind_similar_brands3 fields changed
      • changedInput schema / properties / limit / default
        Previous value: -10New value: +12
      • changedInput schema / properties / limit / maximum
        Previous value: -10New value: +20
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "http://json-schema.org/draft-07/schema#",
        +  "additionalProperties": false,
        +  "properties": {
        +    "brands": {
        +      "items": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "about": {
        +            "type": "string"
        +          },
        +          "categories": {
        +            "items": {
        +              "type": "string"
        +            },
        +            "type": "array"
        +          },
        +          "countryOfOrigin": {
        +            "type": "string"
        +          },
        +          "domains": {
        +            "items": {
        +              "type": "string"
        +            },
        +            "type": "array"
        +          },
        +          "genders": {
        +            "items": {
        +              "type": "string"
        +            },
        +            "type": "array"
        +          },
        +          "materials": {
        +            "items": {
        +              "type": "string"
        +            },
        +            "type": "array"
        +          },
        +          "name": {
        +            "type": "string"
        +          },
        +          "priceTier": {
        +            "type": "string"
        +          },
        +          "shipsFromCountries": {
        +            "items": {
        +              "type": "string"
        +            },
        +            "type": "array"
        +          },
        +          "similarityScore": {
        +            "type": "number"
        +          },
        +          "styles": {
        +            "items": {
        +              "type": "string"
        +            },
        +            "type": "array"
        +          }
        +        },
        +        "required": [
        +          "name"
        +        ],
        +        "type": "object"
        +      },
        +      "type": "array"
        +    }
        +  },
        +  "required": [
        +    "brands"
        +  ],
        +  "type": "object"
        +}
    • Changedfind_similar_products4 fields changed
      • changedInput schema / properties / limit / default
        Previous value: -10New value: +12
      • changedInput schema / properties / limit / description
        Previous value: -"Page size (1-10)"New value: +"Page size (1-20)"
      • changedInput schema / properties / limit / maximum
        Previous value: -10New value: +20
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "http://json-schema.org/draft-07/schema#",
        +  "additionalProperties": false,
        +  "properties": {
        +    "hasNextPage": {
        +      "type": "boolean"
        +    },
        +    "page": {
        +      "type": "integer"
        +    },
        +    "products": {
        +      "items": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "availability": {
        +            "additionalProperties": false,
        +            "properties": {
        +              "color": {
        +                "items": {
        +                  "additionalProperties": false,
        +                  "properties": {
        +                    "availableSizes": {
        +                      "items": {
        +                        "additionalProperties": false,
        +                        "properties": {
        +                          "inStock": {
        +                            "type": "boolean"
        +                          },
        +                          "label": {
        +                            "type": "string"
        +                          }
        +                        },
        +                        "required": [
        +                          "label",
        +                          "inStock"
        +                        ],
        +                        "type": "object"
        +                      },
        +                      "type": "array"
        +                    },
        +                    "color": {
        +                      "type": "string"
        +                    },
        +                    "colorKey": {
        +                      "type": "string"
        +                    },
        +                    "compareAtPrice": {
        +                      "type": [
        +                        "number",
        +                        "null"
        +                      ]
        +                    },
        +                    "compareAtPriceRange": {
        +                      "$ref": "#/properties/products/items/properties/availability/properties/color/items/properties/priceRange"
        +                    },
        +                    "currency": {
        +                      "type": "string"
        +                    },
        +                    "imageUrls": {
        +                      "items": {
        +                        "type": "string"
        +                      },
        +                      "type": "array"
        +                    },
        +                    "inStock": {
        +                      "type": "boolean"
        +                    },
        +                    "label": {
        +                      "type": "string"
        +                    },
        +                    "price": {
        +                      "type": "number"
        +                    },
        +                    "priceRange": {
        +                      "additionalProperties": false,
        +                      "properties": {
        +                        "currency": {
        +                          "type": "string"
        +                        },
        +                        "max": {
        +                          "type": "number"
        +                        },
        +                        "min": {
        +                          "type": "number"
        +                        }
        +                      },
        +                      "required": [
        +                        "min",
        +                        "max",
        +                        "currency"
        +                      ],
        +                      "type": "object"
        +                    }
        +                  },
        +                  "required": [
        +                    "colorKey",
        +                    "color",
        +                    "label",
        +                    "availableSizes"
        +                  ],
        +                  "type": "object"
        +                },
        +                "type": "array"
        +              },
        +              "dimensions": {
        +                "items": {
        +                  "enum": [
        +                    "color",
        +                    "size"
        +                  ],
        +                  "type": "string"
        +                },
        +                "type": "array"
        +              },
        +              "sizes": {
        +                "items": {
        +                  "additionalProperties": false,
        +                  "properties": {
        +                    "compareAtPrice": {
        +                      "type": [
        +                        "number",
        +                        "null"
        +                      ]
        +                    },
        +                    "compareAtPriceRange": {
        +                      "$ref": "#/properties/products/items/properties/availability/properties/color/items/properties/priceRange"
        +                    },
        +                    "currency": {
        +                      "type": "string"
        +                    },
        +                    "inStock": {
        +                      "type": "boolean"
        +                    },
        +                    "label": {
        +                      "type": "string"
        +                    },
        +                    "price": {
        +                      "type": "number"
        +                    },
        +                    "priceRange": {
        +                      "$ref": "#/properties/products/items/properties/availability/properties/color/items/properties/priceRange"
        +                    }
        +                  },
        +                  "required": [
        +                    "label",
        +                    "inStock"
        +                  ],
        +                  "type": "object"
        +                },
        +                "type": "array"
        +              },
        +              "variants": {
        +                "items": {
        +                  "additionalProperties": false,
        +                  "properties": {
        +                    "colorKey": {
        +                      "type": "string"
        +                    },
        +                    "compareAtPrice": {
        +                      "type": [
        +                        "number",
        +                        "null"
        +                      ]
        +                    },
        +                    "currency": {
        +                      "type": "string"
        +                    },
        +                    "imageUrl": {
        +                      "type": "string"
        +                    },
        +                    "inStock": {
        +                      "type": "boolean"
        +                    },
        +                    "price": {
        +                      "type": "number"
        +                    },
        +                    "size": {
        +                      "type": "string"
        +                    },
        +                    "sku": {
        +                      "type": "string"
        +                    }
        +                  },
        +                  "required": [
        +                    "inStock"
        +                  ],
        +                  "type": "object"
        +                },
        +                "type": "array"
        +              }
        +            },
        +            "required": [
        +              "dimensions",
        +              "color",
        +              "sizes"
        +            ],
        +            "type": "object"
        +          },
        +          "brand": {
        +            "type": "string"
        +          },
        +          "category": {
        +            "type": "string"
        +          },
        +          "closures": {
        +            "items": {
        +              "type": "string"
        +            },
        +            "type": "array"
        +          },
        +          "colors": {
        +            "items": {
        +              "type": "string"
        +            },
        +            "type": "array"
        +          },
        +          "compareAtPrice": {
        +            "type": [
        +              "number",
        +              "null"
        +            ]
        +          },
        +          "currency": {
        +            "type": "string"
        +          },
        +          "gender": {
        +            "type": "string"
        +          },
        +          "id": {
        +            "type": "string"
        +          },
        +          "images": {
        +            "items": {
        +              "type": "string"
        +            },
        +            "type": "array"
        +          },
        +          "inStock": {
        +            "type": "boolean"
        +          },
        +          "isSustainable": {
        +            "type": "boolean"
        +          },
        +          "materials": {
        +            "items": {
        +              "type": "string"
        +            },
        +            "type": "array"
        +          },
        +          "neckline": {
        +            "type": "string"
        +          },
        +          "price": {
        +            "type": [
        +              "number",
        +              "null"
        +            ]
        +          },
        +          "productUrl": {
        +            "type": "string"
        +          },
        +          "relevanceScore": {
        +            "type": "number"
        +          },
        +          "silhouette": {
        +            "type": "string"
        +          },
        +          "similarityScore": {
        +            "type": "number"
        +          },
        +          "sleeves": {
        +            "type": "string"
        +          },
        +          "summary": {
        +            "type": "string"
        +          },
        +          "tags": {
        +            "items": {
        +              "type": "string"
        +            },
        +            "type": "array"
        +          },
        +          "title": {
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "id",
        +          "title",
        +          "price",
        +          "currency",
        +          "availability"
        +        ],
        +        "type": "object"
        +      },
        +      "type": "array"
        +    }
        +  },
        +  "required": [
        +    "page",
        +    "hasNextPage",
        +    "products"
        +  ],
        +  "type": "object"
        +}
    • Changedget_filters1 field changed
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "http://json-schema.org/draft-07/schema#",
        +  "additionalProperties": false,
        +  "properties": {
        +    "brands": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    },
        +    "categoryTree": {
        +      "items": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "label": {
        +            "type": "string"
        +          },
        +          "value": {
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "value",
        +          "label"
        +        ],
        +        "type": "object"
        +      },
        +      "type": "array"
        +    },
        +    "colors": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    },
        +    "currencies": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    },
        +    "genders": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    },
        +    "materials": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    },
        +    "occasions": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    },
        +    "patterns": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    },
        +    "priceRange": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "max": {
        +          "type": [
        +            "number",
        +            "null"
        +          ]
        +        },
        +        "min": {
        +          "type": [
        +            "number",
        +            "null"
        +          ]
        +        }
        +      },
        +      "required": [
        +        "min",
        +        "max"
        +      ],
        +      "type": "object"
        +    },
        +    "seasons": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    },
        +    "silhouettes": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    },
        +    "styles": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    }
        +  },
        +  "type": "object"
        +}
    • Changedget_product1 field changed
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "http://json-schema.org/draft-07/schema#",
        +  "additionalProperties": false,
        +  "properties": {
        +    "availability": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "color": {
        +          "items": {
        +            "additionalProperties": false,
        +            "properties": {
        +              "availableSizes": {
        +                "items": {
        +                  "additionalProperties": false,
        +                  "properties": {
        +                    "inStock": {
        +                      "type": "boolean"
        +                    },
        +                    "label": {
        +                      "type": "string"
        +                    }
        +                  },
        +                  "required": [
        +                    "label",
        +                    "inStock"
        +                  ],
        +                  "type": "object"
        +                },
        +                "type": "array"
        +              },
        +              "color": {
        +                "type": "string"
        +              },
        +              "colorKey": {
        +                "type": "string"
        +              },
        +              "compareAtPrice": {
        +                "type": [
        +                  "number",
        +                  "null"
        +                ]
        +              },
        +              "compareAtPriceRange": {
        +                "$ref": "#/properties/availability/properties/color/items/properties/priceRange"
        +              },
        +              "currency": {
        +                "type": "string"
        +              },
        +              "imageUrls": {
        +                "items": {
        +                  "type": "string"
        +                },
        +                "type": "array"
        +              },
        +              "inStock": {
        +                "type": "boolean"
        +              },
        +              "label": {
        +                "type": "string"
        +              },
        +              "price": {
        +                "type": "number"
        +              },
        +              "priceRange": {
        +                "additionalProperties": false,
        +                "properties": {
        +                  "currency": {
        +                    "type": "string"
        +                  },
        +                  "max": {
        +                    "type": "number"
        +                  },
        +                  "min": {
        +                    "type": "number"
        +                  }
        +                },
        +                "required": [
        +                  "min",
        +                  "max",
        +                  "currency"
        +                ],
        +                "type": "object"
        +              }
        +            },
        +            "required": [
        +              "colorKey",
        +              "color",
        +              "label",
        +              "availableSizes"
        +            ],
        +            "type": "object"
        +          },
        +          "type": "array"
        +        },
        +        "dimensions": {
        +          "items": {
        +            "enum": [
        +              "color",
        +              "size"
        +            ],
        +            "type": "string"
        +          },
        +          "type": "array"
        +        },
        +        "sizes": {
        +          "items": {
        +            "additionalProperties": false,
        +            "properties": {
        +              "compareAtPrice": {
        +                "type": [
        +                  "number",
        +                  "null"
        +                ]
        +              },
        +              "compareAtPriceRange": {
        +                "$ref": "#/properties/availability/properties/color/items/properties/priceRange"
        +              },
        +              "currency": {
        +                "type": "string"
        +              },
        +              "inStock": {
        +                "type": "boolean"
        +              },
        +              "label": {
        +                "type": "string"
        +              },
        +              "price": {
        +                "type": "number"
        +              },
        +              "priceRange": {
        +                "$ref": "#/properties/availability/properties/color/items/properties/priceRange"
        +              }
        +            },
        +            "required": [
        +              "label",
        +              "inStock"
        +            ],
        +            "type": "object"
        +          },
        +          "type": "array"
        +        },
        +        "variants": {
        +          "items": {
        +            "additionalProperties": false,
        +            "properties": {
        +              "colorKey": {
        +                "type": "string"
        +              },
        +              "compareAtPrice": {
        +                "type": [
        +                  "number",
        +                  "null"
        +                ]
        +              },
        +              "currency": {
        +                "type": "string"
        +              },
        +              "imageUrl": {
        +                "type": "string"
        +              },
        +              "inStock": {
        +                "type": "boolean"
        +              },
        +              "price": {
        +                "type": "number"
        +              },
        +              "size": {
        +                "type": "string"
        +              },
        +              "sku": {
        +                "type": "string"
        +              }
        +            },
        +            "required": [
        +              "inStock"
        +            ],
        +            "type": "object"
        +          },
        +          "type": "array"
        +        }
        +      },
        +      "required": [
        +        "dimensions",
        +        "color",
        +        "sizes"
        +      ],
        +      "type": "object"
        +    },
        +    "brand": {
        +      "type": "string"
        +    },
        +    "category": {
        +      "type": "string"
        +    },
        +    "closures": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    },
        +    "colors": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    },
        +    "compareAtPrice": {
        +      "type": [
        +        "number",
        +        "null"
        +      ]
        +    },
        +    "currency": {
        +      "type": "string"
        +    },
        +    "gender": {
        +      "type": "string"
        +    },
        +    "id": {
        +      "type": "string"
        +    },
        +    "images": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    },
        +    "inStock": {
        +      "type": "boolean"
        +    },
        +    "isSustainable": {
        +      "type": "boolean"
        +    },
        +    "materials": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    },
        +    "merchantDescription": {
        +      "type": "string"
        +    },
        +    "neckline": {
        +      "type": "string"
        +    },
        +    "price": {
        +      "type": [
        +        "number",
        +        "null"
        +      ]
        +    },
        +    "productUrl": {
        +      "type": "string"
        +    },
        +    "relevanceScore": {
        +      "type": "number"
        +    },
        +    "silhouette": {
        +      "type": "string"
        +    },
        +    "similarityScore": {
        +      "type": "number"
        +    },
        +    "sleeves": {
        +      "type": "string"
        +    },
        +    "store": {
        +      "anyOf": [
        +        {
        +          "additionalProperties": false,
        +          "properties": {
        +            "domain": {
        +              "type": "string"
        +            },
        +            "name": {
        +              "type": "string"
        +            }
        +          },
        +          "required": [
        +            "name",
        +            "domain"
        +          ],
        +          "type": "object"
        +        },
        +        {
        +          "type": "null"
        +        }
        +      ]
        +    },
        +    "summary": {
        +      "type": "string"
        +    },
        +    "tags": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    },
        +    "title": {
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "id",
        +    "title",
        +    "price",
        +    "currency",
        +    "availability"
        +  ],
        +  "type": "object"
        +}
  7. 1 tool update
    • Changeddiscover_brands1 field changed
      • changedInput schema / properties / query / description
        Previous value: -"Natural language brand search query, e.g. \"Italian streetwear brands\", \"minimalist Scandinavian brands\", or \"brands like Rick Owens\". Optional: when omitted, results are filtered by the structured fields below. Provide either a query, structured filters, or both."New value: +"Natural language brand search query, e.g. \"Italian streetwear brands\", \"Scandinavian minimalist brands\", \"Japanese technical outerwear\", or \"brands like Rick Owens\". Country adjectives are parsed server-side — no need to translate them into ISO codes. Optional: when omitted, results are filtered by the structured fields below."

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    C
    maintenance
    Enables users to interact with an e-commerce shopping assistant using natural language to search products, check prices and ratings, compare items, and get personalized recommendations.
    -
  • A
    license
    A
    quality
    A
    maintenance
    Enables AI agents to search a catalog of roughly 960,000 fashion products across about 10,000 Iranian online and Instagram shops, comparing prices and discounts, checking per-color and per-size stock, browsing categories and curated listings, and finding similar items at other shops. It also lets agents assess shop trust signals such as ratings and buyer surveys, surface flash sales and discount codes, and read blog style guides, all read-only with no login or ordering.
    14
    2
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.