Skip to main content
Glama

cart.addLine

Add a product variant (skuId) and quantity to an existing droplinked cart. Use this to build a multi-item cart incrementally before checking out. Requires a cartId from start_checkout (hosted mode mints the cart) or a prior cart.addLine call. Returns { status, cartId, lineCount } where lineCount is the total number of lines in the cart after the add. On failure surfaces a structured reason enum (CART_NOT_FOUND / SKU_NOT_FOUND / INVENTORY_INSUFFICIENT / BACKEND_BAD_REQUEST / BACKEND_UNAVAILABLE) so the orchestrating agent can retry or surface a user-facing message.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
skuIdYes
cartIdYes
quantityYes
referrerNo

TDQS

A4.2/5.0
Behavior4/5

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

The annotations already communicate that this is a mutating, non-idempotent operation, so the bar is lower. The description adds valuable behavioral details beyond the annotations: the exact return shape `{ status, cartId, lineCount }`, the meaning of lineCount, and the structured failure reason enum (CART_NOT_FOUND, SKU_NOT_FOUND, etc.). This helps the agent handle errors and retries appropriately.

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

Conciseness5/5

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

The description is tight and front-loaded: the first sentence gives the core purpose, the second gives usage context, and the third covers return value and error handling. Every sentence earns its place without redundant detail, making it both comprehensive and efficient.

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

Completeness4/5

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

Given the tool has 4 parameters, no output schema, and annotations that only cover basic mutability, the description covers the essential aspects: what it does, when to use it, prerequisites, return contract, and failure modes. The only minor gap is the missing meaning of the referrer parameter, but overall this is sufficiently complete for an agent to invoke the tool correctly.

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

Parameters3/5

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

With 0% schema description coverage, the description carries the burden of defining parameters. It explains skuId as a product variant, quantity as quantity, and cartId as coming from start_checkout or a prior call, but it does not explain the optional referrer parameter. This leaves a gap in understanding the full parameter set.

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

Purpose5/5

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

The description opens with 'Add a product variant (skuId) and quantity to an existing droplinked cart', which is a specific verb+resource statement that clearly distinguishes this from sibling tools like cart.removeLine and cart.updateLineQuantity. The additional context 'Use this to build a multi-item cart incrementally before checking out' reinforces the tool's specific role.

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

Usage Guidelines4/5

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

The description explicitly states when to use the tool ('build a multi-item cart incrementally before checking out') and provides a clear prerequisite ('Requires a cartId from start_checkout... or a prior cart.addLine call'). It does not explicitly contrast with alternatives like updateLineQuantity, but the context makes the usage scenario unambiguous.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

TDQS

B3.4/5.0
Disambiguation2/5

Many tools have overlapping purposes, such as find_inventory, search_products, list_shop_products, and get_product all dealing with product discovery/retrieval with subtle differences. Similarly, verify_brand_attestation and get_brand_attestation_status could be confused, as could get_trust_dossier and get_underwriting_signals. The sheer number of verification and lookup tools makes it difficult to pick the right one without careful reading.

Naming Consistency2/5

The cart tools use a dot-separated camelCase convention (cart.addLine, cart.updateLineQuantity), while the rest use snake_case with varied verbs (find_, get_, list_, search_, verify_, request_, quote_, etc.). This mixing of conventions and inconsistent verb choices (e.g., find_inventory vs search_products vs list_shop_products) makes the tool names unpredictable.

Tool Count2/5

With 38 tools, this server is heavily overloaded. The guidance suggests 25+ tools is too many, and this server exceeds that threshold. While the domain spans commerce, trust attestations, and lending, the count is excessive for a coherent single-server toolkit.

Completeness3/5

The tool surface is extremely broad, covering cart management, checkout, product discovery, trust verification, and lending workflows. However, there are notable gaps: no cart retrieval or order history, no revoke/update for attestations, and some key lending tools (quote_credit_terms, report_repayment) are scaffolded but not yet functional, creating dead ends.

Resources