Skip to main content
Glama
cotletdev

Pirate Ship MCP Server

List refunds

list_refunds
Read-onlyIdempotent

Retrieve label refunds with status, amount, tracking number, and recipient, sorted newest first. Filter by request date, status, or search text to audit refund activity.

Instructions

Label refunds with their status and amount, newest request first.

The Reports, Refunds table: every label refund the account asked for (or Pirate Ship made automatically for an unused label), when it was requested, approved, declined or reversed, the tracking number, recipient and amount in US dollars. from_date and to_date narrow by the request day.

Input Schema

NameRequiredDescriptionDefault
sortNonewest
limitNo
offsetNo
searchNoFree text, as in the report's search box.
statusNoRefund status as the table shows it, e.g. Pending, Approved, Declined.
to_dateNoLast day, YYYY-MM-DD, included.
from_dateNoFirst day, YYYY-MM-DD, in your timezone.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

B3.2/5.0
Behavior4/5

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

Annotations already establish read-only, idempotent, non-destructive behavior, and the description adds useful context about what the table contains, including automatic refunds and the fields returned. It does not discuss pagination behavior or any rate-limit considerations, but the annotation coverage lowers that burden.

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?

The description is reasonably short and front-loads the resource and ordering behavior. The second sentence is dense but useful; there is minor redundancy between the first and second sentences.

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

Completeness3/5

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

There is no output schema, so the description does a fair job naming the returned refund fields and date-filtering behavior. However, for a 7-parameter list tool it leaves pagination, search, status filtering, and sort semantics under-explained.

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

Parameters2/5

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

Schema description coverage is 57%, so the description should compensate for undocumented parameters. It explains only that from_date and to_date narrow by request day and implies newest-first ordering, but does not add meaning for limit, offset, search, status, or the oldest sort option.

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

Purpose4/5

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

The title and description make clear this returns label refund data, including status, amount, timing, tracking number, and recipient. The resource is specific, but the description does not explicitly distinguish it from nearby list/export/report siblings such as list_transactions or export_report.

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

Usage Guidelines2/5

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

The description frames the tool as the Reports > Refunds table but gives no explicit when-to-use guidance, prerequisites, exclusions, or alternatives. An agent can infer it is for viewing refunds, but must guess when to choose it over export_report or other list tools.

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