Skip to main content
Glama

Get invoice PDF or e-invoice

get_invoice_pdf
Read-onlyIdempotent

Returns a download link for an invoice, not the file itself: as a PDF (the default), as a ZUGFeRD PDF with the e-invoice data embedded, or as XRechnung XML. Use it when the user wants to see or save the document, for example to check a draft before finalizing, or needs an e-invoice for a business customer. The link works for 15 minutes without signing in: whoever has the link can download the document until it expires. Read-only: nothing is stored or sent. A draft PDF is watermarked DRAFT, and an imported invoice gives the PDF that was uploaded. The e-invoice formats exist for finalized invoices only and need the fields the standard requires; when one is missing the tool returns an error naming it instead of a link. Recipient fields and the buyer reference can still be changed on a finalized invoice, while sender details are fixed when an invoice is created.

Input Schema

NameRequiredDescriptionDefault
idYesInvoice ID
formatNopdf (default), zugferd (PDF with the e-invoice data embedded) or xrechnung (e-invoice XML). The e-invoice formats need a finalized invoice.pdf

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.3/5.0
Behavior5/5

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

Adds substantial context beyond the readOnlyHint=true annotation: the link expires in 15 minutes and requires no sign-in, so anyone holding it can download; drafts come back watermarked DRAFT; imported invoices return the uploaded PDF; and missing required e-invoice fields produce a named error instead of a link. Nothing contradicts the annotations, and 'nothing is stored or sent' reinforces the read-only profile.

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 critical fact (a link, not a file) is front-loaded and the format explanation follows in a logical order. The final sentence about recipient and sender field mutability drifts into update_invoice territory and does not help an agent call this tool, so it does not fully earn its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a two-parameter, no-output-schema tool, the description covers what is returned (a time-limited link), what each format yields, how drafts and imported invoices differ, and what happens on error. An agent has everything it needs to call this correctly and set user expectations.

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?

Schema coverage is 100%, so the baseline is 3, but the description adds real meaning: pdf is the default, zugferd embeds e-invoice data in the PDF, xrechnung is e-invoice XML, and the e-invoice options only work on finalized invoices. The trailing detail about mutable recipient fields versus fixed sender details is tangential but still clarifies the domain state behind the format choice.

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 (returns a download link for an invoice) and immediately disambiguates output type: a link, not the file, with three concrete formats. It does not name its closest sibling (get_invoice_preview) or contrast with get_invoice, so the differentiation is implicit rather than explicit.

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 clear usage triggers: when the user wants to see or save the document, check a draft before finalizing, or needs an e-invoice for a business customer. It also states a hard constraint (e-invoice formats require a finalized invoice), but never names an alternative tool for the preview/metadata cases, leaving routing to inference.

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