Skip to main content
Glama

Preview invoice from work

preview_invoice_from_work
Read-only

Shows the lines and totals an invoice made from a project's unbilled work would have, without creating anything or taking any hours: finished billable time and billable expenses, grouped per task (default), person, day or one line in total, priced at the rate each entry was logged with (an entry with no rate at all is priced at zero and counted). Only the project owner.

Input Schema

NameRequiredDescriptionDefault
toNoOnly work up to this day, YYYY-MM-DD.
fromNoOnly work from this day on, YYYY-MM-DD.
notesNoUp to 4000 characters. Default: the profile's default notes.
termsNoUp to 4000 characters. Default: the profile's payment instructions.
toNameNoWho it is for. Default: the client's name.
boardIdYesThe project.
dueDateNoYYYY-MM-DD. Default: the profile's payment terms (invoice) or 30 days (estimate).
groupByNoHow the work becomes lines. Default task.
toEmailNo
toTaxIdNo
clientIdNoOne of the user's clients; its name, email, address, tax id and currency are copied onto the document.
currencyNoThree-letter code. Default: the client's, else the profile's.
discountNoA fixed amount off the whole document. An amount in the currency's main unit, e.g. 85 or "85.50" (not cents). null clears it.
taxLabelNoWhat the tax is called, up to 30 characters.
issueDateNoThe issue date. Default today, YYYY-MM-DD.
toAddressNo
expenseIdsNoOnly these expenses.
taxPercentNoTax as a percentage, e.g. 21 or "10,5". Default: the profile's.
includeTimeNoDefault true.
taxableTimeNoWhether tax applies to the time lines. Default true.
timeEntryIdsNoOnly these time entries (from the unbilled list).
includeExpensesNoDefault true.
taxableExpensesNoWhether tax applies to the expense lines. Default true.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.3/5.0
Behavior5/5

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

Goes well beyond the readOnly/destructive annotations by disclosing the pricing rule (each entry at its logged rate, zero-rate entries counted at zero), the inclusion criteria (finished billable time and billable expenses), the default grouping, and the owner-only authorization requirement. An agent knows what happens to unpriced entries and who can call it.

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?

Front-loads the core 'preview, does not create' claim and packs useful detail into a single dense sentence. It reads slightly as a run-on with nested parentheses, but every clause earns its place.

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 23-parameter preview tool with no output schema, the description adequately characterizes the returned content (lines and totals, grouped) and the pricing/authorization behavior. Some parameter-level nuance (date filters, expense/time inclusion flags) is left entirely to the schema, but nothing critical for correct invocation is missing.

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 description coverage is 87%, so the schema already documents nearly all 23 parameters including defaults. The description adds only the groupBy enum values and default, which slightly overlaps the schema field description. Baseline 3 is appropriate given the schema does the heavy lifting.

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?

States a specific verb (shows/previews), a specific resource (the lines and totals of an invoice from a project's unbilled work), and explicitly negates the write behavior ('without creating anything or taking any hours'), which cleanly separates it from the sibling create_invoice_from_work.

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?

The phrase 'without creating anything or taking any hours' tells the agent exactly when this preview is appropriate versus the create counterpart, and 'Only the project owner' adds a permission precondition. It stops short of naming create_invoice_from_work as the alternative, so routing is implied rather than spelled out.

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