Trailberg Ireland — Activewear, Tracksuits & Footwear
Server Details
Shop Trailberg Ireland activewear, tracksuits, jackets and footwear for men, women and boys.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- ChatGPT
- –
- Claude
- –
TDQS
Scored across 19 tools
The cart cluster is largely distinguishable (add/remove/update/quantity/replace-variant/cancel), but several pairs blend together: begin_checkout vs checkout_link (both return a checkout URL), and view_cart vs render_cart (text contents vs interactive UI) require careful reading. The product trio — product_details, render_product_detail, and complete_look_product_details (which has an empty description) — is genuinely confusing. The extraordinarily defensive descriptions ('do not call X', 'do not substitute a text-only answer') signal that misselection between discovery, detail, and styling tools has been a recurring problem.
Casing is consistently snake_case, but the verb conventions are mixed: render_* UI tools, cart-mutation verbs (add/remove/update/replace/cancel), lifecycle verbs (bootstrap/begin), and bare noun tools (product_details, checkout_link). The worst offender is the near-identical naming of product_details vs render_product_detail vs complete_look_product_details, where only a prefix distinguishes functionally different tools.
19 tools is heavy for a single-brand storefront, and nine of them are cart operations (bootstrap, add, remove, update, update_quantity, replace_variant, cancel, view, render) — a lot of surface for one resource. A few could plausibly be consolidated, such as begin_checkout/checkout_link and view_cart/render_cart. The product, search, sizing, and checkout tools otherwise each earn their place.
The cart lifecycle is covered end-to-end (create session, add, modify quantity, swap variant, remove, clear, view, and check out), and discovery, detail, complete-the-look, and size-guide rendering are all present. Gaps are minor — no order history/order status, no wishlist or saved items, and complete_look_product_details ships with an empty description that undermines an otherwise solid surface.
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 Trailberg Ireland 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 exist, so the description carries the full behavioral burden, yet it discloses nothing about the default track_action=true telemetry side effect, what 'normalized' data means, whether lookups are cached or rate-limited, or what buyer_context and source_surface affect. Calling it with defaults silently emits a tracked action, which is exactly the kind of behavior the description should surface.
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 single sentence has no filler, but at this length the brevity reflects under-specification rather than efficiency. There is no routing sentence or side-effect warning to front-load.
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, but a six-parameter tool with no annotations and a default write-like behavior (track_action) needs far more than one sentence. The description leaves the agent unable to distinguish surfaces, understand parameters, or anticipate tracking effects.
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 (query, selected, product_id, track_action, buyer_context, source_surface), and the description explains none of them. Notably the absence of a required product_id despite 'for one product' is unexplained, and the enum on source_surface is never referenced.
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 concrete resource (one Trailberg Ireland product) and an implied action (data lookup) plus a delivery channel (app-only). However, it never uses a clear verb like 'fetch' or 'retrieve', and nothing distinguishes it from the sibling tools complete_look_product_details or render_product_detail, so the agent cannot tell which to pick from purpose alone.
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?
'App-only' hints that the tool belongs to a specific surface, but there is no statement of when to call this versus complete_look_product_details, render_product_detail, or render_product_search, and no prerequisites or exclusions. The agent is left to infer usage from the name.
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 Trailberg Ireland 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 cover the safety profile (readOnly, idempotent, non-open-world), yet the description still adds real behavior: subject resolution happens internally, repeated calls per subject are unnecessary, and an unconfigured store yields a returned limitation rather than invented pairs. It stops short of describing the response shape, but an output schema exists so that gap is minor.
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 opening sentence is well front-loaded with the trigger condition, but the block is long and the prohibition on calling product search appears three separate times in different phrasings. Much of the length is justified by multi-sibling routing, yet the redundancy costs readability for an agent parsing it at call time.
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?
Covers the full decision surface an agent needs for a read-only retrieval tool: trigger conditions, subject resolution, call cardinality, ambiguity fallback, sibling fallbacks, and the no-results case. With an output schema present, no return-value explanation is required.
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?
Adds meaning beyond the 67%-covered schema by stating the precedence rule (known current-store product ID, otherwise exact title in query) and that resolution is internal, so no prior search call is needed. The schema's own warnings about not passing the whole question or the desired matching category are reinforced, though buyer_context remains 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 outcome ('Render Complete the Look with store-configured complementary products and supplementary items') and explicitly bounds it to a single subject product from Trailberg Ireland. Sibling differentiation is explicit — general suggestions are routed to render_product_search, and product search/detail are excluded as substitutes.
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 concrete trigger phrasing, follow-up-request handling when the subject is implied by context, an explicit exclusion ('Do not call it automatically after an ordinary discovery search'), an alternative ('General shopping suggestions without a subject belong to render_product_search'), and a cardinality rule (once per subject). Even the ambiguity case is resolved: ask which product rather than guessing.
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 Trailberg Ireland 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?
With no annotations supplied, the description carries the full burden and does disclose meaningful behavior beyond the schema: the tool resolves a product-name query internally, so no pre-resolution is needed, and it must not be auto-invoked. It stops short of stating what happens on an ambiguous or zero-match query, or whether rendering has side effects such as session state, which matters for a UI-rendering tool with zero 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loads the core action, then parameter precedence, then usage triggers, then exclusions and the sibling alternative. Every sentence carries distinct routing or parameter information; there is no filler despite the length.
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, and the description fully covers routing and the two primary parameters. The gaps are the undocumented 'selected' and 'buyer_context' parameters and the absence of failure-mode behavior, both of which an agent would want for a match-dependent render 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%, so the description must compensate. It does add real meaning for two parameters, including precedence ('pass a product_id when known; otherwise pass the exact product-name query directly because this tool resolves it internally'), but 'selected' and 'buyer_context' are never mentioned, leaving half the parameters undocumented in both schema and 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?
States a specific verb and resource ('Render the interactive detail UI for one exact Trailberg Ireland product') and scopes it to a single exact product, which separates it cleanly from render_product_search and complete_look_product_details. An agent can distinguish it from every sibling without opening a 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 positive triggers ('shopper explicitly asks to view, inspect, review, or get specifications', 'or selects a product from search results') and explicit exclusions ('do not call it automatically to rank, compare, validate, or explain discovery results'). It also names the alternative tool for the adjacent intent and rules out a wasteful prerequisite step ('do not call product search first').
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 Trailberg Ireland 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?
With no annotations provided, the description carries the full behavioral burden and discloses important traits: the tool renders an interactive carousel, empty results should be shown before retrying, and returned products should not automatically trigger product-detail tools. It does not mention permissions or rate limits, but those are less central for this search-and-render operation.
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 dense but front-loads the primary action and then layers usage rules in a logical order. Some instructions about synonyms and alternative wording are repetitive, but they reinforce behavior the agent must avoid.
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 tool is complex, with six parameters and an output schema, and the description covers the key invocation behavior and result handling well. The main remaining gap is that buyer_context is neither described in the schema nor mentioned in the description, though it is optional.
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 high at 83%, so the schema already documents most parameters. The description adds meaningful semantics beyond the schema by specifying that query wording must pass through unchanged, that prices are in major currency units and should use both min_price and max_price only for an exact price.
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: search Trailberg Ireland and render an interactive product carousel. It clearly distinguishes this browsing/discovery tool from exact product-detail and complete-the-look siblings.
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 when-to-use guidance, including browsing versus exact product-detail lookup, one search per category, combined searches for multiple categories, and no synonym/colour/style repetition. It also names the alternative render_complete_the_look for pairing or matching products.
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 Trailberg Ireland 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 supplied, so the description carries the full behavioral burden and does not meet it. It never states that the tool is read-only, what happens when no cart exists, or that passing track_action (default true) appears to emit an analytics event — a side effect the description completely omits.
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 redundant wording, which is structurally clean. The brevity works against it, though, since the space saved is not used for any of the missing usage or parameter context.
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 for a five-parameter cart tool with no annotations the description is far too thin. It leaves the choice between this and render_cart unresolved and gives no information about the many cart-identity parameters.
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?
Five parameters have 0% schema description coverage, and the description explains none of them. cart_id, cart_scope_id, cart_session_id, track_action, and the source_surface enum are entirely undocumented, with only a faint hint that "current" cart is the default target.
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 verb ("Return") and a resource ("the current Trailberg Ireland cart contents"), so the basic operation is identifiable. However, it does not distinguish itself from the sibling render_cart, and the phrase "to an already-rendered app" is the only hint about how it differs, which is oblique.
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 and no mention of alternatives such as render_cart, update_cart, or bootstrap_cart_session. The phrase "already-rendered app" implies a precondition but never states it as a rule, leaving the agent to infer when this tool is appropriate.
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
Shop Trailberg activewear, tracksuits, jackets, footwear and accessories for men, women and boys.
191Shop Aari men's clothing, activewear and footwear: jackets, hoodies, polos, trousers and tracksuits.
191Search hunting, fishing, camping and outdoor gear from brands worldwide on Ridgerunner
Shop Lorenzo's premium streetwear, denim, hoodies, tees and tracksuits for men and women.
191
Related MCP Servers
- AlicenseNot gradedqualityBmaintenanceEnables AI assistants to search products, inspect ingredients and nutrition facts, manage the shopping cart, and review order history on Vilgain.cz.3 npm3MIT
- AlicenseAqualityCmaintenanceEnables searching and retrieving product information, reviews, and details from the Decathlon Netherlands website, including suggestions, pricing, stock, and customer ratings.4GPL 3.0
- FlicenseNot gradedqualityDmaintenanceProvides secure access to Tennis Warehouse product data via natural language queries, enabling product search, availability checks, and deal discovery.-
- AlicenseNot gradedqualityDmaintenanceRead-only access to TrailWeights' ultralight gear corpus — verified weights, creator video reviews, pack templates, and semantic gear search. Auth: none.MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.