Skip to main content
Glama

Stackin

reissue_invoice

Destructive

Retry a rejected invoice after the data that caused the rejection was fixed.

Takes the local invoice_id, not the access key: a rejected document never got one. Consumes a credit like a new issuance, so it takes an idempotency_key for the same reason issue_invoice does. An authorized invoice is corrected or cancelled, never reissued.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
invoice_idYes
idempotency_keyNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
idNoLocal id. Use it for reissue and for submissions, and when a document was rejected and has no key.
statusNoissued, rejected or cancelled.
protocolNoThe authorization protocol, when granted.
access_keyNoThe authorizer's key. Absent while the document is not authorized.

Schema Changelog

Changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. First observed

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already mark it destructive/non-read-only, and the description adds concrete side effects: reissue 'consumes a credit like a new issuance' and uses an idempotency_key for the same reason as issue_invoice. It also clarifies that a rejected document has no access key, which helps set expectations about the identifier. It does not spell out every destructive consequence, but the annotations cover the core flag.

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?

Three sentences, front-loaded with the core operation, then compact clarifications. The phrasing ('A rejected document never got one') is slightly indirect, but each sentence earns its place and there is no redundant schema repetition.

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?

Despite 11 siblings and fairly minimal schema descriptions, the description gives enough context to select this tool and invoke it correctly: it names the target state (rejected after fix), the identifier distinction, and the idempotency key rationale. With an output schema present, the lack of return-value prose is acceptable.

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?

With zero schema descriptions, the description compensates: invoice_id is explained as 'the local invoice_id, not the access key,' and idempotency_key is motivated by the credit consumption parallel to a new issuance. Both parameters receive meaningful semantic context beyond their TypeScript types.

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 a specific conditional action: 'Retry a rejected invoice after the data that caused the rejection was fixed.' It further distinguishes reissue from related operations by stating an authorized invoice is 'corrected or cancelled, never reissued,' making the tool's object and scope clear.

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?

It explicitly defines the trigger: only after a rejection fix, use reissue. It also provides boundary guidance: authorized invoices should be corrected/cancelled, not reissued, and explains that like a new issuance it consumes a credit, which signals when to reach for this tool rather than a correction or document retrieval sibling.

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.