Skip to main content
Glama
lazyants

lexware-mcp-server

by lazyants

Download Invoice File

lexware_download_invoice_file
Read-onlyIdempotent

Download an invoice file by ID. Retrieves PDF by default, or XML XRechnung e-invoice when requested and available.

Instructions

Download the file for an invoice. Defaults to PDF; pass format="xml" to request the XRechnung XML e-invoice when available (the API returns whatever representation it can render).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
idYesInvoice UUID
formatNoRepresentation to request: "pdf" (default) or "xml" for the XRechnung XML e-invoice when available.pdf

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv5.0.0
    • addedInput schema / properties / format
      Added value: +{
      +  "default": "pdf",
      +  "description": "Representation to request: \"pdf\" (default) or \"xml\" for the XRechnung XML e-invoice when available.",
      +  "enum": [
      +    "pdf",
      +    "xml"
      +  ],
      +  "type": "string"
      +}
  2. First observedv3.0.0

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare read-only, idempotent, non-destructive. The description adds the behavioral nuance that the API returns whatever representation it can render, indicating potential fallback if the requested format is unavailable. This adds value beyond annotations.

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 sentences, minimal and front-loaded. The first sentence gives the core action, and the second explains the optional format. No unnecessary words.

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 simple download tool with two parameters and no output schema, the description covers the key behaviors (default format, optional XML, availability caveat). The context is complete for agent decision-making, especially given the strong annotation support.

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 has 100% coverage, so baseline is 3. The description adds context for the format parameter, explaining that XML requests the XRechnung e-invoice and that availability varies. For the id parameter, it repeats the schema's description but provides no additional meaning. Overall, the description enriches the format parameter sufficiently.

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 clearly states it downloads invoice files, specifies default PDF and optional XML format, and the tool name uniquely identifies it for invoices. It distinguishes from sibling download tools by focusing on invoices.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for invoice file downloads but lacks explicit guidance on when to use this tool versus alternatives like lexware_download_file or other document download tools. No exclusions or alternative comparisons are provided.

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