Skip to main content
Glama

Server Details

Custom metal-print storefront: catalog search, product details, shipping, reviews. Read-only.

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
100.0% over 81 days
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL
ChatGPT
–
Claude
–

TDQS

A3.7/5.0

Scored across 11 tools

Disambiguation3/5

Most tools target distinct customer needs, but the two `_task` variants duplicate `check_photo_compatibility` and `search_products` closely. The descriptions explain task polling, yet agents may still struggle to choose between the synchronous and task-based versions for the same operation.

Naming Consistency4/5

All names use snake_case with a clear verb_noun pattern such as `search_products`, `get_shipping_estimate`, and `start_configuration`. The `_task` suffix is a minor deviation but is applied consistently to the two task-based tools.

Tool Count4/5

Eleven tools is a reasonable size for a store-support server covering search, compatibility, comparison, reviews, shipping, policies, and configuration. The count is slightly inflated by the two duplicated task-based variants.

Completeness4/5

The pre-purchase customer journey is well covered: product discovery, detailed product info, comparisons, recommendations, reviews, shipping estimates, policies, photo compatibility, and configurator handoff. Notable gaps are post-purchase order tracking or cart/checkout operations, though ordering may be handled externally via the configurator URL.

Available Tools

11 tools
check_photo_compatibilityCheck Photo CompatibilityA
Read-onlyIdempotent
Inspect

Check whether supplied pixel dimensions meet the print-contract 120 DPI hard gate used by upload. Returns per-size required_px. Crop and artefacts are still reviewed in the configurator. With a delivery country, also lists market-visible wall formats. If width/height are omitted, reports that suitability cannot be verified without dimensions.

NameRequiredDescriptionDefault
widthNoPhoto width in pixels
formatNoImage format (e.g. 'jpeg', 'png', 'heic', 'webp')
heightNoPhoto height in pixels
countryNoDelivery country as ISO alpha-2 or alpha-3. Required before market-visible print formats can be shown.

Output Schema

NameRequiredDescription
errorNo
photoNo
marketNo
countryNo
messageNo
format_noteNo
launch_gateNo
recommendationNo
review_factorsNo
_response_budgetNo
assessment_statusNo
configurator_noteNo
resolution_statusNo
recommended_formatNo
resolution_by_sizeNo
available_print_formatsNo
compatibility_determinedNo
supported_upload_formatsNo

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare readOnly/idempotent/closed-world, and the description adds substantive domain behavior beyond them: the 120 DPI hard gate, per-size required_px output, country-gated market-visible formats, and the explicit fallback when dimensions are omitted. The remaining gap is that the role of 'format' on the outcome is never described.

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?

Four tight sentences, front-loaded with the gate and the return payoff, with the degradation case last. Dense terminology ('per-size required_px', 'print-contract') is compact but still readable; nothing is padding.

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, the description need not enumerate return values, and annotations cover the safety profile, so coverage is strong. The only hole is the unaddressed 'format' parameter, leaving one input's effect on the compatibility verdict unexplained.

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 100%, so baseline is 3; the description goes further by explaining that width/height are gating inputs and that omitting them yields an 'cannot be verified' result, and that country unlocks market-visible wall formats. It doesn't explain what the format parameter affects, so it isn't fully additive.

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 names a specific verb and resource ('Check whether supplied pixel dimensions meet the print-contract 120 DPI hard gate') and scopes it precisely. It also distinguishes itself from the configurator sibling by noting that crop and artefacts are reviewed there, so an agent can separate this from the start_configuration/upload flow.

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 clear context for use (pre-upload gate check) and states what is out of scope ('crop and artefacts are still reviewed in the configurator'), plus a conditional path for supplying country. It does not explicitly name a named alternative tool to call instead, which keeps it below a 5.

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

check_photo_compatibility_taskCheck Photo Compatibility TaskBInspect

Task-based photo-resolution check against the print-contract 120 DPI hard gate used by upload. Omit width/height to report that suitability cannot be verified without dimensions.

NameRequiredDescriptionDefault
widthNoPhoto width in pixels
formatNoImage format (e.g. 'jpeg', 'png', 'heic', 'webp')
heightNoPhoto height in pixels
countryNoDelivery country as ISO alpha-2 or alpha-3. Required before market-visible print formats can be shown.

TDQS

B3.3/5.0
Behavior3/5

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

With no annotations provided, the description must carry the full behavioral burden. It usefully discloses the 120 DPI hard gate and the behavior when width/height are omitted: suitability cannot be verified. However, it leaves important behavior undisclosed, such as whether this is an asynchronous background task, whether it has side effects, and what the report returns.

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?

Two short, dense sentences with no fluff. The core rule is front-loaded, and the omit-instruction is concise but meaningful. Every word earns its place.

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

Completeness2/5

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

The tool has no annotations and no output schema, so the description must compensate. It does not explain what the returned report contains, how the task is executed, or how it relates to 'check_photo_compatibility'. For a task-named tool with up to four parameters, these are notable gaps.

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 value beyond the schema by explaining that width/height should be omitted to signal that verification is impossible without dimensions, giving the agent actionable parameter-level knowledge not available from the schema alone.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly names the resource (photo compatibility) and the specific action (resolution check) against a concrete, meaningful rule: the print-contract 120 DPI hard gate used by upload. It does not, however, explicitly differentiate this from the sibling tool 'check_photo_compatibility', other than the 'Task-based' prefix.

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

Usage Guidelines2/5

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

The description gives no guidance on when to use this task variant versus the non-task sibling 'check_photo_compatibility', nor does it state when this tool is preferred. 'Used by upload' provides some context, and the omit-width/height instruction explains input behavior, but not tool selection.

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

compare_productsCompare ProductsA
Read-onlyIdempotent
Inspect

Compare Bolot Studio products — Legacy Print vs Cinematic Print, or Bolot vs competitors (Displate, Canvas, Framed prints).

NameRequiredDescriptionDefault
localeNoLocale code for localized URLs (e.g. 'en', 'pl', 'de')
countryNoISO 3166-1 alpha-2 or alpha-3 country code for localized URLs (e.g. 'PL', 'DE', 'GB', 'DEU', 'GBR')
product_handleNoProduct handle for competitor comparison (defaults to 'the-legacy-print')
comparison_typeYesType of comparison

Output Schema

NameRequiredDescription
errorNo
marketNo
messageNo
productNo
categoryNo
comparisonNo
legacy_printNo
sustainabilityNo
vs_competitorsNo
cinematic_printNo
differentiatorsNo
shared_featuresNo
_response_budgetNo
quality_assuranceNo
wall_art_launch_gateNo

TDQS

A3.5/5.0
Behavior2/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint=false, so the safety profile is covered. The description adds no behavioral context beyond that — nothing about what the comparison returns, how locale/country affect the result, or that competitor comparisons are limited to the named brands.

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?

A single front-loaded sentence with no filler; the two supported comparison modes are the first thing read. Nothing is wasted.

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, full schema coverage and read-only annotations, the description only needs to convey scope and it does. Minor gap: it never notes that the tool produces localized comparison page URLs keyed by locale/country, which is the main reason those two parameters exist.

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 100%, so the baseline is 3, but the description genuinely adds meaning by naming the concrete subject of each enum value (Legacy vs Cinematic, and Bolot vs Displate/Canvas/Framed). That lets an agent pick comparison_type without reverse-engineering the enum tokens.

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 ('Compare') and resource ('Bolot Studio products') and enumerates the two comparison families, which map directly onto the legacy_vs_cinematic and vs_competitors enum values. It does not explicitly distinguish itself from siblings like search_products or get_product_recommendations, so it stops short of a 5.

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 to use it (when you need a Legacy vs Cinematic comparison or a Bolot vs competitor comparison), but it never states exclusions or points to an alternative tool. An agent must infer that SEO/comparison-page content is the intent rather than generic product lookup.

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

get_product_recommendationsGet Product RecommendationsB
Read-onlyIdempotent
Inspect

Get personalized product and variant recommendations based on customer intent, budget, recipient profile, room type, and lighting conditions.

NameRequiredDescriptionDefault
budgetNoMaximum budget in EUR
intentYesCustomer intent: gift, home_decor, valentines, birthday_50, memorial, desk_display, home_cinema, etc.
localeNoLocale code for localized URLs (e.g. 'en', 'pl', 'de')
countryNoISO 3166-1 alpha-2 or alpha-3 country code for geo-pricing (e.g. 'PL', 'DE', 'GB', 'DEU', 'GBR')
lightingNoRoom lighting: bright, dim, mixed
room_typeNoRoom type: living_room, bedroom, office, bathroom, kitchen, entertainment_room
recipient_profileNoWho is this for: partner, mother, father, man_who_has_everything, woman, couple, pet_lover, photographer, movie_fan

Output Schema

NameRequiredDescription
noteNo
errorNo
messageNo
room_adviceNo
finish_adviceNo
total_matchesNo
recommendationsNo
_response_budgetNo
active_promotionsNo
wall_art_launch_gateNo
address_sign_launch_gateNo

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare readOnly, idempotent and closed-world, so safety is covered. The description adds only that recommendations are personalized per the listed signals; it says nothing about result count, ranking behavior, or whether omitted signals degrade quality — extra context that would be genuinely useful here.

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?

A single front-loaded sentence with no filler. It is arguably too short rather than too long, but nothing is wasted.

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?

Output schema and full parameter documentation are already structured, so the description needn't explain returns. The gaps are the missing sibling differentiation and any note on how optional signals affect results — an agent can call it correctly but not confidently choose it over search_products.

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% with per-field descriptions and value examples, so the schema carries parameter meaning. The description merely restates the same field names without adding format, defaults, or interaction semantics.

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 and resource ('personalized product and variant recommendations') and enumerates the personalization signals it uses. It is reasonably distinguishable from search_products by the word 'personalized', but it never names or contrasts with that 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 Guidelines2/5

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

No when-to-use guidance: it doesn't say to prefer this over search_products, when recommendations are inappropriate, or what happens when optional signals are omitted. The list of input factors implies usage but gives no routing rules.

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

get_reviews_summaryGet Reviews SummaryA
Read-onlyIdempotent
Inspect

Get aggregated customer review statistics and featured review excerpts. Use this when a customer asks about product quality, other customers' experiences, or social proof. Returns ratings, distribution, and highlighted reviews.

NameRequiredDescriptionDefault
product_handleNoProduct handle: 'the-legacy-print', 'the-cinematic-print', or 'the-address-sign'. Omit for store-wide stats.

Output Schema

NameRequiredDescription
noteNo
errorNo
scopeNo
sourceNo
messageNo
availableNo
total_reviewsNo
average_ratingNo
review_platformNo
_response_budgetNo
featured_reviewsNo
verified_purchase_countNo

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, openWorldHint, and idempotentHint, covering safety and idempotency. The description adds useful return semantics ('Returns ratings, distribution, and highlighted reviews') and the notion of 'featured' excerpts, which go beyond the schema. No contradictions found.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three concise sentences with no filler. The first sentence states the action, the second gives usage guidance, and the third lists return components. Every sentence contributes value and the structure is front-loaded.

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?

This tool has a single optional parameter, a rich output schema, and strong annotations. The description adds the practical use case and return summary, making it complete for selection and invocation. No further explanation of return values is needed given the output 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 coverage is 100% and the parameter description is detailed ('Product handle: ... Omit for store-wide stats.') The tool description itself does not add parameter-related meaning, so the baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific verb and resource: 'Get aggregated customer review statistics and featured review excerpts.' It clearly distinguishes this tool from siblings like search_products or compare_products by focusing on review aggregation and social proof.

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 provides explicit when-to-use context: 'Use this when a customer asks about product quality, other customers' experiences, or social proof.' However, it does not explicitly mention when not to use it or name alternative tools, stopping short of a 5.

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

get_shipping_estimateGet Shipping EstimateA
Read-onlyIdempotent
Inspect

Get estimated delivery time, free shipping threshold, and carrier information for a specific country. Use this when a customer asks about shipping costs or delivery times to their location.

NameRequiredDescriptionDefault
country_codeYesISO 3166-1 alpha-2 or alpha-3 country code (e.g. 'PL', 'DE', 'GB', 'FR', 'DEU', 'GBR')

Output Schema

NameRequiredDescription
errorNo
carrierNo
messageNo
returnsNo
trackingNo
supportedNo
country_codeNo
free_shippingNo
shipping_costNo
_response_budgetNo
delivery_estimateNo
manufacturing_noteNo
supported_countriesNo
total_estimated_timeNo
wall_art_launch_gateNo
tax_duty_handling_noteNo
address_sign_launch_gateNo
tax_duty_handling_setup_dependentNo

TDQS

A4.1/5.0
Behavior3/5

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

