Skip to main content
Glama

Field Service Business Platform by Doing Work

changes_invoice

Bill approved change orders on a normal invoice (draft; send it with invoices.send). Each change order's lines are copied, labelled with its number. Leave out change_order_ids to bill every approved change order on the job not yet invoiced. They must share one tax rate. Credits (change orders under 0) come off as discounts and need priced work on the same invoice.

Input Schema

NameRequiredDescriptionDefault
memoNo
due_onNo
job_idYes
change_order_idsNo

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4/5.0
Behavior4/5

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

With no annotations, the description carries the full burden and discloses key behavior: it creates a draft invoice, copies change order lines labelled by number, treats negative change orders as discounts, and requires priced work on the same invoice. It doesn't cover permissions or idempotency, but the main mutation semantics are explained.

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 dense but front-loaded, starting with the core action before constraints. Every sentence contributes useful information, though the phrasing is compact enough that some readers may need to reread the credit/discount rule.

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?

An output schema exists, so return values need not be described. For a mutation tool with no annotations, the description covers draft status, line copying, default selection behavior, and discount handling, though it omits guidance on memo, due_on, and permission requirements.

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 0%, so the description needs to compensate for all parameter meaning. It explains change_order_ids well, including the omit behavior and tax-rate constraint, but job_id is only implied, and memo and due_on receive no explanation at all.

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 uses a specific verb and resource: 'Bill approved change orders on a normal invoice'. It also clarifies the output is a draft and that sending is handled by a different tool, so an agent can distinguish it from sibling tools like invoices_create or changes_send.

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?

It gives clear usage conditions: omit change_order_ids to bill every approved uninvoiced change order on the job, and all included orders must share one tax rate. It doesn't explicitly name alternatives beyond invoices.send for sending, but the context needed to choose this tool is largely present.

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