Skip to main content
Glama

Refund a transaction

refund_transaction
Destructive

Issue a customer refund for a specific order. Requires explicit confirmation because it moves real funds and cannot be undone; verify the amount before calling.

Instructions

Refund a transaction, returning the money to the customer. This moves real funds and cannot be undone. Refuses to run without confirm: true. Check the amount with get_transactions or get_customer before calling, because the order id alone does not tell you how much is about to move.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
accountNoWhich configured ThriveCart account to use, by name (for example 'navid-media'). Defaults to the first configured account. Call list_accounts to see them. Figures from one cart never include another.
confirmNoMust be true for this to run. This moves money or ends a customer's access and cannot be undone, so it is refused without an explicit confirmation.
order_idYesThe order or subscription id, from get_customer or get_transactions.
Install Server

TDQS

A4.7/5.0
Behavior5/5

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

Annotations already mark destructiveHint=true, but the description adds concrete behavioral context: 'moves real funds', 'cannot be undone', and 'refuses to run without confirm: true'. This is valuable safety-critical disclosure beyond the structured hints.

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?

Three sentences with no filler: purpose, consequence, and prerequisites are each addressed in order. The most decision-critical information (irreversibility, confirm requirement) is front-loaded.

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 destructive, irreversible mutation with no output schema, the description covers purpose, effect, guardrails, prerequisites, and a pre-call verification step. An agent has everything needed to invoke this tool correctly and safely.

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?

Schema coverage is 100% with solid parameter descriptions. The description adds meaningful semantic guidance by warning that order_id alone does not convey the refund amount, reinforcing why pre-checking is necessary. This enriches the understanding of order_id beyond the 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: 'Refund a transaction, returning the money to the customer.' It is clearly differentiated from siblings like pause_subscription and cancel_subscription by naming the refund action and its financial effect.

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?

Provides clear context: the operation is irreversible, requires confirm: true, and the agent should check the amount via get_transactions or get_customer before calling. It does not explicitly name excluded alternatives, but this is a singular refund operation among the siblings, so the guidance is sufficient.

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

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/navidmoazzez/thrivecart-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server