Annotations already declare readOnlyHint and idempotentHint, so the safety profile is covered. The description adds output details (delivery time, threshold, carrier) but does not disclose edge cases or error behavior. Adequate given annotation coverage.

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?

Two sentences, front-loaded with action and outputs, then usage guidance. No filler words or redundancy.

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

Completeness5/5

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

For a simple read-only tool with one parameter, an output schema, and strong annotations, the description provides essential purpose, scope, and usage context. It is complete for an agent to select and invoke the tool correctly.

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 covers country_code with ISO 3166-1 alpha-2/alpha-3 examples, achieving 100% coverage. Description adds no additional parameter meaning beyond reinforcing the country scope, so 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?

Description states a specific verb 'Get' with three concrete outputs (delivery time, free shipping threshold, carrier information) scoped to a specific country, clearly distinguishing it from sibling tools like product search or store info.

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?

Includes explicit usage instruction 'Use this when a customer asks about shipping costs or delivery times to their location,' providing clear context. It doesn't mention alternatives or exclusions, but no direct sibling alternative exists.

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

get_store_infoGet Store InfoA
Read-onlyIdempotent
Inspect

Get Bolot Studio brand information, shipping zones, payment methods, and configurator URLs. Essential context for helping customers.

NameRequiredDescriptionDefault
localeNoLocale code used when country is not supplied
countryNoISO 3166-1 alpha-2 or alpha-3 country code for market-visible catalog sizes/prices (e.g. 'DE', 'DEU')

Output Schema

NameRequiredDescription
b2bNo
brandNo
errorNo
marketNo
messageNo
productsNo
policy_urlsNo
finish_guideNo
free_shippingNo
sustainabilityNo
payment_methodsNo
_response_budgetNo
active_promotionsNo
configurator_urlsNo
quality_assuranceNo
agent_instructionsNo
shipping_by_countryNo
wall_art_launch_gateNo
address_sign_launch_gateNo

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint and idempotentHint, so the description does not need to restate safety. It adds value by enumerating the exact content categories returned (brand info, shipping zones, payment methods, configurator URLs), which goes beyond the tool name. No contradictions.

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 two concise sentences, front-loaded with the key value and free of fluff. 'Essential context for helping customers' is brief and meaningful, though slightly vague.

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?

