Lorenzo — Premium Streetwear & Denim Shopping
Server Details
Explore Lorenzo's premium streetwear, denim, hoodies, tees and tracksuits for men and women.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- ChatGPT
- –
- Claude
- –
TDQS
Scored across 19 tools
Several pairs genuinely overlap: view_cart vs render_cart (both surface cart contents), begin_checkout vs checkout_link (both return a checkout URL), and product_details vs render_product_detail (both resolve one product). complete_look_product_details has no description at all and collides with render_complete_the_look, while bootstrap_cart_session, render_action_confirmation, and track_product_link are internal plumbing that an agent cannot confidently place. The lengthy render_* descriptions do provide steering, but the boundaries remain unclear for the cart/checkout cluster.
All snake_case, which is good, but conventions are mixed: verb_noun (add_to_cart, cancel_cart, update_cart_item_quantity, render_product_search) alongside bare nouns (checkout_link, product_details) and inconsistently prefixed families where some cart operations use render_* and others don't. Readable, but not a predictable single pattern.
19 tools is on the heavy side for a storefront assistant whose core flows are search, detail, styling, cart, and checkout. A meaningful share of the surface is internal scaffolding (bootstrap_cart_session, render_action_confirmation, track_product_link, complete_look_product_details) that inflates the count without adding shopper-facing capability.
The shopping funnel is well covered: discovery, detail, pairing/styling, size guidance, full cart lifecycle (add, remove, update, replace variant, cancel, view), and checkout handoff. Gaps are minor and mostly out of scope, such as order tracking, wishlists, or shipping/returns information.
Available Tools
19 toolsadd_to_cartCInspect
Add a product variant to the current store cart and preserve existing items.
| Name | Required | Description | Default |
|---|---|---|---|
| cart_id | No | ||
| quantity | No | ||
| variant_id | Yes | ||
| buyer_context | No | ||
| cart_scope_id | No | ||
| source_surface | No | unknown | |
| cart_session_id | No | ||
| subject_product_id | No | ||
| recommendation_type | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| type | No | |
| empty | No | |
| items | No | |
| cartId | No | |
| totals | No | |
| message | Yes | |
| storeId | Yes | |
| snapshotAt | No | |
| cartScopeId | No | |
| cartVersion | No | |
| continueUrl | No | |
| emptyReason | No | |
| snapshotMode | No | |
| cartSessionId | No | |
| lineItemCount | No | |
| cartSessionState | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are supplied, so the description carries the full behavioral burden, and it discloses only that existing cart items are preserved. It says nothing about what happens when no cart exists (cart_id, cart_scope_id, and cart_session_id are all optional), whether the call is idempotent, what errors or stock limits apply, or what authorization is needed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no filler, and the key action leads. The brevity is efficient, though it borders on under-specification given the parameter surface.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With nine parameters, zero schema descriptions, and no annotations, the description is far too thin; an output schema exists so return values need not be explained, but cart-resolution logic and the meaning of the context/attribution fields are missing. An agent could call it with just variant_id but would be guessing at quantity semantics and cart targeting.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across nine parameters, and the description only implicitly covers variant_id via 'product variant'. Quantity, cart_id, cart_scope_id, cart_session_id, buyer_context, source_surface, subject_product_id, and recommendation_type are entirely unexplained in prose, leaving resolution and attribution semantics opaque.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb and resource ('Add a product variant to the current store cart'), so the core action is unambiguous. It does not name or contrast with siblings such as replace_cart_item_variant or update_cart_item_quantity, which prevents a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'preserve existing items' implicitly distinguishes this additive operation from the replace/update siblings, giving an agent a usable signal. However, there is no explicit when-to-use/when-not-to-use guidance and no mention of how to choose between this and replace_cart_item_variant or update_cart_item_quantity.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
begin_checkoutBInspect
Validate the current cart and return its checkout handoff URL.
| Name | Required | Description | Default |
|---|---|---|---|
| source_surface | No | cart | |
| cart_session_id | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| type | No | |
| empty | No | |
| items | No | |
| cartId | No | |
| totals | No | |
| message | Yes | |
| storeId | Yes | |
| snapshotAt | No | |
| cartScopeId | No | |
| cartVersion | No | |
| continueUrl | No | |
| emptyReason | No | |
| snapshotMode | No | |
| cartSessionId | No | |
| lineItemCount | No | |
| cartSessionState | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are supplied, so the description carries the full burden; it does say validation happens and that a handoff URL is returned, but nothing about what happens when validation fails (empty cart, out-of-stock, expired session), whether it mutates cart or checkout state, or what permissions are needed. For a checkout-transition tool with zero annotation coverage this is a substantial gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single tight sentence with the action front-loaded and no filler. It is efficient, though the brevity is partly under-specification rather than genuine concision.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return values need not be explained, but with 0% parameter coverage and no annotations the description leaves the two inputs, failure behavior, and the boundary against checkout_link entirely undocumented. The definition is too thin for a checkout-initiating tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0% for both parameters, and the description never mentions source_surface or cart_session_id, nor the enum values and defaults. Only the phrase 'current cart' indirectly hints that a cart session may be optional, which is insufficient compensation for undocumented parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Validate') plus the resource ('current cart') and names the output ('checkout handoff URL'), which is far more informative than the bare name. It stops short of distinguishing itself from the sibling checkout_link, so the agent cannot fully tell which one to pick.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to call this versus checkout_link or view_cart, no precondition such as a non-empty cart, and no exclusion for already-started checkouts. Usage has to be inferred entirely from the name and description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bootstrap_cart_sessionCInspect
Create or validate the opaque cart session used by this app surface.
| Name | Required | Description | Default |
|---|---|---|---|
| cart_session_id | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| type | No | |
| empty | No | |
| items | No | |
| cartId | No | |
| totals | No | |
| message | Yes | |
| storeId | Yes | |
| snapshotAt | No | |
| cartScopeId | No | |
| cartVersion | No | |
| continueUrl | No | |
| emptyReason | No | |
| snapshotMode | No | |
| cartSessionId | No | |
| lineItemCount | No | |
| cartSessionState | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations supplied, the description carries the full burden. "Opaque" usefully signals the value should not be parsed, but nothing explains what happens when a supplied cart_session_id is expired, malformed, or belongs to another session, nor whether validation failure raises an error or silently creates a new session. The create-vs-validate fork is the tool's central behavior and it is left unexplained.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One sentence, front-loaded with the operative verbs and resource, with no padding or repetition. Its brevity is appropriate to a one-parameter tool, though the space saved is not used to disambiguate the create/validate branch.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return-value structure need not be explained, which relieves much of the burden. However, for a session-bootstrapping tool with zero annotation coverage and an undocumented optional parameter, the definition leaves the failure and idempotency behavior unstated, which is material for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% for the single optional cart_session_id parameter, and the description never mentions it. The agent cannot tell from either source whether omitting it creates a fresh session and supplying it validates an existing one, which is the key semantic distinction the description needed to supply.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb pair and resource: "Create or validate the opaque cart session." That clearly separates it from siblings like add_to_cart, update_cart, and render_cart, which all operate on existing cart contents rather than establishing the session itself. The phrase "used by this app surface" is vague but does not obscure the core purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit when-to-use guidance, no mention of ordering relative to add_to_cart or begin_checkout, and no statement about whether this is idempotent or only called once per session. The phrase "used by this app surface" hints at context but gives the agent nothing actionable about when to invoke it versus simply calling a cart tool directly.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cancel_cartCInspect
Cancel and clear the current store cart completely.
| Name | Required | Description | Default |
|---|---|---|---|
| cart_id | No | current | |
| cart_scope_id | No | ||
| source_surface | No | cart | |
| cart_session_id | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| type | No | |
| empty | No | |
| items | No | |
| cartId | No | |
| totals | No | |
| message | Yes | |
| storeId | Yes | |
| snapshotAt | No | |
| cartScopeId | No | |
| cartVersion | No | |
| continueUrl | No | |
| emptyReason | No | |
| snapshotMode | No | |
| cartSessionId | No | |
| lineItemCount | No | |
| cartSessionState | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are supplied, so the description carries the full behavioral burden for a destructive mutation. It does not say whether the cancelled cart is recoverable, whether an in-progress checkout or session is invalidated, what permissions or auth are needed, or what happens to cart_scope_id/cart_session_id state. Only "completely" hints at the blast radius.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no filler or repetition. It is efficient, though its brevity is part of the under-specification problem rather than a virtue in itself.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return values need not be described, but for a destructive no-annotation tool with four undocumented parameters the description is far too thin. An agent learns what it does but not the consequences, the scope-selection semantics, or how it differs operationally from remove_from_cart and update_cart.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across four parameters, and the description compensates for none of them: cart_id, cart_scope_id, cart_session_id, and the source_surface enum are all left unexplained. Worse, calling out only the "current" cart arguably steers the agent away from the cart_id default of "current" and its override capability.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb pair ("Cancel and clear") and resource ("the current store cart"), which distinguishes it from item-level siblings like remove_from_cart and update_cart_item_quantity. The word "completely" signals whole-cart scope, though the phrase "current store cart" sits awkwardly next to a cart_id parameter that can point elsewhere.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit when-to-use or when-not-to-use guidance and no sibling is named as an alternative. The adverb "completely" implies this is for emptying the whole cart rather than removing a single line item, but the agent must infer that distinction from the sibling list itself.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
checkout_linkCInspect
Get the current continue/checkout URL for the store cart.
| Name | Required | Description | Default |
|---|---|---|---|
| cart_id | No | current | |
| cart_scope_id | No | ||
| cart_session_id | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| type | No | |
| empty | No | |
| items | No | |
| cartId | No | |
| totals | No | |
| message | Yes | |
| storeId | Yes | |
| snapshotAt | No | |
| cartScopeId | No | |
| cartVersion | No | |
| continueUrl | No | |
| emptyReason | No | |
| snapshotMode | No | |
| cartSessionId | No | |
| lineItemCount | No | |
| cartSessionState | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are supplied, so the description carries the full behavioral burden. 'Get' weakly implies a read with no side effects, but the description says nothing about whether the call creates or mutates cart state, what happens when no cart/session exists, whether an anonymous session is created implicitly, or whether the returned URL is stable or single-use.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single short sentence with the resource front-loaded and no filler. Its brevity is not verbosity waste, though it verges on under-specification rather than tightness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return values need not be explained, but the definition leaves three undocumented parameters, no safety/mutation profile, and unclear boundaries with begin_checkout. For a cart-session-aware retrieval tool with three overlapping identifiers, that is not enough to call it confidently.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% for three parameters (cart_id, cart_scope_id, cart_session_id), all nullable with defaults. The description only vaguely implies cart scoping ('for the store cart') and does not explain the difference between the three identifiers or the meaning of the 'current' default, so it does not compensate for the coverage gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource: 'Get the current continue/checkout URL for the store cart.' An agent knows the return is a URL and that it relates to the store cart. It stops short of distinguishing itself from the sibling begin_checkout, which sounds like it could also produce a checkout URL.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use clause, no prerequisites (e.g. cart must exist / session must be bootstrapped), and no mention of alternatives despite a closely related sibling (begin_checkout) and adjacent tools (view_cart, render_cart). The agent must infer the routing decision entirely.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
complete_look_product_detailsDInspect
| Name | Required | Description | Default |
|---|---|---|---|
| product_id | Yes | ||
| track_action | No | ||
| source_surface | No | complete_look |
Output Schema
| Name | Required | Description |
|---|---|---|
| type | No | |
| store | Yes | |
| message | Yes | |
| product | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Tool has no description.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Tool has no description.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Tool has no description.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Tool has no description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Tool has no description.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Tool has no description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
product_detailsProduct detailsCInspect
App-only normalized data lookup for one Lorenzo product.
| Name | Required | Description | Default |
|---|---|---|---|
| query | No | ||
| selected | No | ||
| product_id | No | ||
| track_action | No | ||
| buyer_context | No | ||
| source_surface | No | product_detail |
Output Schema
| Name | Required | Description |
|---|---|---|
| type | No | |
| store | Yes | |
| message | Yes | |
| product | Yes | |
| selected | No | |
| sizeGuide | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are supplied, so the description carries the full behavioral burden and largely abdicates it. It never mentions the side effect implied by track_action defaulting to true (an action is recorded), nor whether the lookup is read-only, cached, or scoped to a buyer_context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no bloat, so it is structurally clean. It is under-specified rather than verbose, which is a lesser but real defect for a six-parameter tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With six optional parameters, no annotations, and nested array/object inputs, the description is far too thin to guide correct invocation. The presence of an output schema relieves it of explaining return values, but the input-side gaps remain severe.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across six parameters, and the description compensates for none of them. 'For one Lorenzo product' faintly implies product_id, but query, selected, track_action, buyer_context, and source_surface are entirely undescribed anywhere.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a read-style verb ('lookup') and a resource ('normalized data ... for one Lorenzo product'), so the general intent is inferable. However, 'Lorenzo' and 'app-only normalized data' are unexplained jargon, and it gives no signal distinguishing it from siblings like render_product_detail or complete_look_product_details.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no statement of when to call this versus render_product_detail (rendering) or complete_look_product_details. 'App-only' hints at a caller restriction but is ambiguous about whether that means a UI app context versus an API client.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
remove_from_cartCInspect
Remove one cart item by line_id or variant_id from the current store cart.
| Name | Required | Description | Default |
|---|---|---|---|
| cart_id | No | current | |
| line_id | No | ||
| variant_id | No | ||
| buyer_context | No | ||
| cart_scope_id | No | ||
| source_surface | No | cart | |
| cart_session_id | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| type | No | |
| empty | No | |
| items | No | |
| cartId | No | |
| totals | No | |
| message | Yes | |
| storeId | Yes | |
| snapshotAt | No | |
| cartScopeId | No | |
| cartVersion | No | |
| continueUrl | No | |
| emptyReason | No | |
| snapshotMode | No | |
| cartSessionId | No | |
| lineItemCount | No | |
| cartSessionState | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It implies a mutation and a default "current" cart, but says nothing about behavior when the item is absent (error vs. no-op), whether it requires an existing cart session or auth, whether price/totals are recalculated, or whether removal is reversible — all material for a destructive cart mutation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no filler, which is well structured. It is arguably over-terse for a seven-parameter mutation, but it wastes no words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Output schema exists, so return values need not be described, and the enum values are visible in the schema. Still, for a 7-parameter, zero-coverage, unannotated mutation, one sentence leaves identifier selection rules and the meaning of four contextual parameters undocumented.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across 7 parameters, and the description only gestures at line_id, variant_id and an implicit default cart. It never explains precedence between line_id and variant_id, that all parameters are optional so a call with neither identifier is possible, or what buyer_context, cart_scope_id, cart_session_id and the source_surface enum actually control.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ("Remove one cart item") plus the two identifying keys (line_id or variant_id) and the scope ("current store cart"). That is enough to separate it from add_to_cart and replace_cart_item_variant, though it never names those siblings explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use or when-not-to-use guidance is given. There is no mention of how this differs from update_cart_item_quantity with a zero quantity, no note about requiring a prior bootstrap_cart_session or view_cart, and no exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
render_action_confirmationRender action confirmationCInspect
Return a compact action confirmation contract for interactive rendering.
| Name | Required | Description | Default |
|---|---|---|---|
| title | Yes | ||
| action | Yes | ||
| cart_id | No | ||
| message | Yes | ||
| quantity | No | ||
| continue_url | No | ||
| product_title | No | ||
| variant_title | No | ||
| line_item_count | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| type | No | |
| title | Yes | |
| action | Yes | |
| cartId | No | |
| status | No | |
| message | Yes | |
| subject | No | |
| continueUrl | No | |
| lineItemCount | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are supplied, so the description carries the full burden. It never says whether this is a pure read/render operation or whether confirming an 'action' triggers a side effect (e.g. adding to cart), nor does it explain that cart_id/quantity are optional context fields.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is a single front-loaded sentence with no wasted words, but that brevity comes at the cost of substance rather than being genuinely efficient1 it is under-specified rather than tight.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists so return values need not be described, but a 9-parameter tool with no annotations and zero parameter coverage needs the description to explain parameter roles and side effects, and it does neither.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are 9 parameters at 0% schema description coverage, and the description adds no meaning for any of them. Optional fields such as cart_id, quantity, continue_url, variant_title, and line_item_count are completely undocumented in both places.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The verb 'Return' and the resource 'action confirmation contract' are present, but 'contract for interactive rendering' is internal jargon that does not tell an agent concretely what is produced or how it differs from siblings like render_cart or render_product_detail, all of which also 'render' something.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no statement of when to use this tool versus additions like render_cart, update_cart, or begin_checkout, and no prerequisites or exclusions. The agent must infer usage entirely from the name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
render_cartShow or view cartARead-onlyIdempotentInspect
Always call this tool when the shopper asks to show, open, view, review, or check their cart. It renders the interactive cart UI; do not replace it with a text-only cart summary.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| type | No | |
| empty | No | |
| items | No | |
| cartId | No | |
| totals | No | |
| message | Yes | |
| storeId | Yes | |
| snapshotAt | No | |
| cartScopeId | No | |
| cartVersion | No | |
| continueUrl | No | |
| emptyReason | No | |
| snapshotMode | No | |
| cartSessionId | No | |
| lineItemCount | No | |
| cartSessionState | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, and openWorldHint=false, so the safety profile is covered. The description adds real context beyond those annotations: it produces an interactive UI surface, not a text summary, which materially changes what the agent emits to the shopper. It omits what happens with an empty or uninitialized cart, which the bootstrap_cart_session sibling hints could matter.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, both earning their place: the first front-loads the trigger intents, and the second states the output form and the forbidden fallback. No repetition of the title or name.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no parameters, an output schema, and full annotation coverage, the description only needs to establish trigger conditions and output form, and it does both. The one missing piece is disambiguation from the sibling view_cart, which shares obvious semantic territory with this tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters and the schema is 100% covered, so there is no parameter meaning for the description to supply. The baseline for a no-parameter tool applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb and resource: it 'renders the interactive cart UI' rather than a text-only summary, which is a meaningful distinction. It does not, however, distinguish itself from the sibling view_cart, whose name suggests near-identical intent, so an agent must guess which one to pick.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It has strong when-to-use guidance, covering 'show, open, view, review, or check their cart' and instructing to always call this tool for those intents. It also gives an explicit prohibition against substituting a text-only summary. The notable gap is that it never says when to prefer this over view_cart, an overlapping sibling.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
render_complete_the_lookComplete the lookARead-onlyIdempotentInspect
Use this when a shopper wants Lorenzo products to pair, match, style or wear with a specific product. Render Complete the Look with store-configured complementary products and supplementary items. Examples: 'what can I pair with this?', 'what can I match?', 'suggest a suitable pair', 'suitable matching suggestions', 'recommend matching products', 'what goes well with it?', 'dress to pair with this product', or 'complete this outfit'. Follow-up pairing requests also need this tool when the subject is clear from current-store context; the shopper does not need to say 'Complete the Look' or 'call the tool'. Do not substitute a text-only styling answer for fetching store recommendations. For one subject product, call this tool exactly once. For multiple explicitly named subject products, call it at most once per subject. Do not call it automatically after an ordinary discovery search, and do not additionally open product search or product detail merely to prepare, validate, rank, compare, or explain these recommendations. Pass a known current-store product ID, otherwise the subject's exact title in query; this tool resolves it internally. Do not call product search first merely to resolve the subject. If 'this/it' is ambiguous or no subject is identified, ask which product rather than guessing. General shopping suggestions without a subject belong to render_product_search. If no matching products are configured, explain the returned limitation without inventing pairs or opening another UI.
| Name | Required | Description | Default |
|---|---|---|---|
| query | No | Subject product's exact current-store title, extracted from user wording or prior store context, when product_id is unknown. Example: 'Painter Tee - Black'. Do not pass the whole pairing question, 'this product', or the desired matching category. | |
| product_id | No | Exact Shopify product GID of the subject to match, from a previous current-store result. Prefer this over query; never invent an ID or use a different store's ID. | |
| buyer_context | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| type | No | |
| pairs | No | |
| store | Yes | |
| message | Yes | |
| notices | No | |
| subject | Yes | |
| accessories | No | |
| initialProductId | No | |
| pairsEmptyMessage | No | |
| supplementaryTitle | No | |
| accessoriesEmptyMessage | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly/idempotent/closed-world, and the description goes further: it says the tool resolves the subject internally, that results come from store configuration, that a limitation may be returned when nothing is configured, and that pairs must not be invented. It also bounds call cardinality (once per subject product).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with the use case and examples, then procedural constraints, which is the right order. The eight example phrasings are somewhat redundant and could be trimmed, but each remaining sentence carries a rule or exclusion.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given an output schema, annotations, and a nontrivial resolution/ambiguity flow, the description supplies everything needed to select and invoke correctly: trigger conditions, subject format, cardinality, failure handling, and the boundary with search and detail tools.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 67% schema coverage the schema already explains query and product_id well; the description adds the precedence rule (known current-store ID, otherwise exact title), the fact that resolution happens internally, and the warning not to call search first to resolve. It says nothing about buyer_context, leaving one parameter covered only by the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource: render Complete the Look with store-configured complementary and supplementary products for a given subject product. It clearly separates itself from render_product_search (general suggestions without a subject) and product_details (which it says not to open to validate recommendations).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives explicit triggers with several shopper phrasings, covers follow-up pairing requests where the subject comes from store context, and states exclusions: no automatic call after discovery search, no text-only styling substitute, ask which product when 'this/it' is ambiguous. It also names the sibling that owns the out-of-scope case (render_product_search).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
render_product_detailRender product detailAInspect
Render the interactive detail UI for one exact Lorenzo product. Pass a product_id when known; otherwise pass the exact product-name query directly because this tool resolves it internally. Use this only when the shopper explicitly asks to view, inspect, review, or get specifications for one exact product, or selects a product from search results. Do not call it automatically to rank, compare, validate, or explain discovery results. Do not call product search first to resolve the product. For matching items, recommended pairs or what to wear with this product, use render_complete_the_look instead.
| Name | Required | Description | Default |
|---|---|---|---|
| query | No | ||
| selected | No | ||
| product_id | No | ||
| buyer_context | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| type | No | |
| store | Yes | |
| message | Yes | |
| product | Yes | |
| selected | No | |
| sizeGuide | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the behavioral disclosure burden. It explains that product-name queries are resolved internally, that it should not be preceded by product search, and that it is not for ranking/comparison/validation; however, it does not state read-only/no-side-effect behavior, permissions, or no-match handling.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded with purpose and parameter routing, then adds precise exclusions and the alternative tool. Each sentence supports correct invocation, with no filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The output schema covers return values and the usage guidance is very strong. Given no annotations and 0% schema descriptions, the unexplained selected and buyer_context parameters and absent side-effect/permission details are notable gaps, though the core invocation path remains clear.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It explains product_id versus query and notes internal resolution, but selected and buyer_context are not mentioned at all, leaving two of four parameters without semantic guidance.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The first sentence states a specific verb ('Render'), resource ('interactive detail UI'), and scope ('one exact Lorenzo product'). It also distinguishes the tool from discovery/search uses and from matching-pair recommendations handled by render_complete_the_look.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives explicit trigger conditions: the shopper explicitly asks to view, inspect, review, or get specifications for one exact product, or selects a product from search results. It also states clear exclusions and names render_complete_the_look for matching items or recommended pairs.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
render_product_searchRender product searchAInspect
Search Lorenzo and render the interactive product carousel. Pass the shopper's product wording through in query without rewriting it. When the shopper states a budget, provide min_price and/or max_price in major currency units; use both with the same value only for an exact price. For one requested category or concept, call this tool exactly once and do not repeat or rephrase the search. If no products are returned, show the empty result and ask before trying a different query or relaxing constraints. For multiple explicitly requested categories, use one faithful combined search when possible; otherwise call this tool once per distinct category. Do not create separate searches for synonyms, colours, styles, audiences, or alternative wording. Use this for browsing or discovery, not as a preliminary lookup for an exact product-detail request. Do not automatically open product-detail tools for returned products to rank, compare, validate, or explain the results. For products to pair or match with a referenced item, use render_complete_the_look instead.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum products to return. | |
| query | Yes | The shopper's product wording, passed to Shopify unchanged. | |
| currency | No | ISO 4217 currency code. | |
| max_price | No | Optional maximum price in major currency units. | |
| min_price | No | Optional minimum price in major currency units. | |
| buyer_context | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| type | No | |
| query | Yes | |
| store | Yes | |
| message | Yes | |
| products | No | |
| matchType | Yes | |
| explanation | No | |
| resultCount | No | |
| suggestions | No | |
| rawResultCount | No | |
| recommendedView | No | |
| searchCandidates | No | |
| resolvedProductId | No | |
| totalCandidateResults | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are supplied, so the description carries the full load, and it does well: it discloses call-count discipline (exactly once per category), synonym/colour/style exclusion, no auto-opening of detail tools, and empty-result handling. It does not mention permissions, rate limits, or result ordering/relevance behavior, which keeps it short of a 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Purpose and core constraint are front-loaded, and most sentences encode a distinct rule. It is long and slightly repetitive ('do not repeat or rephrase' followed by 'do not create separate searches for synonyms, colours, styles'), so it loses a point for density rather than clarity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return values need no explanation, and the description covers everything else an agent needs: query fidelity, price unit semantics, call-count rules, empty-result behavior, and handoff to sibling tools. Nothing material to correct invocation is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 83%, so a 3 is the baseline, but the description adds real meaning: query must be passed verbatim without rewriting, prices are in major currency units, and both min_price and max_price should share a value only for an exact price. buyer_context is left unexplained in both places.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Search Lorenzo and render the interactive product carousel') and distinguishes itself from siblings by naming render_complete_the_look for pairing/matching use. An agent can identify the tool's job without inspecting the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives explicit when-to-use (browsing/discovery), when-not-to-use (not a preliminary lookup for exact product-detail requests), alternatives (render_complete_the_look for pair/match; product-detail tools for exact items), and a rule for multi-category requests. It even covers the empty-result path: show it and ask before relaxing constraints.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
render_size_guideSize guideAInspect
Render this connected store's size guide or size chart. Use for requests about sizing, measurements, clothing sizes, children's sizes, or footwear sizing. The result explains when the connected store does not provide the requested guide.
| Name | Required | Description | Default |
|---|---|---|---|
| query | No | size guide |
Output Schema
| Name | Required | Description |
|---|---|---|
| type | No | |
| query | Yes | |
| store | Yes | |
| catalog | No | |
| message | Yes | |
| available | Yes | |
| selectedGuideId | No | |
| visibleGuideIds | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden. It usefully discloses fallback behavior when the store does not provide the requested guide, but it does not state that the operation is read-only, whether it has side effects, or any permission requirements.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences, front-loaded with the core action and followed by usage triggers and fallback behavior. Every sentence adds useful information without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple render tool with an output schema, the description covers purpose, usage triggers, and the no-guide fallback. The main gap is the undocumented query parameter, but otherwise it is complete enough for an agent to select and invoke the tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There is one optional query parameter with 0% schema description coverage, so the description should compensate. It never explains what the query should contain, its format, or how the default "size guide" is used, leaving parameter meaning largely undocumented.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb, "Render," and a specific resource, "size guide or size chart," making the tool's purpose immediately clear. It distinguishes the tool from cart and product siblings through the sizing domain, though it does not explicitly name an alternative sibling.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It explicitly lists when to use the tool: requests about sizing, measurements, clothing sizes, children's sizes, or footwear sizing. It does not provide when-not-to-use guidance or name alternative tools, but the usage context is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
replace_cart_item_variantCInspect
Replace one cart item with another variant, such as switching size or color.
| Name | Required | Description | Default |
|---|---|---|---|
| cart_id | No | current | |
| line_id | No | ||
| quantity | No | ||
| buyer_context | No | ||
| cart_scope_id | No | ||
| new_variant_id | Yes | ||
| old_variant_id | No | ||
| source_surface | No | cart | |
| cart_session_id | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| type | No | |
| empty | No | |
| items | No | |
| cartId | No | |
| totals | No | |
| message | Yes | |
| storeId | Yes | |
| snapshotAt | No | |
| cartScopeId | No | |
| cartVersion | No | |
| continueUrl | No | |
| emptyReason | No | |
| snapshotMode | No | |
| cartSessionId | No | |
| lineItemCount | No | |
| cartSessionState | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and delivers almost nothing: no mention of whether the replacement is atomic, whether quantity is preserved or reset, what happens if old_variant_id or line_id is omitted, or whether the operation requires an active cart session. For a 9-parameter mutation tool this is a serious gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no wasted words and the key example placed immediately after the purpose. Brevity is appropriate, though it comes partly at the cost of completeness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists so return values needn't be explained, but the description still leaves a mutation tool with nine parameters and zero annotation coverage badly under-described. An agent cannot safely determine how to target the line being replaced.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description should compensate for nine undocumented parameters, yet it explains none of them. The ambiguity between line_id and old_variant_id, the cart_id default of "current", and the role of cart_scope_id, cart_session_id, buyer_context, and source_surface are all left unaddressed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ("Replace one cart item with another variant") with a concrete example ("switching size or color"). That distinguishes it from add_to_cart and remove_from_cart, but it never names a sibling or explains why it beats update_cart.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The size/color example implies when to use it, but there is no explicit guidance on when not to use it versus add_to_cart, update_cart, or update_cart_item_quantity, nor any stated prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
track_product_linkAInspect
App-only analytics acknowledgement after requesting a product link to open. Never a product lookup or navigation tool.
| Name | Required | Description | Default |
|---|---|---|---|
| product_id | Yes | ||
| variant_id | No | ||
| source_surface | No | unknown | |
| destination_domain | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=false, destructiveHint=false, openWorldHint=false, and the description correctly reinforces that this is a non-destructive telemetry write with no lookup or navigation side effect. Beyond that it says nothing about what the write records, whether it is idempotent, or whether calling it affects subsequent navigation, so added behavior context is modest.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences, zero padding, and the exclusion is front-loaded enough to prevent misuse. The terseness borders on under-specification rather than waste, so the structure earns high marks.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return values need not be described, and the annotation set covers the safety profile. The remaining gap is parameter meaning and the exact call ordering relative to requesting and opening a link, which an agent would still have to guess.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 0% description coverage across four parameters (product_id, variant_id, source_surface enum, destination_domain), so the description carries the full burden and mentions none of them. Only the phrase 'product link' indirectly hints at product_id and destination_domain; the meaning of source_surface's enum values and when to supply variant_id are left entirely unexplained.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action (analytics acknowledgement after requesting a product link to open) and explicitly fences off the most likely misreading ('Never a product lookup or navigation tool'). 'Acknowledgement' is somewhat vague about what is actually recorded, but the verb+resource is concrete enough to distinguish it from lookup siblings like product_details.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives a triggering context ('after requesting a product link to open'), a platform restriction ('App-only'), and an explicit exclusion ('never a product lookup or navigation tool'), which routes agents away from wrongly using it for retrieval. It does not name the preferred alternative tool for lookups or state whether the call is mandatory versus optional telemetry.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
update_cartBInspect
Replace the current store cart contents with the supplied full line item list.
| Name | Required | Description | Default |
|---|---|---|---|
| cart_id | No | current | |
| line_items | Yes | ||
| buyer_context | No | ||
| cart_scope_id | No | ||
| source_surface | No | cart | |
| cart_session_id | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| type | No | |
| empty | No | |
| items | No | |
| cartId | No | |
| totals | No | |
| message | Yes | |
| storeId | Yes | |
| snapshotAt | No | |
| cartScopeId | No | |
| cartVersion | No | |
| continueUrl | No | |
| emptyReason | No | |
| snapshotMode | No | |
| cartSessionId | No | |
| lineItemCount | No | |
| cartSessionState | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden, and it usefully discloses that existing cart contents are replaced. It does not state permission requirements, whether an empty list clears the cart, whether other cart state is reset, or how cart scoping interacts with replacement.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single front-loaded sentence with no wasted wording. Every phrase contributes to the core replacement semantics.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a six-parameter destructive mutation with no annotations and no schema descriptions, but the definition is only one sentence. The output schema reduces the need to document return values, yet the missing parameter guidance and limited behavioral detail leave the definition incomplete for the tool's complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate, but it only clarifies that line_items is the full list rather than a delta. The other five parameters, including cart_id, buyer_context, cart_scope_id, source_surface, and cart_session_id, receive no explanation beyond their names.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: replacing the current store cart contents with a full line item list. It implicitly distinguishes itself from incremental siblings like add_to_cart and update_cart_item_quantity by specifying full replacement, but it does not name any sibling explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'full line item list' implies this tool should be used for wholesale cart replacement rather than incremental edits. However, it gives no explicit when-to-use or when-not-to-use guidance and does not direct the agent to alternatives such as update_cart_item_quantity or add_to_cart.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
update_cart_item_quantityCInspect
Set the quantity of one cart item by line_id or variant_id in the current store cart.
| Name | Required | Description | Default |
|---|---|---|---|
| cart_id | No | current | |
| line_id | No | ||
| quantity | Yes | ||
| variant_id | No | ||
| buyer_context | No | ||
| cart_scope_id | No | ||
| source_surface | No | cart | |
| cart_session_id | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| type | No | |
| empty | No | |
| items | No | |
| cartId | No | |
| totals | No | |
| message | Yes | |
| storeId | Yes | |
| snapshotAt | No | |
| cartScopeId | No | |
| cartVersion | No | |
| continueUrl | No | |
| emptyReason | No | |
| snapshotMode | No | |
| cartSessionId | No | |
| lineItemCount | No | |
| cartSessionState | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden. 'Set the quantity' usefully implies an absolute replacement rather than an increment, but it says nothing about whether quantity=0 removes the line, what happens when the referenced line or variant is absent, permission/auth requirements, or whether the mutation is reversible. For an unannotated write tool this is a significant gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no filler that puts the verb, the target, and the alternative identifiers up front. It is slightly under-specified for a tool with this parameter surface, but the sentence itself wastes nothing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return values need not be described, and the core operation is conveyed. However, with 8 parameters at 0% schema coverage and no annotations, an agent still lacks the meaning of four session/context parameters and the removal semantics at quantity=0, which is more than a minor omission for a mutation tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across 8 parameters, and the description only covers quantity, line_id, variant_id, and loosely the cart. cart_scope_id, cart_session_id, buyer_context, and source_surface are entirely unexplained, and the interaction between the two targeting identifiers is left unstated, so the description compensates poorly for the coverage gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb and resource ('Set the quantity of one cart item') and identifies the two addressing modes (line_id or variant_id), which separates it from add_to_cart and remove_from_cart. It does not explicitly distinguish itself from the sibling update_cart, leaving some ambiguity about which tool to pick for cart-level edits.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this versus update_cart, replace_cart_item_variant, or remove_from_cart, and no explanation of what quantity=0 does or which identifier takes precedence when both line_id and variant_id are supplied. The only implicit guidance is 'in the current store cart', which rests on a default rather than stated policy.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
view_cartView cartCInspect
Return the current Lorenzo cart contents to an already-rendered app.
| Name | Required | Description | Default |
|---|---|---|---|
| cart_id | No | current | |
| track_action | No | ||
| cart_scope_id | No | ||
| source_surface | No | cart | |
| cart_session_id | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| type | No | |
| empty | No | |
| items | No | |
| cartId | No | |
| totals | No | |
| message | Yes | |
| storeId | Yes | |
| snapshotAt | No | |
| cartScopeId | No | |
| cartVersion | No | |
| continueUrl | No | |
| emptyReason | No | |
| snapshotMode | No | |
| cartSessionId | No | |
| lineItemCount | No | |
| cartSessionState | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden. It implies a read operation by saying "Return," but it does not disclose side effects, permissions, whether track_action records analytics, or how the cart is resolved when cart_id is omitted.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single front-loaded sentence with no wasted wording. It states the action and the target context immediately.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return values need not be explained. However, for a five-parameter tool with no annotations and no schema descriptions, the definition is too thin on parameter meaning and behavioral context to be complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across five parameters, and the description adds no meaning for cart_id, track_action, cart_scope_id, source_surface, or cart_session_id. It does not compensate for the undocumented schema at all.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb and resource: "Return the current Lorenzo cart contents." The phrase "to an already-rendered app" adds useful scope and helps distinguish it from render_cart, though it does not explicitly name that sibling.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase "to an already-rendered app" implies when this tool is appropriate, but there is no explicit when-to-use or when-not-to-use guidance. It also does not name alternatives such as render_cart or update_cart.
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.
19 tool updates
- First observed
add_to_cart - First observed
begin_checkout - First observed
bootstrap_cart_session - First observed
cancel_cart - First observed
checkout_link - First observed
complete_look_product_details - First observed
product_details - First observed
remove_from_cart - First observed
render_action_confirmation - First observed
render_cart - First observed
render_complete_the_look - First observed
render_product_detail - First observed
render_product_search - First observed
render_size_guide - First observed
replace_cart_item_variant - First observed
track_product_link - First observed
update_cart - First observed
update_cart_item_quantity - First observed
view_cart
Related MCP Connectors
Human culture news, trends and search across sports, music, fashion and streetwear.
Search and explore taste-led finds in clothing, audio, designed objects and music.
AI fashion design — product photos, videos, tech packs, colorways & fabric sims.
Agent-native fashion marketplace. Browse, design, purchase NFTs, launch brands on Base.
Related MCP Servers
- AlicenseAqualityAmaintenanceThe premier fashion & apparel Model Context Protocol server. AI bounding box outfit deconstruction, 100% in-stock occasion looks, live size stock, and 1-click checkout.10166 npmMIT
- AlicenseAqualityDmaintenanceLive access to 2,766+ women's fashion products from Livostyle.com via 6 tools — search products, get product details, list 158 collections, generate outfit recommendations by occasion/budget/season, and view catalog stats. Weekly-synced from Shopify; MIT-licensed open dataset.66 npmMIT
- AlicenseNot gradedqualityBmaintenanceOfficial MCP Server for TheFashionDeals.com. Search real-time verified Amazon US fashion deals, discounts, and trending outfits for AI agents.1MIT
- AlicenseAqualityBmaintenanceEnables AI assistants to search and recommend Christian streetwear, faith apparel, trucker hats, and clogs, while providing theological insights, sizing guides, gift suggestions, and direct 1-click Shopify checkout links.9330 npmMIT
Glama MCP Gateway
Add one secure layer between your agents and this server.