Skip to main content
Glama
Pletopay MCP Server

Pletopay MCP Server

Official
by pletopay

Void an invoice

void_invoice
Destructive

Marks an open or uncollectible invoice as unpayable to prevent payment; invoices in other statuses return 409 invoice_not_open.

Instructions

Void an invoice.

Void an open or uncollectible invoice so it can no longer be paid. Invoices in any other status return 409 invoice_not_open.

Input Schema

NameRequiredDescriptionDefault
idYesThe invoice id (`inv_…`).

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.0

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare destructiveHint=true and idempotentHint=false, so the safety profile is known. The description adds real value on top: the state precondition and the exact error code returned on a rejected call. It does not state whether a void is reversible or what the response body contains, which is the remaining gap for a destructive mutation.

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 with no waste: the action first, then the precondition and error path. Every sentence carries information an agent needs.

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 one-parameter destructive mutation with no output schema, this covers action, eligibility, and failure mode, and the annotations supply the safety hints. It is only slightly incomplete in omitting confirmation of irreversibility and what a successful response looks like.

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?

With a single parameter at 100% schema description coverage the schema already documents the `inv_…` id format, so the description adds nothing parameter-specific. Baseline 3 applies.

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 verb and resource (void an invoice) and defines the effect: the invoice 'can no longer be paid'. It does not name or contrast with the closely related siblings mark_invoice_uncollectible or update_invoice, so an agent must infer the boundary itself.

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?

Gives an explicit eligibility condition (only open or uncollectible invoices) and the failure mode for everything else (409 invoice_not_open). It stops short of naming alternatives — e.g., that mark_invoice_uncollectible is the way to set a non-payable state short of voiding — so the when-not-to-use side is only half covered.

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

Deploy Server

Other Tools