Skip to main content
Glama

SnapEX Pay

List invoices

list_invoices
Read-onlyIdempotent

Invoices of the account, newest first, optionally filtered by status and environment. Paginated with cursor.

Input Schema

NameRequiredDescriptionDefault
limitNoItems per page (1–100).
cursorNoPass meta.next_cursor of the previous page to get the next one.
statusNoe.g. "paid", "awaiting", "expired".
environmentNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false, so the safety profile is covered. The description adds genuinely useful behavior beyond that: results are ordered newest first and results are cursor-paginated, which tells the agent how to page through.

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?

Two short sentences, no filler, with the resource and ordering front-loaded and pagination mentioned last where it belongs.

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?

For a read-only, annotated list tool with no output schema, the description covers scope, ordering, filtering, and pagination. Only the shape of returned invoice records is unaddressed, which is a minor gap given the absence of an output schema.

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?

Schema coverage is 75% and the limit/cursor parameters are well documented there, so the schema does the heavy lifting. The description confirms status and environment act as optional filters but adds no syntax or format detail beyond the schema's enum and examples.

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?

States a specific resource (invoices of the account), plus sort order and available filters – enough to distinguish it from the get_invoice single-resource sibling. It does not explicitly contrast with list_payments/list_conversions, so differentiation is implied rather than stated.

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

Usage Guidelines3/5

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

Usage is implied: this is the listing tool for invoices, versus get_invoice which fetches one. No explicit when-to-use, exclusions, or named alternatives are given, leaving the agent to infer the choice.

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.

Resources