Given the output schema exists and annotations cover safety, the description sufficiently lists the data categories covered. It is complete enough for an agent to know what to expect, though it could slightly benefit from noting locale/country influence on returned data (already captured in 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?

The schema provides full descriptions for both parameters (locale and country), including examples and semantics. The description does not add parameter-level detail, but the schema's 100% coverage makes this acceptable baseline.

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 clearly states the tool retrieves Bolot Studio brand information, shipping zones, payment methods, and configurator URLs, using a specific verb ('Get') and resource scope. This distinguishes it from sibling tools like search_policies_and_faqs or get_product_recommendations, which focus on other domains.

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 provides a general context—'Essential context for helping customers'—implying when to use the tool, but it does not explicitly state when to use it over alternatives or any exclusion criteria. Sibling tools are not named or contrasted.

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

search_policies_and_faqsSearch Policies and FAQsA
Read-onlyIdempotent
Inspect

Search Bolot Studio FAQs and store policies. Covers product questions, sizing, finishes, shipping, returns, and ordering.

NameRequiredDescriptionDefault
queryYesSearch query (e.g. 'returns', 'shipping to Germany', 'matte vs glossy', 'desk stand')
localeNoLocale code for localized policy URLs (e.g. 'en', 'pl', 'de')
countryNoISO 3166-1 alpha-2 or alpha-3 country code for locale-aware policy URLs (e.g. 'PL', 'DE', 'GB', 'DEU', 'GBR')

Output Schema

NameRequiredDescription
faqsNo
errorNo
localeNo
messageNo
policy_linksNo
total_matchesNo
locale_fallbackNo
_response_budgetNo
returned_matchesNo
shipping_by_countryNo

TDQS

A3.9/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, openWorldHint=false, and idempotentHint=true, so the safety profile is clear. The description adds no extra behavioral context like pagination, authentication, or locale-specific behavior, but it does not contradict annotations.

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 a single, front-loaded sentence that directly states purpose and key coverage topics. No filler words or redundant details.

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?

Given the low complexity of a search tool, the presence of an output schema, and strong annotations, the description sufficiently captures the tool's purpose and scope. It clearly defines what is searched and which topics are covered, with no missing critical context.

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%, with each parameter (query, locale, country) already described with examples. The description does not add additional parameter semantics beyond the schema's own descriptions.

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 clearly states the tool searches Bolot Studio FAQs and store policies, with a specific verb and resource. It also lists coverage areas (product questions, sizing, finishes, shipping, returns, ordering) that distinguish it from sibling product search tools like search_products.

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 usage for policy/FAQ questions via the coverage list, but it does not explicitly say when to use this tool instead of alternatives such as search_products or get_store_info. No exclusions or alternative recommendations are provided.

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

search_productsSearch ProductsA
Read-onlyIdempotent
Inspect

Search and browse Bolot Studio custom metal photo prints. Returns a compact product card by default — handle, title, short description, price/compareAtPrice, availability, variants (name/size/price/availability), one image, and the product URL — for every result. For ONE product (pass handle), add detail: true to also get the AI summary, use cases, FAQs, competitive positioning, social proof, gallery, shipping zones, and guarantee/returns/quality-assurance detail; every response, compact or detailed, is capped to the server's response size limit.

NameRequiredDescriptionDefault
queryNoSearch term (e.g. 'metal print', 'gift', 'cinematic')
detailNoOnly used together with `handle` (single-product lookup). When true, returns the full enriched product record — AI summary, use cases, FAQs, competitive positioning, social proof, gallery, shipping zones, guarantee/returns/quality-assurance detail — for that ONE product, still capped to the server's response size limit. Default false returns the compact card shape (handle, title, short description, price, variants, one image, product URL) that every search and every default single-product lookup uses.
handleNoProduct handle: 'the-legacy-print', 'the-cinematic-print', or 'the-address-sign'
localeNoLocale code for localized URLs (e.g. 'en', 'pl', 'de')
countryNoISO 3166-1 alpha-2 or alpha-3 country code for geo-pricing (e.g. 'PL', 'DE', 'GB', 'DEU', 'GBR')
locale_contractNoLanguage-resolution contract. Legacy discloses multilingual-country ambiguity; strict requires an explicit locale.

Output Schema

NameRequiredDescription
b2bNo
urlNo
faqsNo
tagsNo
toolNo
errorNo
priceNo
queryNo
titleNo
totalNo
handleNo
imagesNo
marketNo
reasonNo
vendorNo
droppedNo
galleryNo
giftingNo
messageNo
optionsNo
productNo
returnsNo
materialNo
productsNo
shippingNo
variantsNo
guaranteeNo
updatedAtNo
use_casesNo
ai_summaryNo
descriptionNo
launch_gateNo
limit_bytesNo
productTypeNo
size_pricesNo
availabilityNo
finish_guideNo
social_proofNo
customizationNo
featuredImageNo
ai_descriptionNo
compareAtPriceNo
localized_urlsNo
product_natureNo
proof_workflowNo
shipping_zonesNo
sustainabilityNo
descriptionHtmlNo
_response_budgetNo
active_promotionsNo
available_handlesNo
available_localesNo
quality_assuranceNo
supported_localesNo
language_ambiguityNo
product_comparisonNo
wall_art_launch_gateNo
configuration_contractNo
competitive_positioningNo
address_sign_launch_gateNo

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already cover read-only/idempotent/open-world, so the bar is lower; the description still adds real behavior — response size capping, default compact shape, and that detail expansion is gated on a single handle. It does not mention rate limits, pagination, or truncation consequences when the cap is hit.

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 key distinction (default compact vs. handle+detail) is front-loaded and the sentences are dense but purposeful. There is some redundancy — the compact field list appears twice and the size-cap caveat is repeated at the end.

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 and annotations present, the description only needs to convey the mode switch and the size cap, which it does. Minor gap: no hint about zero-result behavior or how query and handle interact when both are supplied.

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 the baseline is 3. The description reiterates the `handle`+`detail` coupling and the compact field list, which are already documented in the schema, adding little new semantics for `query`, `locale`, `country`, or `locale_contract`.

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 ('Search and browse Bolot Studio custom metal photo prints') and clarifies the two modes: a compact card for every result versus an enriched single-product record. It is clearly distinguishable from siblings like compare_products and search_products_task.

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 explicit guidance on when to use `detail: true` (only with `handle`, for ONE product) and what the default returns, which is the main branch point. It does not name competing siblings (e.g. compare_products, get_product_recommendations) or say when not to use this tool.

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

search_products_taskSearch Products TaskAInspect

Task-based product search for long-running MCP clients. Use task polling to retrieve the result.

NameRequiredDescriptionDefault
queryNoSearch term (e.g. 'metal print', 'gift', 'cinematic')
detailNoOnly used together with `handle` (single-product lookup). When true, returns the full enriched product record — AI summary, use cases, FAQs, competitive positioning, social proof, gallery, shipping zones, guarantee/returns/quality-assurance detail — for that ONE product, still capped to the server's response size limit. Default false returns the compact card shape (handle, title, short description, price, variants, one image, product URL) that every search and every default single-product lookup uses.
handleNoProduct handle: 'the-legacy-print', 'the-cinematic-print', or 'the-address-sign'
localeNoLocale code for localized URLs (e.g. 'en', 'pl', 'de')
countryNoISO 3166-1 alpha-2 or alpha-3 country code for geo-pricing (e.g. 'PL', 'DE', 'GB', 'DEU', 'GBR')
locale_contractNoLanguage-resolution contract. Legacy discloses multilingual-country ambiguity; strict requires an explicit locale.

TDQS

A3.7/5.0
Behavior3/5

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

With no annotations, the description carries the full behavioral disclosure burden. It does disclose the task/polling model and long-running nature, which is useful, but it omits details about task lifecycle, failure modes, rate limits, or whether this is a read-only operation.

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 two sentences with no filler. It front-loads the core behavior and immediately tells the agent how to retrieve the result, making it appropriately sized and easy to parse.

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?

The async task/polling mechanic is mentioned, and the schema fully documents parameters, so the tool is callable. However, without an output schema or an explicit alternative/selection policy, the description leaves some context about result shape and when to choose the synchronous counterpart to inference.

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 each parameter already carries rich descriptions with examples. The tool description itself adds no parameter-level guidance, so the baseline score of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a clear action ('product search') with a specific resource ('products') and a distinguishing retrieval mode ('task-based... task polling'). It separates the tool from the synchronous-looking sibling search_products, although it does not explicitly name that tool.

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?

The description gives actionable context: this is intended for long-running MCP clients and results are retrieved by polling. It clearly implies an asynchronous pattern, but it does not explicitly state when to prefer this over the sibling search_products tool.

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

start_configurationStart ConfigurationA
Read-onlyIdempotent
Inspect

Generate a direct URL to the Bolot Studio product configurator with pre-selected options. Optionally pre-select size and/or finish ('matte' or 'glossy'). Valid sizes are product-specific: 'the-legacy-print' accepts 'keepsake-3-pack' (three separate 13×9 cm panels with three separate metal desk stands), 'classic' (30×20), or 'statement' (42×30); 'the-cinematic-print' accepts 'intimate' (21×14), 'classic' (30×20), or 'statement' (42×30); 'the-address-sign' uses templates and ignores size/finish.

NameRequiredDescriptionDefault
sizeNoPre-select size. Valid set depends on the product: 'the-legacy-print' → 'keepsake-3-pack', 'classic', or 'statement'; 'the-cinematic-print' → 'intimate', 'classic', or 'statement'. The retired single token 'keepsake' is never accepted.
finishNoPre-select finish. Not applicable to address sign.
localeNoLocale code (en, de, pl, etc.)
countryNoISO 3166-1 alpha-2 or alpha-3 country code for market-visible product availability (e.g. 'DE', 'DEU')
product_handleYesProduct to configure

Output Schema

NameRequiredDescription
noteNo
errorNo
localeNo
marketNo
messageNo
productNo
launch_gateNo
valid_sizesNo
instructionsNo
pre_selectedNo
requested_sizeNo
_response_budgetNo
configurator_urlNo

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already establish readOnlyHint, idempotentHint and a closed-world profile, so the bar is lower; the description adds real context by disclosing that the output is a URL and that certain products silently ignore size/finish. It stops short of stating whether the URL is signed, expiring, or locale-dependent, which would have been useful.

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 purpose is front-loaded in the first sentence and the second sentence carries the option semantics without filler. The per-product size enumeration is dense and duplicates the enum mapping already present in the schema, costing some economy.

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 present, return format need not be explained, and the annotations cover the safety profile. The description supplies the product-specific size rules and the address-sign exception, which are the non-obvious things an agent needs to call this 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 100%, so the baseline would be 3, but the description adds genuine meaning beyond the schema: physical panel dimensions per size token, the three-panel composition of 'keepsake-3-pack', and the per-product valid size sets. Locale and country are left entirely to the schema, so it is not exhaustive.

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 artifact ('Generate a direct URL to the Bolot Studio product configurator') plus the scope of pre-selection. This is clearly distinguishable from siblings like search_products, compare_products, or get_product_recommendations, which do not return a configurator deep link.

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?

The description makes the use case evident (produce a pre-configured link with optional size/finish preselection) and includes a practical exclusion — 'the-address-sign' uses templates and ignores size/finish. It does not, however, explicitly name an alternative tool or state when not to call it.

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. 5 tool updates
    • Changedcheck_photo_compatibility10 fields changed
      • removedOutput schema / properties / country / anyOf
        Removed value: -[
        -  {
        -    "type": "string"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]
      • addedOutput schema / properties / country / type
        Added value: +[
        +  "string",
        +  "null"
        +]
      • removedOutput schema / properties / format_note / anyOf
        Removed value: -[
        -  {
        -    "type": "string"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]
      • addedOutput schema / properties / format_note / type
        Added value: +[
        +  "string",
        +  "null"
        +]
      • removedOutput schema / properties / market / anyOf
        Removed value: -[
        -  {
        -    "type": "string"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]
      • addedOutput schema / properties / market / type
        Added value: +[
        +  "string",
        +  "null"
        +]
      • removedOutput schema / properties / photo / properties / format / anyOf
        Removed value: -[
        -  {
        -    "type": "string"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]
      • addedOutput schema / properties / photo / properties / format / type
        Added value: +[
        +  "string",
        +  "null"
        +]
      • removedOutput schema / properties / recommendation / anyOf
        Removed value: -[
        -  {
        -    "type": "string"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]
      • addedOutput schema / properties / recommendation / type
        Added value: +[
        +  "string",
        +  "null"
        +]
    • Changedcompare_products4 fields changed
      • removedOutput schema / properties / differentiators / items / properties / competitor_typical / anyOf
        Removed value: -[
        -  {
        -    "type": "string"
        -  },
        -  {
        -    "type": "boolean"
        -  }
        -]
      • addedOutput schema / properties / differentiators / items / properties / competitor_typical / type
        Added value: +[
        +  "string",
        +  "boolean"
        +]
      • removedOutput schema / properties / differentiators / items / properties / value / anyOf
        Removed value: -[
        -  {
        -    "type": "string"
        -  },
        -  {
        -    "type": "boolean"
        -  }
        -]
      • addedOutput schema / properties / differentiators / items / properties / value / type
        Added value: +[
        +  "string",
        +  "boolean"
        +]
    • Changedget_product_recommendations4 fields changed
      • removedOutput schema / properties / finish_advice / anyOf
        Removed value: -[
        -  {
        -    "type": "string"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]
      • addedOutput schema / properties / finish_advice / type
        Added value: +[
        +  "string",
        +  "null"
        +]
      • removedOutput schema / properties / room_advice / anyOf
        Removed value: -[
        -  {
        -    "type": "string"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]
      • addedOutput schema / properties / room_advice / type
        Added value: +[
        +  "string",
        +  "null"
        +]
    • Changedsearch_products30 fields changed
      • removedOutput schema / properties / ai_summary / properties / price_breakdown / items / properties / currency / anyOf
        Removed value: -[
        -  {
        -    "type": "string"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]
      • addedOutput schema / properties / ai_summary / properties / price_breakdown / items / properties / currency / type
        Added value: +[
        +  "string",
        +  "null"
        +]
      • removedOutput schema / properties / ai_summary / properties / price_breakdown / items / properties / from / anyOf
        Removed value: -[
        -  {
        -    "type": "string"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]
      • addedOutput schema / properties / ai_summary / properties / price_breakdown / items / properties / from / type
        Added value: +[
        +  "string",
        +  "null"
        +]
      • removedOutput schema / properties / b2b / properties / programs / items / properties / min_order / anyOf
        Removed value: -[
        -  {
        -    "type": "number"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]
      • addedOutput schema / properties / b2b / properties / programs / items / properties / min_order / type
        Added value: +[
        +  "number",
        +  "null"
        +]
      • removedOutput schema / properties / competitive_positioning / properties / differentiators / items / properties / competitor_typical / anyOf
        Removed value: -[
        -  {
        -    "type": "string"
        -  },
        -  {
        -    "type": "boolean"
        -  }
        -]
      • addedOutput schema / properties / competitive_positioning / properties / differentiators / items / properties / competitor_typical / type
        Added value: +[
        +  "string",
        +  "boolean"
        +]
      • removedOutput schema / properties / competitive_positioning / properties / differentiators / items / properties / value / anyOf
        Removed value: -[
        -  {
        -    "type": "string"
        -  },
        -  {
        -    "type": "boolean"
        -  }
        -]
      • addedOutput schema / properties / competitive_positioning / properties / differentiators / items / properties / value / type
        Added value: +[
        +  "string",
        +  "boolean"
        +]
      • removedOutput schema / properties / configuration_contract / properties / fields / items / properties / const_value / anyOf
        Removed value: -[
        -  {
        -    "type": "string"
        -  },
        -  {
        -    "type": "number"
        -  }
        -]
      • addedOutput schema / properties / configuration_contract / properties / fields / items / properties / const_value / type
        Added value: +[
        +  "string",
        +  "number"
        +]
      • removedOutput schema / properties / gifting / properties / budget_tiers / items / properties / currency / anyOf
        Removed value: -[
        -  {
        -    "type": "string"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]
      • addedOutput schema / properties / gifting / properties / budget_tiers / items / properties / currency / type
        Added value: +[
        +  "string",
        +  "null"
        +]
      • removedOutput schema / properties / gifting / properties / budget_tiers / items / properties / from / anyOf
        Removed value: -[
        -  {
        -    "type": "string"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]
      • addedOutput schema / properties / gifting / properties / budget_tiers / items / properties / from / type
        Added value: +[
        +  "string",
        +  "null"
        +]
      • removedOutput schema / properties / products / items / properties / b2b / properties / programs / items / properties / min_order / anyOf
        Removed value: -[
        -  {
        -    "type": "number"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]
      • addedOutput schema / properties / products / items / properties / b2b / properties / programs / items / properties / min_order / type
        Added value: +[
        +  "number",
        +  "null"
        +]
      • removedOutput schema / properties / products / items / properties / gifting / properties / budget_tiers / items / properties / currency / anyOf
        Removed value: -[
        -  {
        -    "type": "string"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]
      • addedOutput schema / properties / products / items / properties / gifting / properties / budget_tiers / items / properties / currency / type
        Added value: +[
        +  "string",
        +  "null"
        +]
      • removedOutput schema / properties / products / items / properties / gifting / properties / budget_tiers / items / properties / from / anyOf
        Removed value: -[
        -  {
        -    "type": "string"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]
      • addedOutput schema / properties / products / items / properties / gifting / properties / budget_tiers / items / properties / from / type
        Added value: +[
        +  "string",
        +  "null"
        +]
      • removedOutput schema / properties / products / items / properties / variants / items / properties / sku / anyOf
        Removed value: -[
        -  {
        -    "type": "string"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]
      • addedOutput schema / properties / products / items / properties / variants / items / properties / sku / type
        Added value: +[
        +  "string",
        +  "null"
        +]
      • removedOutput schema / properties / query / anyOf
        Removed value: -[
        -  {
        -    "type": "string"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]
      • addedOutput schema / properties / query / type
        Added value: +[
        +  "string",
        +  "null"
        +]
      • removedOutput schema / properties / returns / properties / days / anyOf
        Removed value: -[
        -  {
        -    "type": "number"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]
      • addedOutput schema / properties / returns / properties / days / type
        Added value: +[
        +  "number",
        +  "null"
        +]
      • removedOutput schema / properties / variants / items / properties / sku / anyOf
        Removed value: -[
        -  {
        -    "type": "string"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]
      • addedOutput schema / properties / variants / items / properties / sku / type
        Added value: +[
        +  "string",
        +  "null"
        +]
    • Changedstart_configuration4 fields changed
      • removedOutput schema / properties / pre_selected / properties / finish / anyOf
        Removed value: -[
        -  {
        -    "type": "string"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]
      • addedOutput schema / properties / pre_selected / properties / finish / type
        Added value: +[
        +  "string",
        +  "null"
        +]
      • removedOutput schema / properties / pre_selected / properties / size / anyOf
        Removed value: -[
        -  {
        -    "type": "string"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]
      • addedOutput schema / properties / pre_selected / properties / size / type
        Added value: +[
        +  "string",
        +  "null"
        +]
  2. 1 tool update
    • Changedsearch_products2 fields changed
      • addedOutput schema / properties / configuration_contract / properties / fields / items / properties / const_value
        Added value: +{
        +  "anyOf": [
        +    {
        +      "type": "string"
        +    },
        +    {
        +      "type": "number"
        +    }
        +  ]
        +}
      • addedOutput schema / properties / configuration_contract / properties / fields / items / properties / customer_selectable
        Added value: +{
        +  "type": "boolean"
        +}
  3. 2 tool updates
    • Changedsearch_products3 fields changed
      • addedInput schema / properties / locale_contract
        Added value: +{
        +  "description": "Language-resolution contract. Legacy discloses multilingual-country ambiguity; strict requires an explicit locale.",
        +  "enum": [
        +    "legacy",
        +    "strict"
        +  ],
        +  "type": "string"
        +}
      • addedOutput schema / properties / language_ambiguity
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "country": {
        +      "const": "CH",
        +      "type": "string"
        +    },
        +    "default_locale": {
        +      "const": "de",
        +      "type": "string"
        +    },
        +    "deprecation": {
        +      "const": "locale_will_be_required",
        +      "type": "string"
        +    },
        +    "supported_locales": {
        +      "items": {
        +        "enum": [
        +          "de",
        +          "fr",
        +          "it"
        +        ],
        +        "type": "string"
        +      },
        +      "type": "array"
        +    }
        +  },
        +  "required": [
        +    "country",
        +    "default_locale",
        +    "supported_locales",
        +    "deprecation"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / supported_locales
        Added value: +{
        +  "items": {
        +    "type": "string"
        +  },
        +  "type": "array"
        +}
    • Changedsearch_products_task1 field changed
      • addedInput schema / properties / locale_contract
        Added value: +{
        +  "description": "Language-resolution contract. Legacy discloses multilingual-country ambiguity; strict requires an explicit locale.",
        +  "enum": [
        +    "legacy",
        +    "strict"
        +  ],
        +  "type": "string"
        +}
  4. 3 tool updates
    • Changedcheck_photo_compatibility7 fields changed
      • removedInput schema / required
        Removed value: -[
        -  "width",
        -  "height"
        -]
      • changedOutput schema / properties / assessment_status / enum
        Previous value: -[
        -  "destination_required",
        -  "requires_configurator_review",
        -  "product_unavailable"
        -]New value: +[
        +  "destination_required",
        +  "dimensions_required",
        +  "requires_configurator_review",
        +  "product_unavailable",
        +  "incompatible",
        +  "too_large"
        +]
      • addedOutput schema / properties / available_print_formats / items / properties / required_px
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "landscape": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "h": {
        +          "type": "number"
        +        },
        +        "w": {
        +          "type": "number"
        +        }
        +      },
        +      "required": [
        +        "w",
        +        "h"
        +      ],
        +      "type": "object"
        +    },
        +    "portrait": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "h": {
        +          "type": "number"
        +        },
        +        "w": {
        +          "type": "number"
        +        }
        +      },
        +      "required": [
        +        "w",
        +        "h"
        +      ],
        +      "type": "object"
        +    }
        +  },
        +  "required": [
        +    "landscape",
        +    "portrait"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / available_print_formats / items / properties / resolution
        Added value: +{
        +  "enum": [
        +    "ok",
        +    "warn",
        +    "fail"
        +  ],
        +  "type": "string"
        +}
      • addedOutput schema / properties / available_print_formats / items / properties / technical_size
        Added value: +{
        +  "type": "string"
        +}
      • addedOutput schema / properties / resolution_by_size
        Added value: +{
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "orientation": {
        +        "enum": [
        +          "landscape",
        +          "portrait"
        +        ],
        +        "type": "string"
        +      },
        +      "recommended_px": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "h": {
        +            "type": "number"
        +          },
        +          "w": {
        +            "type": "number"
        +          }
        +        },
        +        "required": [
        +          "w",
        +          "h"
        +        ],
        +        "type": "object"
        +      },
        +      "required_px": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "h": {
        +            "type": "number"
        +          },
        +          "w": {
        +            "type": "number"
        +          }
        +        },
        +        "required": [
        +          "w",
        +          "h"
        +        ],
        +        "type": "object"
        +      },
        +      "size": {
        +        "type": "string"
        +      },
        +      "status": {
        +        "enum": [
        +          "ok",
        +          "warn",
        +          "fail"
        +        ],
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "size",
        +      "orientation",
        +      "status",
        +      "required_px",
        +      "recommended_px"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
      • addedOutput schema / properties / resolution_status
        Added value: +{
        +  "enum": [
        +    "compatible",
        +    "incompatible",
        +    "mixed",
        +    "too_large",
        +    "unknown"
        +  ],
        +  "type": "string"
        +}
    • Changedcheck_photo_compatibility_task1 field changed
      • removedInput schema / required
        Removed value: -[
        -  "width",
        -  "height"
        -]
    • Changedsearch_products3 fields changed
      • addedOutput schema / properties / products / items / properties / size_prices
        Added value: +{
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "amount": {
        +        "type": "string"
        +      },
        +      "currency": {
        +        "type": "string"
        +      },
        +      "size": {
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "size",
        +      "amount",
        +      "currency"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
      • changedOutput schema / properties / products / items / required
        Previous value: -[
        -  "handle",
        -  "title",
        -  "description",
        -  "price",
        -  "compareAtPrice",
        -  "availability",
        -  "images",
        -  "featuredImage",
        -  "variants",
        -  "options",
        -  "tags",
        -  "productType",
        -  "vendor",
        -  "shipping",
        -  "customization",
        -  "product_nature",
        -  "material",
        -  "url"
        -]New value: +[
        +  "handle",
        +  "title",
        +  "description",
        +  "price",
        +  "compareAtPrice",
        +  "availability",
        +  "images",
        +  "featuredImage",
        +  "variants",
        +  "size_prices",
        +  "options",
        +  "tags",
        +  "productType",
        +  "vendor",
        +  "shipping",
        +  "customization",
        +  "product_nature",
        +  "material",
        +  "url"
        +]
      • addedOutput schema / properties / size_prices
        Added value: +{
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "amount": {
        +        "type": "string"
        +      },
        +      "currency": {
        +        "type": "string"
        +      },
        +      "size": {
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "size",
        +      "amount",
        +      "currency"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
  5. 9 tool updates
    • Changedcheck_photo_compatibility1 field changed
      • addedOutput schema / properties / _response_budget
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "dropped": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    },
        +    "limit_bytes": {
        +      "type": "number"
        +    },
        +    "note": {
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "dropped",
        +    "limit_bytes",
        +    "note"
        +  ],
        +  "type": "object"
        +}
    • Changedcompare_products1 field changed
      • addedOutput schema / properties / _response_budget
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "dropped": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    },
        +    "limit_bytes": {
        +      "type": "number"
        +    },
        +    "note": {
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "dropped",
        +    "limit_bytes",
        +    "note"
        +  ],
        +  "type": "object"
        +}
    • Changedget_product_recommendations1 field changed
      • addedOutput schema / properties / _response_budget
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "dropped": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    },
        +    "limit_bytes": {
        +      "type": "number"
        +    },
        +    "note": {
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "dropped",
        +    "limit_bytes",
        +    "note"
        +  ],
        +  "type": "object"
        +}
    • Changedget_reviews_summary1 field changed
      • addedOutput schema / properties / _response_budget
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "dropped": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    },
        +    "limit_bytes": {
        +      "type": "number"
        +    },
        +    "note": {
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "dropped",
        +    "limit_bytes",
        +    "note"
        +  ],
        +  "type": "object"
        +}
    • Changedget_shipping_estimate1 field changed
      • addedOutput schema / properties / _response_budget
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "dropped": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    },
        +    "limit_bytes": {
        +      "type": "number"
        +    },
        +    "note": {
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "dropped",
        +    "limit_bytes",
        +    "note"
        +  ],
        +  "type": "object"
        +}
    • Changedget_store_info1 field changed
      • addedOutput schema / properties / _response_budget
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "dropped": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    },
        +    "limit_bytes": {
        +      "type": "number"
        +    },
        +    "note": {
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "dropped",
        +    "limit_bytes",
        +    "note"
        +  ],
        +  "type": "object"
        +}
    • Changedsearch_policies_and_faqs1 field changed
      • addedOutput schema / properties / _response_budget
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "dropped": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    },
        +    "limit_bytes": {
        +      "type": "number"
        +    },
        +    "note": {
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "dropped",
        +    "limit_bytes",
        +    "note"
        +  ],
        +  "type": "object"
        +}
    • Changedsearch_products62 fields changed
      • addedOutput schema / properties / _response_budget
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "dropped": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    },
        +    "limit_bytes": {
        +      "type": "number"
        +    },
        +    "note": {
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "dropped",
        +    "limit_bytes",
        +    "note"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / active_promotions
        Added value: +{
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "active": {
        +        "type": "boolean"
        +      },
        +      "description": {
        +        "type": "string"
        +      },
        +      "gift_value": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "amount": {
        +            "type": "string"
        +          },
        +          "currency": {
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "amount",
        +          "currency"
        +        ],
        +        "type": "object"
        +      },
        +      "id": {
        +        "type": "string"
        +      },
        +      "qualifying_variants": {
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "terms": {
        +        "type": "string"
        +      },
        +      "title": {
        +        "type": "string"
        +      },
        +      "type": {
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "id",
        +      "type",
        +      "title",
        +      "description",
        +      "qualifying_variants",
        +      "active"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
      • changedOutput schema / properties / address_sign_launch_gate / additionalProperties
        Previous value: -{}New value: +false
      • addedOutput schema / properties / address_sign_launch_gate / properties
        Added value: +{
        +  "availability": {
        +    "const": "not_available",
        +    "type": "string"
        +  },
        +  "checkout_phase": {
        +    "const": "blocked",
        +    "type": "string"
        +  },
        +  "message": {
        +    "type": "string"
        +  },
        +  "reason": {
        +    "type": "string"
        +  },
        +  "required_compliance_gate": {
        +    "type": "string"
        +  },
        +  "supports_agent_checkout": {
        +    "const": false,
        +    "type": "boolean"
        +  }
        +}
      • removedOutput schema / properties / address_sign_launch_gate / propertyNames
        Removed value: -{
        -  "type": "string"
        -}
      • addedOutput schema / properties / address_sign_launch_gate / required
        Added value: +[
        +  "availability",
        +  "reason",
        +  "message",
        +  "required_compliance_gate",
        +  "supports_agent_checkout",
        +  "checkout_phase"
        +]
      • addedOutput schema / properties / ai_description
        Added value: +{
        +  "type": "string"
        +}
      • addedOutput schema / properties / ai_summary
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "decision_factors": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    },
        +    "has_3d_preview": {
        +      "type": "boolean"
        +    },
        +    "has_template_editor": {
        +      "type": "boolean"
        +    },
        +    "ideal_for": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    },
        +    "key_differentiator": {
        +      "type": "string"
        +    },
        +    "not_ideal_for": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    },
        +    "one_liner": {
        +      "type": "string"
        +    },
        +    "price_breakdown": {
        +      "items": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "currency": {
        +            "anyOf": [
        +              {
        +                "type": "string"
        +              },
        +              {
        +                "type": "null"
        +              }
        +            ]
        +          },
        +          "from": {
        +            "anyOf": [
        +              {
        +                "type": "string"
        +              },
        +              {
        +                "type": "null"
        +              }
        +            ]
        +          },
        +          "variant": {
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "variant",
        +          "from",
        +          "currency"
        +        ],
        +        "type": "object"
        +      },
        +      "type": "array"
        +    },
        +    "production_timeline": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "max_days": {
        +          "type": "number"
        +        },
        +        "min_days": {
        +          "type": "number"
        +        },
        +        "note": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "min_days",
        +        "max_days",
        +        "note"
        +      ],
        +      "type": "object"
        +    },
        +    "requires_photo_upload": {
        +      "type": "boolean"
        +    },
        +    "unique_benefits": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    }
        +  },
        +  "required": [
        +    "one_liner",
        +    "key_differentiator",
        +    "ideal_for",
        +    "not_ideal_for",
        +    "decision_factors",
        +    "requires_photo_upload",
        +    "has_3d_preview",
        +    "has_template_editor"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / availability
        Added value: +{
        +  "enum": [
        +    "in_stock",
        +    "out_of_stock",
        +    "preorder"
        +  ],
        +  "type": "string"
        +}
      • addedOutput schema / properties / available_locales
        Added value: +{
        +  "items": {
        +    "type": "string"
        +  },
        +  "type": "array"
        +}
      • addedOutput schema / properties / b2b
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "available": {
        +      "type": "boolean"
        +    },
        +    "b2b_page_url": {
        +      "type": "string"
        +    },
        +    "contact_email": {
        +      "type": "string"
        +    },
        +    "contact_subject": {
        +      "type": "string"
        +    },
        +    "programs": {
        +      "items": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "description": {
        +            "type": "string"
        +          },
        +          "min_order": {
        +            "anyOf": [
        +              {
        +                "type": "number"
        +              },
        +              {
        +                "type": "null"
        +              }
        +            ]
        +          },
        +          "name": {
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "name",
        +          "min_order",
        +          "description"
        +        ],
        +        "type": "object"
        +      },
        +      "type": "array"
        +    },
        +    "vat_invoicing": {
        +      "type": "boolean"
        +    }
        +  },
        +  "required": [
        +    "available",
        +    "programs",
        +    "contact_email",
        +    "contact_subject",
        +    "b2b_page_url",
        +    "vat_invoicing"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / compareAtPrice
        Added value: +{
        +  "anyOf": [
        +    {
        +      "additionalProperties": false,
        +      "properties": {
        +        "amount": {
        +          "type": "string"
        +        },
        +        "currency": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "amount",
        +        "currency"
        +      ],
        +      "type": "object"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ]
        +}
      • addedOutput schema / properties / competitive_positioning
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "category": {
        +      "type": "string"
        +    },
        +    "differentiators": {
        +      "items": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "competitor_typical": {
        +            "anyOf": [
        +              {
        +                "type": "string"
        +              },
        +              {
        +                "type": "boolean"
        +              }
        +            ]
        +          },
        +          "feature": {
        +            "type": "string"
        +          },
        +          "value": {
        +            "anyOf": [
        +              {
        +                "type": "string"
        +              },
        +              {
        +                "type": "boolean"
        +              }
        +            ]
        +          }
        +        },
        +        "required": [
        +          "feature",
        +          "value",
        +          "competitor_typical"
        +        ],
        +        "type": "object"
        +      },
        +      "type": "array"
        +    },
        +    "vs_competitors": {
        +      "items": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "key_differences": {
        +            "items": {
        +              "type": "string"
        +            },
        +            "type": "array"
        +          },
        +          "name": {
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "name",
        +          "key_differences"
        +        ],
        +        "type": "object"
        +      },
        +      "type": "array"
        +    }
        +  },
        +  "required": [
        +    "category",
        +    "differentiators",
        +    "vs_competitors"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / configuration_contract
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "completion": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "agent_checkout_supported": {
        +          "const": false,
        +          "type": "boolean"
        +        },
        +        "configurator_url": {
        +          "type": "string"
        +        },
        +        "human_handoff_required": {
        +          "const": true,
        +          "type": "boolean"
        +        }
        +      },
        +      "required": [
        +        "agent_checkout_supported",
        +        "human_handoff_required",
        +        "configurator_url"
        +      ],
        +      "type": "object"
        +    },
        +    "fields": {
        +      "items": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "available_when": {
        +            "additionalProperties": false,
        +            "properties": {
        +              "equals": {
        +                "type": "string"
        +              },
        +              "field": {
        +                "type": "string"
        +              }
        +            },
        +            "required": [
        +              "field",
        +              "equals"
        +            ],
        +            "type": "object"
        +          },
        +          "default": {
        +            "type": "number"
        +          },
        +          "key": {
        +            "type": "string"
        +          },
        +          "max_length": {
        +            "type": "number"
        +          },
        +          "maximum": {
        +            "type": "number"
        +          },
        +          "minimum": {
        +            "type": "number"
        +          },
        +          "required": {
        +            "type": "boolean"
        +          },
        +          "type": {
        +            "enum": [
        +              "enum",
        +              "string",
        +              "number"
        +            ],
        +            "type": "string"
        +          },
        +          "values": {
        +            "items": {
        +              "additionalProperties": false,
        +              "properties": {
        +                "id": {
        +                  "type": "string"
        +                },
        +                "label": {
        +                  "type": "string"
        +                }
        +              },
        +              "required": [
        +                "id",
        +                "label"
        +              ],
        +              "type": "object"
        +            },
        +            "type": "array"
        +          }
        +        },
        +        "required": [
        +          "key",
        +          "type",
        +          "required"
        +        ],
        +        "type": "object"
        +      },
        +      "type": "array"
        +    },
        +    "mode": {
        +      "const": "hosted_configurator_handoff",
        +      "type": "string"
        +    },
        +    "quote": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "basis": {
        +          "const": "size",
        +          "type": "string"
        +        },
        +        "prices": {
        +          "items": {
        +            "additionalProperties": false,
        +            "properties": {
        +              "amount": {
        +                "type": "string"
        +              },
        +              "currency": {
        +                "type": "string"
        +              },
        +              "option_id": {
        +                "type": "string"
        +              },
        +              "option_label": {
        +                "type": "string"
        +              }
        +            },
        +            "required": [
        +              "option_id",
        +              "option_label",
        +              "amount",
        +              "currency"
        +            ],
        +            "type": "object"
        +          },
        +          "type": "array"
        +        }
        +      },
        +      "required": [
        +        "basis",
        +        "prices"
        +      ],
        +      "type": "object"
        +    }
        +  },
        +  "required": [
        +    "mode",
        +    "fields",
        +    "quote",
        +    "completion"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / customization
        Added value: +{
        +  "anyOf": [
        +    {
        +      "additionalProperties": false,
        +      "properties": {
        +        "checkout_attribute": {
        +          "additionalProperties": false,
        +          "properties": {
        +            "description": {
        +              "type": "string"
        +            },
        +            "key": {
        +              "type": "string"
        +            },
        +            "required": {
        +              "type": "boolean"
        +            }
        +          },
        +          "required": [
        +            "key",
        +            "description",
        +            "required"
        +          ],
        +          "type": "object"
        +        },
        +        "configurator_url": {
        +          "type": "string"
        +        },
        +        "crop_tool": {
        +          "type": "boolean"
        +        },
        +        "description": {
        +          "type": "string"
        +        },
        +        "image_upload": {
        +          "additionalProperties": false,
        +          "properties": {
        +            "formats": {
        +              "items": {
        +                "type": "string"
        +              },
        +              "type": "array"
        +            },
        +            "max_file_size": {
        +              "type": "string"
        +            },
        +            "min_resolution": {
        +              "additionalProperties": false,
        +              "properties": {
        +                "height": {
        +                  "type": "number"
        +                },
        +                "width": {
        +                  "type": "number"
        +                }
        +              },
        +              "required": [
        +                "width",
        +                "height"
        +              ],
        +              "type": "object"
        +            },
        +            "recommended_resolution": {
        +              "additionalProperties": false,
        +              "properties": {
        +                "height": {
        +                  "type": "number"
        +                },
        +                "width": {
        +                  "type": "number"
        +                }
        +              },
        +              "required": [
        +                "width",
        +                "height"
        +              ],
        +              "type": "object"
        +            },
        +            "required": {
        +              "type": "boolean"
        +            }
        +          },
        +          "required": [
        +            "required",
        +            "formats",
        +            "max_file_size",
        +            "min_resolution",
        +            "recommended_resolution"
        +          ],
        +          "type": "object"
        +        },
        +        "ordering_flow": {
        +          "items": {
        +            "type": "string"
        +          },
        +          "type": "array"
        +        },
        +        "required": {
        +          "type": "boolean"
        +        },
        +        "three_d_preview": {
        +          "type": "boolean"
        +        },
        +        "type": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "required",
        +        "type",
        +        "description",
        +        "image_upload",
        +        "crop_tool",
        +        "three_d_preview",
        +        "configurator_url",
        +        "ordering_flow",
        +        "checkout_attribute"
        +      ],
        +      "type": "object"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ]
        +}
      • addedOutput schema / properties / description
        Added value: +{
        +  "type": "string"
        +}
      • addedOutput schema / properties / descriptionHtml
        Added value: +{
        +  "type": "string"
        +}
      • addedOutput schema / properties / dropped
        Added value: +{
        +  "items": {
        +    "type": "string"
        +  },
        +  "type": "array"
        +}
      • addedOutput schema / properties / faqs
        Added value: +{
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "answer": {
        +        "type": "string"
        +      },
        +      "question": {
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "question",
        +      "answer"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
      • addedOutput schema / properties / featuredImage
        Added value: +{
        +  "anyOf": [
        +    {
        +      "additionalProperties": false,
        +      "properties": {
        +        "altText": {
        +          "type": "string"
        +        },
        +        "height": {
        +          "type": "number"
        +        },
        +        "url": {
        +          "type": "string"
        +        },
        +        "width": {
        +          "type": "number"
        +        }
        +      },
        +      "required": [
        +        "url",
        +        "altText",
        +        "width",
        +        "height"
        +      ],
        +      "type": "object"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ]
        +}
      • addedOutput schema / properties / finish_guide
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "decision_rule": {
        +      "type": "string"
        +    },
        +    "options": {
        +      "items": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "avoid_for": {
        +            "items": {
        +              "type": "string"
        +            },
        +            "type": "array"
        +          },
        +          "best_for": {
        +            "items": {
        +              "type": "string"
        +            },
        +            "type": "array"
        +          },
        +          "description": {
        +            "type": "string"
        +          },
        +          "name": {
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "name",
        +          "description",
        +          "best_for",
        +          "avoid_for"
        +        ],
        +        "type": "object"
        +      },
        +      "type": "array"
        +    }
        +  },
        +  "required": [
        +    "options",
        +    "decision_rule"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / gallery
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "close_up": {
        +      "items": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "alt": {
        +            "type": "string"
        +          },
        +          "context": {
        +            "type": "string"
        +          },
        +          "height": {
        +            "type": "number"
        +          },
        +          "url": {
        +            "type": "string"
        +          },
        +          "width": {
        +            "type": "number"
        +          }
        +        },
        +        "required": [
        +          "url",
        +          "alt"
        +        ],
        +        "type": "object"
        +      },
        +      "type": "array"
        +    },
        +    "lifestyle": {
        +      "items": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "alt": {
        +            "type": "string"
        +          },
        +          "context": {
        +            "type": "string"
        +          },
        +          "height": {
        +            "type": "number"
        +          },
        +          "url": {
        +            "type": "string"
        +          },
        +          "width": {
        +            "type": "number"
        +          }
        +        },
        +        "required": [
        +          "url",
        +          "alt"
        +        ],
        +        "type": "object"
        +      },
        +      "type": "array"
        +    },
        +    "mounting_detail": {
        +      "items": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "alt": {
        +            "type": "string"
        +          },
        +          "context": {
        +            "type": "string"
        +          },
        +          "height": {
        +            "type": "number"
        +          },
        +          "url": {
        +            "type": "string"
        +          },
        +          "width": {
        +            "type": "number"
        +          }
        +        },
        +        "required": [
        +          "url",
        +          "alt"
        +        ],
        +        "type": "object"
        +      },
        +      "type": "array"
        +    },
        +    "product_shots": {
        +      "items": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "alt": {
        +            "type": "string"
        +          },
        +          "context": {
        +            "type": "string"
        +          },
        +          "height": {
        +            "type": "number"
        +          },
        +          "url": {
        +            "type": "string"
        +          },
        +          "width": {
        +            "type": "number"
        +          }
        +        },
        +        "required": [
        +          "url",
        +          "alt"
        +        ],
        +        "type": "object"
        +      },
        +      "type": "array"
        +    },
        +    "size_comparison": {
        +      "items": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "alt": {
        +            "type": "string"
        +          },
        +          "context": {
        +            "type": "string"
        +          },
        +          "height": {
        +            "type": "number"
        +          },
        +          "url": {
        +            "type": "string"
        +          },
        +          "width": {
        +            "type": "number"
        +          }
        +        },
        +        "required": [
        +          "url",
        +          "alt"
        +        ],
        +        "type": "object"
        +      },
        +      "type": "array"
        +    }
        +  },
        +  "required": [
        +    "product_shots",
        +    "lifestyle",
        +    "size_comparison",
        +    "mounting_detail",
        +    "close_up"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / gifting
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "budget_tiers": {
        +      "items": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "currency": {
        +            "anyOf": [
        +              {
        +                "type": "string"
        +              },
        +              {
        +                "type": "null"
        +              }
        +            ]
        +          },
        +          "from": {
        +            "anyOf": [
        +              {
        +                "type": "string"
        +              },
        +              {
        +                "type": "null"
        +              }
        +            ]
        +          },
        +          "label": {
        +            "type": "string"
        +          },
        +          "variant": {
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "label",
        +          "variant",
        +          "from",
        +          "currency"
        +        ],
        +        "type": "object"
        +      },
        +      "type": "array"
        +    },
        +    "gift_message": {
        +      "type": "boolean"
        +    },
        +    "gift_wrapping": {
        +      "type": "boolean"
        +    },
        +    "is_giftable": {
        +      "type": "boolean"
        +    }
        +  },
        +  "required": [
        +    "is_giftable",
        +    "gift_wrapping",
        +    "gift_message",
        +    "budget_tiers"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / guarantee
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "accepted_claim_costs": {
        +      "type": "string"
        +    },
        +    "claim_process": {
        +      "type": "string"
        +    },
        +    "country_scope": {
        +      "const": "all_served_countries",
        +      "type": "string"
        +    },
        +    "coverage": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    },
        +    "customer_scope": {
        +      "items": {
        +        "enum": [
        +          "B2C",
        +          "B2B"
        +        ],
        +        "type": "string"
        +      },
        +      "type": "array"
        +    },
        +    "description": {
        +      "type": "string"
        +    },
        +    "discontinued_exact_material_or_component": {
        +      "type": "string"
        +    },
        +    "duration_years": {
        +      "const": 3,
        +      "type": "number"
        +    },
        +    "mandatory_period_adjustments": {
        +      "type": "string"
        +    },
        +    "mandatory_statutory_rights": {
        +      "const": "unaffected_under_governing_law",
        +      "type": "string"
        +    },
        +    "performance_timing": {
        +      "type": "string"
        +    },
        +    "policy_selector": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "conditionally_required_inputs": {
        +          "additionalProperties": false,
        +          "properties": {
        +            "subdivision": {
        +              "const": "required_when_country_is_CA",
        +              "type": "string"
        +            }
        +          },
        +          "required": [
        +            "subdivision"
        +          ],
        +          "type": "object"
        +        },
        +        "inference_policy": {
        +          "const": "none",
        +          "type": "string"
        +        },
        +        "required_inputs": {
        +          "items": {
        +            "enum": [
        +              "country",
        +              "locale",
        +              "customerType"
        +            ],
        +            "type": "string"
        +          },
        +          "type": "array"
        +        },
        +        "url": {
        +          "type": "string"
        +        },
        +        "url_template": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "url",
        +        "url_template",
        +        "required_inputs",
        +        "conditionally_required_inputs",
        +        "inference_policy"
        +      ],
        +      "type": "object"
        +    },
        +    "policy_url": {
        +      "type": "string"
        +    },
        +    "publication_status": {
        +      "const": "active",
        +      "type": "string"
        +    },
        +    "reasonable_evidence_may_be_requested": {
        +      "const": true,
        +      "type": "boolean"
        +    },
        +    "remedies": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    },
        +    "retained_image_deletion_effect": {
        +      "type": "string"
        +    },
        +    "starts": {
        +      "const": "delivery",
        +      "type": "string"
        +    },
        +    "terms_document_count": {
        +      "type": "number"
        +    },
        +    "terms_version": {
        +      "type": "string"
        +    },
        +    "type": {
        +      "const": "voluntary_commercial_guarantee",
        +      "type": "string"
        +    },
        +    "voluntary_guarantee_exclusions": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    }
        +  },
        +  "required": [
        +    "type",
        +    "publication_status",
        +    "customer_scope",
        +    "country_scope",
        +    "duration_years",
        +    "starts",
        +    "coverage",
        +    "remedies",
        +    "accepted_claim_costs",
        +    "discontinued_exact_material_or_component",
        +    "performance_timing",
        +    "mandatory_period_adjustments",
        +    "reasonable_evidence_may_be_requested",
        +    "voluntary_guarantee_exclusions",
        +    "claim_process",
        +    "retained_image_deletion_effect",
        +    "mandatory_statutory_rights",
        +    "policy_url",
        +    "policy_selector",
        +    "terms_document_count",
        +    "terms_version",
        +    "description"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / images
        Added value: +{
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "altText": {
        +        "type": "string"
        +      },
        +      "height": {
        +        "type": "number"
        +      },
        +      "url": {
        +        "type": "string"
        +      },
        +      "width": {
        +        "type": "number"
        +      }
        +    },
        +    "required": [
        +      "url",
        +      "altText",
        +      "width",
        +      "height"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
      • changedOutput schema / properties / launch_gate / additionalProperties
        Previous value: -{}New value: +false
      • addedOutput schema / properties / launch_gate / properties
        Added value: +{
        +  "availability": {
        +    "const": "not_available",
        +    "type": "string"
        +  },
        +  "checkout_phase": {
        +    "const": "blocked",
        +    "type": "string"
        +  },
        +  "message": {
        +    "type": "string"
        +  },
        +  "reason": {
        +    "type": "string"
        +  },
        +  "required_compliance_gate": {
        +    "type": "string"
        +  },
        +  "supports_agent_checkout": {
        +    "const": false,
        +    "type": "boolean"
        +  }
        +}
      • removedOutput schema / properties / launch_gate / propertyNames
        Removed value: -{
        -  "type": "string"
        -}
      • addedOutput schema / properties / launch_gate / required
        Added value: +[
        +  "availability",
        +  "reason",
        +  "message",
        +  "required_compliance_gate",
        +  "supports_agent_checkout",
        +  "checkout_phase"
        +]
      • addedOutput schema / properties / limit_bytes
        Added value: +{
        +  "type": "number"
        +}
      • addedOutput schema / properties / localized_urls
        Added value: +{
        +  "additionalProperties": {
        +    "type": "string"
        +  },
        +  "propertyNames": {
        +    "type": "string"
        +  },
        +  "type": "object"
        +}
      • addedOutput schema / properties / material
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "mounting": {
        +      "type": "string"
        +    },
        +    "process": {
        +      "type": "string"
        +    },
        +    "thickness": {
        +      "type": "string"
        +    },
        +    "type": {
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "type",
        +    "thickness",
        +    "process",
        +    "mounting"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / options
        Added value: +{
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "name": {
        +        "type": "string"
        +      },
        +      "values": {
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      }
        +    },
        +    "required": [
        +      "name",
        +      "values"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
      • addedOutput schema / properties / price
        Added value: +{
        +  "anyOf": [
        +    {
        +      "additionalProperties": false,
        +      "properties": {
        +        "amount": {
        +          "type": "string"
        +        },
        +        "currency": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "amount",
        +        "currency"
        +      ],
        +      "type": "object"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ]
        +}
      • addedOutput schema / properties / product
        Added value: +{
        +  "type": "string"
        +}
      • addedOutput schema / properties / productType
        Added value: +{
        +  "type": "string"
        +}
      • addedOutput schema / properties / product_comparison
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "differences": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    },
        +    "vs_product": {
        +      "type": "string"
        +    },
        +    "vs_product_title": {
        +      "type": "string"
        +    },
        +    "when_to_choose_other": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    },
        +    "when_to_choose_this": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    }
        +  },
        +  "required": [
        +    "vs_product",
        +    "vs_product_title",
        +    "differences",
        +    "when_to_choose_this",
        +    "when_to_choose_other"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / product_nature
        Added value: +{
        +  "type": "string"
        +}
      • changedOutput schema / properties / products / items / additionalProperties
        Previous value: -{}New value: +false
      • addedOutput schema / properties / products / items / properties
        Added value: +{
        +  "active_promotions": {
        +    "items": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "active": {
        +          "type": "boolean"
        +        },
        +        "description": {
        +          "type": "string"
        +        },
        +        "gift_value": {
        +          "additionalProperties": false,
        +          "properties": {
        +            "amount": {
        +              "type": "string"
        +            },
        +            "currency": {
        +              "type": "string"
        +            }
        +          },
        +          "required": [
        +            "amount",
        +            "currency"
        +          ],
        +          "type": "object"
        +        },
        +        "id": {
        +          "type": "string"
        +        },
        +        "qualifying_variants": {
        +          "items": {
        +            "type": "string"
        +          },
        +          "type": "array"
        +        },
        +        "terms": {
        +          "type": "string"
        +        },
        +        "title": {
        +          "type": "string"
        +        },
        +        "type": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "id",
        +        "type",
        +        "title",
        +        "description",
        +        "qualifying_variants",
        +        "active"
        +      ],
        +      "type": "object"
        +    },
        +    "type": "array"
        +  },
        +  "availability": {
        +    "enum": [
        +      "in_stock",
        +      "out_of_stock",
        +      "preorder"
        +    ],
        +    "type": "string"
        +  },
        +  "b2b": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "available": {
        +        "type": "boolean"
        +      },
        +      "b2b_page_url": {
        +        "type": "string"
        +      },
        +      "contact_email": {
        +        "type": "string"
        +      },
        +      "contact_subject": {
        +        "type": "string"
        +      },
        +      "programs": {
        +        "items": {
        +          "additionalProperties": false,
        +          "properties": {
        +            "description": {
        +              "type": "string"
        +            },
        +            "min_order": {
        +              "anyOf": [
        +                {
        +                  "type": "number"
        +                },
        +                {
        +                  "type": "null"
        +                }
        +              ]
        +            },
        +            "name": {
        +              "type": "string"
        +            }
        +          },
        +          "required": [
        +            "name",
        +            "min_order",
        +            "description"
        +          ],
        +          "type": "object"
        +        },
        +        "type": "array"
        +      },
        +      "vat_invoicing": {
        +        "type": "boolean"
        +      }
        +    },
        +    "required": [
        +      "available",
        +      "programs",
        +      "contact_email",
        +      "contact_subject",
        +      "b2b_page_url",
        +      "vat_invoicing"
        +    ],
        +    "type": "object"
        +  },
        +  "compareAtPrice": {
        +    "anyOf": [
        +      {
        +        "additionalProperties": false,
        +        "properties": {
        +          "amount": {
        +            "type": "string"
        +          },
        +          "currency": {
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "amount",
        +          "currency"
        +        ],
        +        "type": "object"
        +      },
        +      {
        +        "type": "null"
        +      }
        +    ]
        +  },
        +  "customization": {
        +    "anyOf": [
        +      {
        +        "additionalProperties": false,
        +        "properties": {
        +          "checkout_attribute": {
        +            "additionalProperties": false,
        +            "properties": {
        +              "description": {
        +                "type": "string"
        +              },
        +              "key": {
        +                "type": "string"
        +              },
        +              "required": {
        +                "type": "boolean"
        +              }
        +            },
        +            "required": [
        +              "key",
        +              "description",
        +              "required"
        +            ],
        +            "type": "object"
        +          },
        +          "configurator_url": {
        +            "type": "string"
        +          },
        +          "crop_tool": {
        +            "type": "boolean"
        +          },
        +          "description": {
        +            "type": "string"
        +          },
        +          "image_upload": {
        +            "additionalProperties": false,
        +            "properties": {
        +              "formats": {
        +                "items": {
        +                  "type": "string"
        +                },
        +                "type": "array"
        +              },
        +              "max_file_size": {
        +                "type": "string"
        +              },
        +              "min_resolution": {
        +                "additionalProperties": false,
        +                "properties": {
        +                  "height": {
        +                    "type": "number"
        +                  },
        +                  "width": {
        +                    "type": "number"
        +                  }
        +                },
        +                "required": [
        +                  "width",
        +                  "height"
        +                ],
        +                "type": "object"
        +              },
        +              "recommended_resolution": {
        +                "additionalProperties": false,
        +                "properties": {
        +                  "height": {
        +                    "type": "number"
        +                  },
        +                  "width": {
        +                    "type": "number"
        +                  }
        +                },
        +                "required": [
        +                  "width",
        +                  "height"
        +                ],
        +                "type": "object"
        +              },
        +              "required": {
        +                "type": "boolean"
        +              }
        +            },
        +            "required": [
        +              "required",
        +              "formats",
        +              "max_file_size",
        +              "min_resolution",
        +              "recommended_resolution"
        +            ],
        +            "type": "object"
        +          },
        +          "ordering_flow": {
        +            "items": {
        +              "type": "string"
        +            },
        +            "type": "array"
        +          },
        +          "required": {
        +            "type": "boolean"
        +          },
        +          "three_d_preview": {
        +            "type": "boolean"
        +          },
        +          "type": {
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "required",
        +          "type",
        +          "description",
        +          "image_upload",
        +          "crop_tool",
        +          "three_d_preview",
        +          "configurator_url",
        +          "ordering_flow",
        +          "checkout_attribute"
        +        ],
        +        "type": "object"
        +      },
        +      {
        +        "type": "null"
        +      }
        +    ]
        +  },
        +  "description": {
        +    "type": "string"
        +  },
        +  "featuredImage": {
        +    "anyOf": [
        +      {
        +        "additionalProperties": false,
        +        "properties": {
        +          "altText": {
        +            "type": "string"
        +          },
        +          "height": {
        +            "type": "number"
        +          },
        +          "url": {
        +            "type": "string"
        +          },
        +          "width": {
        +            "type": "number"
        +          }
        +        },
        +        "required": [
        +          "url",
        +          "altText",
        +          "width",
        +          "height"
        +        ],
        +        "type": "object"
        +      },
        +      {
        +        "type": "null"
        +      }
        +    ]
        +  },
        +  "finish_guide": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "decision_rule": {
        +        "type": "string"
        +      },
        +      "options": {
        +        "items": {
        +          "additionalProperties": false,
        +          "properties": {
        +            "avoid_for": {
        +              "items": {
        +                "type": "string"
        +              },
        +              "type": "array"
        +            },
        +            "best_for": {
        +              "items": {
        +                "type": "string"
        +              },
        +              "type": "array"
        +            },
        +            "description": {
        +              "type": "string"
        +            },
        +            "name": {
        +              "type": "string"
        +            }
        +          },
        +          "required": [
        +            "name",
        +            "description",
        +            "best_for",
        +            "avoid_for"
        +          ],
        +          "type": "object"
        +        },
        +        "type": "array"
        +      }
        +    },
        +    "required": [
        +      "options",
        +      "decision_rule"
        +    ],
        +    "type": "object"
        +  },
        +  "gifting": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "budget_tiers": {
        +        "items": {
        +          "additionalProperties": false,
        +          "properties": {
        +            "currency": {
        +              "anyOf": [
        +                {
        +                  "type": "string"
        +                },
        +                {
        +                  "type": "null"
        +                }
        +              ]
        +            },
        +            "from": {
        +              "anyOf": [
        +                {
        +                  "type": "string"
        +                },
        +                {
        +                  "type": "null"
        +                }
        +              ]
        +            },
        +            "label": {
        +              "type": "string"
        +            },
        +            "variant": {
        +              "type": "string"
        +            }
        +          },
        +          "required": [
        +            "label",
        +            "variant",
        +            "from",
        +            "currency"
        +          ],
        +          "type": "object"
        +        },
        +        "type": "array"
        +      },
        +      "gift_message": {
        +        "type": "boolean"
        +      },
        +      "gift_wrapping": {
        +        "type": "boolean"
        +      },
        +      "is_giftable": {
        +        "type": "boolean"
        +      }
        +    },
        +    "required": [
        +      "is_giftable",
        +      "gift_wrapping",
        +      "gift_message",
        +      "budget_tiers"
        +    ],
        +    "type": "object"
        +  },
        +  "handle": {
        +    "type": "string"
        +  },
        +  "images": {
        +    "items": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "altText": {
        +          "type": "string"
        +        },
        +        "height": {
        +          "type": "number"
        +        },
        +        "url": {
        +          "type": "string"
        +        },
        +        "width": {
        +          "type": "number"
        +        }
        +      },
        +      "required": [
        +        "url",
        +        "altText",
        +        "width",
        +        "height"
        +      ],
        +      "type": "object"
        +    },
        +    "type": "array"
        +  },
        +  "launch_gate": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "availability": {
        +        "const": "not_available",
        +        "type": "string"
        +      },
        +      "checkout_phase": {
        +        "const": "blocked",
        +        "type": "string"
        +      },
        +      "message": {
        +        "type": "string"
        +      },
        +      "reason": {
        +        "type": "string"
        +      },
        +      "required_compliance_gate": {
        +        "type": "string"
        +      },
        +      "supports_agent_checkout": {
        +        "const": false,
        +        "type": "boolean"
        +      }
        +    },
        +    "required": [
        +      "availability",
        +      "reason",
        +      "message",
        +      "required_compliance_gate",
        +      "supports_agent_checkout",
        +      "checkout_phase"
        +    ],
        +    "type": "object"
        +  },
        +  "material": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "mounting": {
        +        "type": "string"
        +      },
        +      "process": {
        +        "type": "string"
        +      },
        +      "thickness": {
        +        "type": "string"
        +      },
        +      "type": {
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "type",
        +      "thickness",
        +      "process",
        +      "mounting"
        +    ],
        +    "type": "object"
        +  },
        +  "options": {
        +    "items": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "name": {
        +          "type": "string"
        +        },
        +        "values": {
        +          "items": {
        +            "type": "string"
        +          },
        +          "type": "array"
        +        }
        +      },
        +      "required": [
        +        "name",
        +        "values"
        +      ],
        +      "type": "object"
        +    },
        +    "type": "array"
        +  },
        +  "price": {
        +    "anyOf": [
        +      {
        +        "additionalProperties": false,
        +        "properties": {
        +          "amount": {
        +            "type": "string"
        +          },
        +          "currency": {
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "amount",
        +          "currency"
        +        ],
        +        "type": "object"
        +      },
        +      {
        +        "type": "null"
        +      }
        +    ]
        +  },
        +  "productType": {
        +    "type": "string"
        +  },
        +  "product_nature": {
        +    "type": "string"
        +  },
        +  "shipping": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "estimatedDays": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "max": {
        +            "type": "number"
        +          },
        +          "min": {
        +            "type": "number"
        +          }
        +        },
        +        "required": [
        +          "min",
        +          "max"
        +        ],
        +        "type": "object"
        +      },
        +      "freeAbove": {
        +        "anyOf": [
        +          {
        +            "additionalProperties": false,
        +            "properties": {
        +              "amount": {
        +                "type": "string"
        +              },
        +              "currency": {
        +                "type": "string"
        +              }
        +            },
        +            "required": [
        +              "amount",
        +              "currency"
        +            ],
        +            "type": "object"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ]
        +      },
        +      "productionDays": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "max": {
        +            "type": "number"
        +          },
        +          "min": {
        +            "type": "number"
        +          }
        +        },
        +        "required": [
        +          "min",
        +          "max"
        +        ],
        +        "type": "object"
        +      },
        +      "zones": {
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      }
        +    },
        +    "required": [
        +      "freeAbove",
        +      "estimatedDays",
        +      "zones",
        +      "productionDays"
        +    ],
        +    "type": "object"
        +  },
        +  "tags": {
        +    "items": {
        +      "type": "string"
        +    },
        +    "type": "array"
        +  },
        +  "title": {
        +    "type": "string"
        +  },
        +  "url": {
        +    "type": "string"
        +  },
        +  "variants": {
        +    "items": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "availability": {
        +          "enum": [
        +            "in_stock",
        +            "out_of_stock",
        +            "preorder"
        +          ],
        +          "type": "string"
        +        },
        +        "compareAtPrice": {
        +          "anyOf": [
        +            {
        +              "additionalProperties": false,
        +              "properties": {
        +                "amount": {
        +                  "type": "string"
        +                },
        +                "currency": {
        +                  "type": "string"
        +                }
        +              },
        +              "required": [
        +                "amount",
        +                "currency"
        +              ],
        +              "type": "object"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ]
        +        },
        +        "dimensions": {
        +          "additionalProperties": false,
        +          "properties": {
        +            "height_cm": {
        +              "type": "number"
        +            },
        +            "width_cm": {
        +              "type": "number"
        +            }
        +          },
        +          "required": [
        +            "width_cm",
        +            "height_cm"
        +          ],
        +          "type": "object"
        +        },
        +        "image": {
        +          "anyOf": [
        +            {
        +              "additionalProperties": false,
        +              "properties": {
        +                "altText": {
        +                  "type": "string"
        +                },
        +                "height": {
        +                  "type": "number"
        +                },
        +                "url": {
        +                  "type": "string"
        +                },
        +                "width": {
        +                  "type": "number"
        +                }
        +              },
        +              "required": [
        +                "url",
        +                "altText",
        +                "width",
        +                "height"
        +              ],
        +              "type": "object"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ]
        +        },
        +        "options": {
        +          "items": {
        +            "additionalProperties": false,
        +            "properties": {
        +              "name": {
        +                "type": "string"
        +              },
        +              "value": {
        +                "type": "string"
        +              }
        +            },
        +            "required": [
        +              "name",
        +              "value"
        +            ],
        +            "type": "object"
        +          },
        +          "type": "array"
        +        },
        +        "price": {
        +          "anyOf": [
        +            {
        +              "additionalProperties": false,
        +              "properties": {
        +                "amount": {
        +                  "type": "string"
        +                },
        +                "currency": {
        +                  "type": "string"
        +                }
        +              },
        +              "required": [
        +                "amount",
        +                "currency"
        +              ],
        +              "type": "object"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ]
        +        },
        +        "sku": {
        +          "anyOf": [
        +            {
        +              "type": "string"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ]
        +        },
        +        "title": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "title",
        +        "sku",
        +        "price",
        +        "compareAtPrice",
        +        "availability",
        +        "options",
        +        "image"
        +      ],
        +      "type": "object"
        +    },
        +    "type": "array"
        +  },
        +  "vendor": {
        +    "type": "string"
        +  }
        +}
      • removedOutput schema / properties / products / items / propertyNames
        Removed value: -{
        -  "type": "string"
        -}
      • addedOutput schema / properties / products / items / required
        Added value: +[
        +  "handle",
        +  "title",
        +  "description",
        +  "price",
        +  "compareAtPrice",
        +  "availability",
        +  "images",
        +  "featuredImage",
        +  "variants",
        +  "options",
        +  "tags",
        +  "productType",
        +  "vendor",
        +  "shipping",
        +  "customization",
        +  "product_nature",
        +  "material",
        +  "url"
        +]
      • addedOutput schema / properties / proof_workflow
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "applies_when": {
        +      "const": "bolot_studio_requests_crop_or_correction_approval",
        +      "type": "string"
        +    },
        +    "description": {
        +      "type": "string"
        +    },
        +    "no_response_outcome": {
        +      "const": "produce_using_original_crop_submitted_with_order",
        +      "type": "string"
        +    },
        +    "no_response_waives_nonconformity_rights": {
        +      "const": false,
        +      "type": "boolean"
        +    },
        +    "proof_approval_waives_nonconformity_rights": {
        +      "const": false,
        +      "type": "boolean"
        +    },
        +    "response_period": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "maximum_business_days": {
        +          "const": 5,
        +          "type": "number"
        +        }
        +      },
        +      "required": [
        +        "maximum_business_days"
        +      ],
        +      "type": "object"
        +    }
        +  },
        +  "required": [
        +    "applies_when",
        +    "response_period",
        +    "no_response_outcome",
        +    "proof_approval_waives_nonconformity_rights",
        +    "no_response_waives_nonconformity_rights",
        +    "description"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / quality_assurance
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "color_accuracy": {
        +      "type": "string"
        +    },
        +    "defect_policy": {
        +      "type": "string"
        +    },
        +    "individual_inspection": {
        +      "type": "boolean"
        +    },
        +    "inspection_description": {
        +      "type": "string"
        +    },
        +    "production_method": {
        +      "type": "string"
        +    },
        +    "quality_standard": {
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "individual_inspection",
        +    "inspection_description",
        +    "color_accuracy",
        +    "production_method",
        +    "quality_standard"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / reason
        Added value: +{
        +  "type": "string"
        +}
      • addedOutput schema / properties / returns
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "changeOfMindReturns": {
        +      "const": "not_offered_for_personalized_goods",
        +      "type": "string"
        +    },
        +    "coverage": {
        +      "type": "string"
        +    },
        +    "days": {
        +      "anyOf": [
        +        {
        +          "type": "number"
        +        },
        +        {
        +          "type": "null"
        +        }
        +      ]
        +    },
        +    "eligibleReasons": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    },
        +    "excludedReasons": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    },
        +    "freeReturns": {
        +      "const": false,
        +      "type": "boolean"
        +    },
        +    "legalBasis": {
        +      "type": "string"
        +    },
        +    "merchantPaidVerifiedIssueReturns": {
        +      "const": true,
        +      "type": "boolean"
        +    },
        +    "personalizedGoodsExemption": {
        +      "type": "boolean"
        +    },
        +    "process": {
        +      "type": "string"
        +    },
        +    "qualityIssueReportingHasSeparateDeadline": {
        +      "const": false,
        +      "type": "boolean"
        +    },
        +    "qualityIssueReportingTiming": {
        +      "const": "promptly_after_discovery",
        +      "type": "string"
        +    },
        +    "seasonal_override": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "days": {
        +          "type": "number"
        +        },
        +        "description": {
        +          "type": "string"
        +        },
        +        "period": {
        +          "additionalProperties": false,
        +          "properties": {
        +            "end": {
        +              "type": "string"
        +            },
        +            "start": {
        +              "type": "string"
        +            }
        +          },
        +          "required": [
        +            "start",
        +            "end"
        +          ],
        +          "type": "object"
        +        }
        +      },
        +      "required": [
        +        "period",
        +        "days",
        +        "description"
        +      ],
        +      "type": "object"
        +    },
        +    "type": {
        +      "const": "statutory_remedies_personalized_goods",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "days",
        +    "type",
        +    "freeReturns",
        +    "changeOfMindReturns",
        +    "qualityIssueReportingTiming",
        +    "qualityIssueReportingHasSeparateDeadline",
        +    "merchantPaidVerifiedIssueReturns"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / shipping
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "estimatedDays": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "max": {
        +          "type": "number"
        +        },
        +        "min": {
        +          "type": "number"
        +        }
        +      },
        +      "required": [
        +        "min",
        +        "max"
        +      ],
        +      "type": "object"
        +    },
        +    "freeAbove": {
        +      "anyOf": [
        +        {
        +          "additionalProperties": false,
        +          "properties": {
        +            "amount": {
        +              "type": "string"
        +            },
        +            "currency": {
        +              "type": "string"
        +            }
        +          },
        +          "required": [
        +            "amount",
        +            "currency"
        +          ],
        +          "type": "object"
        +        },
        +        {
        +          "type": "null"
        +        }
        +      ]
        +    },
        +    "productionDays": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "max": {
        +          "type": "number"
        +        },
        +        "min": {
        +          "type": "number"
        +        }
        +      },
        +      "required": [
        +        "min",
        +        "max"
        +      ],
        +      "type": "object"
        +    },
        +    "zones": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    }
        +  },
        +  "required": [
        +    "freeAbove",
        +    "estimatedDays",
        +    "zones",
        +    "productionDays"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / shipping_zones
        Added value: +{
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "carrier": {
        +        "type": "string"
        +      },
        +      "countries": {
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "delivery_days": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "max": {
        +            "type": "number"
        +          },
        +          "min": {
        +            "type": "number"
        +          }
        +        },
        +        "required": [
        +          "min",
        +          "max"
        +        ],
        +        "type": "object"
        +      },
        +      "zone": {
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "zone",
        +      "countries",
        +      "delivery_days"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
      • addedOutput schema / properties / social_proof
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "aggregate_rating": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "review_count": {
        +          "type": "number"
        +        },
        +        "reviews_with_photos_count": {
        +          "type": "number"
        +        },
        +        "scale": {
        +          "type": "number"
        +        },
        +        "value": {
        +          "type": "number"
        +        },
        +        "verified_purchase_count": {
        +          "type": "number"
        +        }
        +      },
        +      "required": [
        +        "value",
        +        "scale",
        +        "review_count",
        +        "verified_purchase_count",
        +        "reviews_with_photos_count"
        +      ],
        +      "type": "object"
        +    },
        +    "featured_reviews": {
        +      "items": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "author": {
        +            "type": "string"
        +          },
        +          "body": {
        +            "type": "string"
        +          },
        +          "date": {
        +            "type": "string"
        +          },
        +          "has_photo": {
        +            "type": "boolean"
        +          },
        +          "rating": {
        +            "type": "number"
        +          },
        +          "variant": {
        +            "type": "string"
        +          },
        +          "verified_purchase": {
        +            "type": "boolean"
        +          }
        +        },
        +        "required": [
        +          "author",
        +          "rating",
        +          "body",
        +          "verified_purchase",
        +          "has_photo",
        +          "date"
        +        ],
        +        "type": "object"
        +      },
        +      "type": "array"
        +    },
        +    "review_page_url": {
        +      "type": "string"
        +    },
        +    "review_source": {
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "aggregate_rating",
        +    "featured_reviews",
        +    "review_source",
        +    "review_page_url"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / sustainability
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "certifications": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    },
        +    "material_recyclability": {
        +      "type": "string"
        +    },
        +    "packaging": {
        +      "type": "string"
        +    },
        +    "process_claims": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    }
        +  },
        +  "required": [
        +    "material_recyclability",
        +    "process_claims",
        +    "packaging",
        +    "certifications"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / tags
        Added value: +{
        +  "items": {
        +    "type": "string"
        +  },
        +  "type": "array"
        +}
      • addedOutput schema / properties / title
        Added value: +{
        +  "type": "string"
        +}
      • addedOutput schema / properties / tool
        Added value: +{
        +  "type": "string"
        +}
      • addedOutput schema / properties / updatedAt
        Added value: +{
        +  "type": "string"
        +}
      • addedOutput schema / properties / url
        Added value: +{
        +  "type": "string"
        +}
      • addedOutput schema / properties / use_cases
        Added value: +{
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "age_range": {
        +        "type": "string"
        +      },
        +      "occasion": {
        +        "type": "string"
        +      },
        +      "price_from": {
        +        "anyOf": [
        +          {
        +            "additionalProperties": false,
        +            "properties": {
        +              "amount": {
        +                "type": "string"
        +              },
        +              "currency": {
        +                "type": "string"
        +              }
        +            },
        +            "required": [
        +              "amount",
        +              "currency"
        +            ],
        +            "type": "object"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ]
        +      },
        +      "recipient_profile": {
        +        "type": "string"
        +      },
        +      "recommended_finish": {
        +        "type": "string"
        +      },
        +      "recommended_variant": {
        +        "type": "string"
        +      },
        +      "seasonal": {
        +        "type": "boolean"
        +      },
        +      "why": {
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "occasion",
        +      "recommended_variant",
        +      "recommended_finish",
        +      "price_from",
        +      "why"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
      • addedOutput schema / properties / variants
        Added value: +{
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "availability": {
        +        "enum": [
        +          "in_stock",
        +          "out_of_stock",
        +          "preorder"
        +        ],
        +        "type": "string"
        +      },
        +      "compareAtPrice": {
        +        "anyOf": [
        +          {
        +            "additionalProperties": false,
        +            "properties": {
        +              "amount": {
        +                "type": "string"
        +              },
        +              "currency": {
        +                "type": "string"
        +              }
        +            },
        +            "required": [
        +              "amount",
        +              "currency"
        +            ],
        +            "type": "object"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ]
        +      },
        +      "dimensions": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "height_cm": {
        +            "type": "number"
        +          },
        +          "width_cm": {
        +            "type": "number"
        +          }
        +        },
        +        "required": [
        +          "width_cm",
        +          "height_cm"
        +        ],
        +        "type": "object"
        +      },
        +      "image": {
        +        "anyOf": [
        +          {
        +            "additionalProperties": false,
        +            "properties": {
        +              "altText": {
        +                "type": "string"
        +              },
        +              "height": {
        +                "type": "number"
        +              },
        +              "url": {
        +                "type": "string"
        +              },
        +              "width": {
        +                "type": "number"
        +              }
        +            },
        +            "required": [
        +              "url",
        +              "altText",
        +              "width",
        +              "height"
        +            ],
        +            "type": "object"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ]
        +      },
        +      "options": {
        +        "items": {
        +          "additionalProperties": false,
        +          "properties": {
        +            "name": {
        +              "type": "string"
        +            },
        +            "value": {
        +              "type": "string"
        +            }
        +          },
        +          "required": [
        +            "name",
        +            "value"
        +          ],
        +          "type": "object"
        +        },
        +        "type": "array"
        +      },
        +      "price": {
        +        "anyOf": [
        +          {
        +            "additionalProperties": false,
        +            "properties": {
        +              "amount": {
        +                "type": "string"
        +              },
        +              "currency": {
        +                "type": "string"
        +              }
        +            },
        +            "required": [
        +              "amount",
        +              "currency"
        +            ],
        +            "type": "object"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ]
        +      },
        +      "sku": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ]
        +      },
        +      "title": {
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "title",
        +      "sku",
        +      "price",
        +      "compareAtPrice",
        +      "availability",
        +      "options",
        +      "image"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
      • addedOutput schema / properties / vendor
        Added value: +{
        +  "type": "string"
        +}
      • changedOutput schema / properties / wall_art_launch_gate / additionalProperties
        Previous value: -{}New value: +false
      • addedOutput schema / properties / wall_art_launch_gate / properties
        Added value: +{
        +  "availability": {
        +    "const": "not_available",
        +    "type": "string"
        +  },
        +  "checkout_phase": {
        +    "const": "blocked",
        +    "type": "string"
        +  },
        +  "message": {
        +    "type": "string"
        +  },
        +  "reason": {
        +    "type": "string"
        +  },
        +  "required_compliance_gate": {
        +    "type": "string"
        +  },
        +  "supports_agent_checkout": {
        +    "const": false,
        +    "type": "boolean"
        +  }
        +}
      • removedOutput schema / properties / wall_art_launch_gate / propertyNames
        Removed value: -{
        -  "type": "string"
        -}
      • addedOutput schema / properties / wall_art_launch_gate / required
        Added value: +[
        +  "availability",
        +  "reason",
        +  "message",
        +  "required_compliance_gate",
        +  "supports_agent_checkout",
        +  "checkout_phase"
        +]
    • Changedstart_configuration1 field changed
      • addedOutput schema / properties / _response_budget
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "dropped": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    },
        +    "limit_bytes": {
        +      "type": "number"
        +    },
        +    "note": {
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "dropped",
        +    "limit_bytes",
        +    "note"
        +  ],
        +  "type": "object"
        +}
  6. 1 tool update
    • Changedsearch_policies_and_faqs1 field changed
      • changedOutput schema / properties / faqs / items / properties / source / enum
        Previous value: -[
        -  "faq_page",
        -  "product_faq"
        -]New value: +[
        +  "faq_page",
        +  "product_faq",
        +  "guarantee"
        +]
  7. 3 tool updates
    • Changedsearch_policies_and_faqs6 fields changed
      • addedOutput schema / properties / faqs / items / properties / locale
        Added value: +{
        +  "type": "string"
        +}
      • addedOutput schema / properties / faqs / items / properties / source
        Added value: +{
        +  "enum": [
        +    "faq_page",
        +    "product_faq"
        +  ],
        +  "type": "string"
        +}
      • changedOutput schema / properties / faqs / items / required
        Previous value: -[
        -  "product",
        -  "question",
        -  "answer"
        -]New value: +[
        +  "question",
        +  "answer"
        +]
      • addedOutput schema / properties / locale
        Added value: +{
        +  "type": "string"
        +}
      • addedOutput schema / properties / locale_fallback
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / returned_matches
        Added value: +{
        +  "type": "number"
        +}
    • Changedsearch_products1 field changed
      • addedInput schema / properties / detail
        Added value: +{
        +  "description": "Only used together with `handle` (single-product lookup). When true, returns the full enriched product record — AI summary, use cases, FAQs, competitive positioning, social proof, gallery, shipping zones, guarantee/returns/quality-assurance detail — for that ONE product, still capped to the server's response size limit. Default false returns the compact card shape (handle, title, short description, price, variants, one image, product URL) that every search and every default single-product lookup uses.",
        +  "type": "boolean"
        +}
    • Changedsearch_products_task1 field changed
      • addedInput schema / properties / detail
        Added value: +{
        +  "description": "Only used together with `handle` (single-product lookup). When true, returns the full enriched product record — AI summary, use cases, FAQs, competitive positioning, social proof, gallery, shipping zones, guarantee/returns/quality-assurance detail — for that ONE product, still capped to the server's response size limit. Default false returns the compact card shape (handle, title, short description, price, variants, one image, product URL) that every search and every default single-product lookup uses.",
        +  "type": "boolean"
        +}
  8. 3 tool updates
    • Changedcheck_photo_compatibility15 fields changed
      • addedInput schema / properties / country
        Added value: +{
        +  "description": "Delivery country as ISO alpha-2 or alpha-3. Required before market-visible print formats can be shown.",
        +  "maxLength": 3,
        +  "type": "string"
        +}
      • addedOutput schema / properties / assessment_status
        Added value: +{
        +  "enum": [
        +    "destination_required",
        +    "requires_configurator_review",
        +    "product_unavailable"
        +  ],
        +  "type": "string"
        +}
      • addedOutput schema / properties / available_print_formats
        Added value: +{
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "dimensions_cm": {
        +        "type": "string"
        +      },
        +      "label": {
        +        "type": "string"
        +      },
        +      "product": {
        +        "type": "string"
        +      },
        +      "size": {
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "product",
        +      "size",
        +      "label",
        +      "dimensions_cm"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
      • addedOutput schema / properties / compatibility_determined
        Added value: +{
        +  "type": "boolean"
        +}
      • removedOutput schema / properties / compatible_count
        Removed value: -{
        -  "type": "number"
        -}
      • addedOutput schema / properties / country
        Added value: +{
        +  "anyOf": [
        +    {
        +      "type": "string"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ]
        +}
      • addedOutput schema / properties / launch_gate
        Added value: +{
        +  "additionalProperties": {},
        +  "propertyNames": {
        +    "type": "string"
        +  },
        +  "type": "object"
        +}
      • addedOutput schema / properties / market
        Added value: +{
        +  "anyOf": [
        +    {
        +      "type": "string"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ]
        +}
      • addedOutput schema / properties / recommendation / anyOf
        Added value: +[
        +  {
        +    "type": "string"
        +  },
        +  {
        +    "type": "null"
        +  }
        +]
      • removedOutput schema / properties / recommendation / type
        Removed value: -"string"
      • addedOutput schema / properties / recommended_format
        Added value: +{
        +  "type": "null"
        +}
      • removedOutput schema / properties / recommended_size
        Removed value: -{
        -  "anyOf": [
        -    {
        -      "additionalProperties": false,
        -      "properties": {
        -        "label": {
        -          "type": "string"
        -        },
        -        "quality": {
        -          "enum": [
        -            "excellent",
        -            "good",
        -            "minimum",
        -            "too_low"
        -          ],
        -          "type": "string"
        -        },
        -        "size": {
        -          "type": "string"
        -        },
        -        "size_cm": {
        -          "type": "string"
        -        }
        -      },
        -      "required": [
        -        "size",
        -        "label",
        -        "size_cm",
        -        "quality"
        -      ],
        -      "type": "object"
        -    },
        -    {
        -      "type": "null"
        -    }
        -  ]
        -}
      • addedOutput schema / properties / review_factors
        Added value: +{
        +  "items": {
        +    "type": "string"
        +  },
        +  "type": "array"
        +}
      • removedOutput schema / properties / sizes
        Removed value: -{
        -  "items": {
        -    "additionalProperties": false,
        -    "properties": {
        -      "compatible": {
        -        "type": "boolean"
        -      },
        -      "label": {
        -        "type": "string"
        -      },
        -      "min_height": {
        -        "type": "number"
        -      },
        -      "min_width": {
        -        "type": "number"
        -      },
        -      "quality": {
        -        "enum": [
        -          "excellent",
        -          "good",
        -          "minimum",
        -          "too_low"
        -        ],
        -        "type": "string"
        -      },
        -      "size": {
        -        "type": "string"
        -      },
        -      "size_cm": {
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "size",
        -      "label",
        -      "size_cm",
        -      "min_width",
        -      "min_height",
        -      "compatible",
        -      "quality"
        -    ],
        -    "type": "object"
        -  },
        -  "type": "array"
        -}
      • addedOutput schema / properties / supported_upload_formats
        Added value: +{
        +  "items": {
        +    "type": "string"
        +  },
        +  "type": "array"
        +}
    • Changedcheck_photo_compatibility_task1 field changed
      • addedInput schema / properties / country
        Added value: +{
        +  "description": "Delivery country as ISO alpha-2 or alpha-3. Required before market-visible print formats can be shown.",
        +  "maxLength": 3,
        +  "type": "string"
        +}
    • Changedstart_configuration2 fields changed
      • changedInput schema / properties / size / description
        Previous value: -"Pre-select size. Valid set depends on the product: 'the-legacy-print' → 'classic' or 'statement'; 'the-cinematic-print' → 'intimate', 'classic', or 'statement'. An unsupported size for the chosen product returns an invalid_size_for_product error. Not applicable to the address sign."New value: +"Pre-select size. Valid set depends on the product: 'the-legacy-print' → 'keepsake-3-pack', 'classic', or 'statement'; 'the-cinematic-print' → 'intimate', 'classic', or 'statement'. The retired single token 'keepsake' is never accepted."
      • changedInput schema / properties / size / enum
        Previous value: -[
        -  "classic",
        -  "statement",
        -  "intimate"
        -]New value: +[
        +  "keepsake-3-pack",
        +  "classic",
        +  "statement",
        +  "intimate"
        +]
  9. 11 tool updates
    • First observedcheck_photo_compatibility
    • First observedcheck_photo_compatibility_task
    • First observedcompare_products
    • First observedget_product_recommendations
    • First observedget_reviews_summary
    • First observedget_shipping_estimate
    • First observedget_store_info
    • First observedsearch_policies_and_faqs
    • First observedsearch_products
    • First observedsearch_products_task
    • First observedstart_configuration

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables users to search live products on crunchyfashion.in by keyword, collection, price and sort order, retrieve full details for individual items, and browse available collections — with results rendered as a shoppable, storefront-styled carousel or grid.
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables AI assistants to search a catalog of framed public-domain masterworks and NASA photography, look up available sizes, frames and prices, and quote orders before tax and shipping. It can also generate a secure Stripe Checkout link so the buyer pays directly, and report order and shipping status without exposing card data.
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables read-only catalogue discovery through standard MCP tools for searching, batch lookup, and retrieving product/variant details with prices and availability.
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources