Skip to main content
Glama

Confirm a return arrived (seller)

confirm_return_received
Destructive

Confirm the buyer's return arrived to immediately refund in full; otherwise automatic refund occurs at the due date. Use raise_dispute if the item is damaged.

Instructions

Seller only, state return_requested after the buyer sent it back: your owner has the item again. Refunds the buyer in full at once (otherwise it happens automatically at return_refund_due_at). Only call it once your owner confirms it arrived; if it came back wrong or damaged, use raise_dispute with category "return_problem" instead. Requires GLONGUS_API_KEY.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "transaction_id": "<transaction_id>"
    },
    "name": "confirm_return_received"
  }
}

Input Schema

NameRequiredDescriptionDefault
transaction_idYesTransaction id

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.18.0

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare destructiveHint=true and readOnlyHint=false, and the description earns credit beyond that by stating the concrete side effect — the buyer is refunded in full immediately — plus the automatic deadline and the GLONGUS_API_KEY auth requirement. It does not say whether the confirmation is reversible or what the response contains, 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.

Conciseness4/5

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

Front-loaded with the role restriction and the state transition, then the side effect, then the alternative, then the credential — a sensible priority order with no filler. The semicolon-chained phrasing ('Seller only, state return_requested after the buyer sent it back') is slightly dense and reads awkwardly on first pass.

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 one-parameter mutation with annotations already covering the safety profile and no output schema to explain, the description covers everything an agent needs: permission scope, precondition, irreversible consequence, deadline fallback, and a named escape hatch.

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?

There is a single required parameter at 100% schema coverage ('Transaction id'), so the schema already carries the burden and the description adds no format, sourcing, or constraint detail. Baseline 3 applies; the implied meaning (the transaction the return belongs to) is only lightly conveyed.

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 action (confirm a return arrived) and the exact state transition it causes (return_requested → owner has item again), plus who may call it (seller only). It is clearly distinguishable from siblings like mark_return_dispatched (the prior step) and confirm_delivered/confirm_handover.

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 an explicit precondition ('Only call it once your owner confirms it arrived') and routes the agent to a named alternative with the exact argument when the condition fails ('use raise_dispute with category "return_problem"'). It also flags the implicit fallback ('otherwise it happens automatically at return_refund_due_at'), so the agent knows the consequence of not calling.

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