Skip to main content
Glama

View cart

view_cart
Read-onlyIdempotent

Read the signed-in user's cart lines with quantity, size, fabric, and subtotal, and get zero-based indexes needed to update or remove items. Re-read after changes because indexes shift.

Instructions

Show the lines in the user's cart with qty, size, fabric and subtotal. It is the same server-side cart the human sees at allover.art/cart when signed in, so items they added in the browser appear here too. Use it to get the zero-based line index that update_cart_item takes — re-read after removing a line, since later indexes shift. Prices are as added; for the payable total with fresh prices, promo and shipping use get_order_preview. Read-only.

Input Schema

NameRequiredDescriptionDefault

No arguments

Output Schema

NameRequiredDescriptionDefault
errorNoPresent instead of a cart when the call failed (bad index, unavailable size, ...).
itemsNoCart lines in index order — this index is what update_cart_item takes.
currencyNo
subtotalNoSum of price x qty over all lines, USD.
checkout_urlNoCart page URL for the human.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv1.1.0
    • changedOutput schema / properties / items / description
      Previous value: -"Cart lines in index order — this index is what set_cart_quantity/cart_update/cart_remove take."New value: +"Cart lines in index order — this index is what update_cart_item takes."
  2. First observed

TDQS

A4.9/5.0
Behavior5/5

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

Well beyond the readOnlyHint annotation, it discloses that this is the same server-side cart the human sees in the browser (so browser-added items appear), that prices are as-added rather than fresh, and that line indexes shift after removal. These are exactly the behavioral traits that would cause a mis-call if omitted.

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

Conciseness5/5

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

Four short sentences, front-loaded with the return shape, then the shared-cart context, then the index guidance, then the pricing alternative. Every sentence carries distinct information with no restatement of the title.

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

Completeness5/5

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

For a no-param read with an output schema already documenting return values, the description covers everything an agent needs: what comes back, how it relates to browser state, staleness of prices, and the downstream index contract.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool takes zero parameters, so the baseline is 4 and there is nothing for the description to disambiguate. It correctly spends no words on a non-existent schema.

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

Purpose5/5

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

States a specific verb and resource ('Show the lines in the user's cart') and enumerates the returned fields (qty, size, fabric, subtotal), distinguishing it from get_order_preview which returns payable totals. An agent can tell exactly what this returns without opening the output schema.

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

Usage Guidelines5/5

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

Gives explicit when-to-use ('to get the zero-based line index that update_cart_item takes'), a stateful caveat (re-read after removing a line, since later indexes shift), and names the alternative for pricing (get_order_preview). Nothing about selection is left to inference.

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