Skip to main content
Glama

Rechnungslotse: deutsche E-Rechnung

Rechnungsdatei abholen (Konto nötig)

rechnung_datei
Read-only

Holt eine Fassung einer erzeugten Rechnung. WICHTIG: „zugferd" ist die E-Rechnung ALS PDF – ein PDF/A-3 mit eingebettetem Rechnungsdatensatz, das Menschen lesen und Maschinen verarbeiten können. „pdf" ist nur das Sichtdokument OHNE Datensatz und damit keine E-Rechnung. Wer eine „saubere E-Rechnung als PDF" oder ein „PDF/A" will, nimmt zugferd. Nur bei xrechnung kommt der Inhalt mit; PDFs gibt es als Link, weil ein PDF als Base64 im Gespräch niemandem nützt.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
formatYeszugferd = E-Rechnung als PDF/A-3 mit eingebettetem Datensatz (der Regelfall für „PDF-Rechnung"). xrechnung = nur der XML-Datensatz, für Behörden und zur Prüfung. pdf = Sichtdokument OHNE Datensatz, nur wenn ausdrücklich keine E-Rechnung gewünscht ist.
rechnung_idYesDie id aus rechnung_erstellen.

Schema Changelog

Changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. First observed

TDQS

A4/5.0
Behavior4/5

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

Beyond the readOnlyHint annotation, the description discloses how each format is delivered: only xrechnung returns content inline, while PDFs are provided as links because Base64 would be impractical in a conversation. It also explains that zugferd is a PDF/A-3 with an embedded invoice dataset, setting clear expectations about file type and machine-readability.

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 moderately sized and front-loaded with the core action, followed by the critical format distinction. The WICHTIG warning and the Base64 rationale are justified despite the length. Slightly wordy, but every sentence contributes to correct usage.

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?

With no output schema, the description bears the burden of explaining return behavior and does so: inline for xrechnung, links for PDFs. The title also signals the account requirement. It does not detail failure or not-found cases, but for a read-only fetch tool, the essential call-time knowledge is present.

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?

The schema already documents both parameters at 100% coverage, so the baseline is 3. The description adds practical rationale for format selection and clarifies the real-world difference between zugferd and pdf, adding meaning beyond the enum labels. It does not add much for rechnung_id, but the schema already ties it to rechnung_erstellen.

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?

The description opens with 'Holt eine Fassung einer erzeugten Rechnung', naming a specific verb, resource, and the fact that it works on already generated invoices. The detailed format breakdown further differentiates it from reading invoice metadata or searching, though it does not explicitly name a sibling tool.

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 description gives explicit format-selection rules: choose zugferd for a 'saubere E-Rechnung als PDF'/PDF/A, pdf only when no e-invoice is wanted, and xrechnung for authorities/validation. It also notes that xrechnung returns inline content while PDFs come as links, which informs the choice. It does not compare against sibling tools like rechnung_lesen, but the format context is strong.

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.

TDQS

A3.9/5.0
Disambiguation4/5

Most tools target distinct resources (customers, services, invoices, payments, legal checks), but rechnung_erstellen vs. leistungen_abrechnen both create invoices and rechnung_pruefen vs. pflichtangaben_pruefen both validate invoices, though with different inputs and scopes. The descriptions are detailed enough to resolve ambiguity after careful reading.

Naming Consistency3/5

The dominant pattern is object_verb (kunden_suchen, rechnung_erstellen, zahlung_erfassen), but several names are noun phrases (offene_posten, leistungen_offen, umsatzsteuer_aufstellung) or noun_noun (rechnung_datei). This mixed convention is still readable but lacks a uniform verb-based structure.

Tool Count3/5

At 18 tools, the server sits in the borderline-heavy range (16-25). The domain of German e-invoicing is broad, but the large number is not fully justified by tool specialization, as some functions (e.g., multiple validation tools) could be consolidated.

Completeness3/5

The surface covers the core lifecycle of services, invoicing, payment recording, and validation, but notable operations are missing: creating credit notes (explicitly referenced in zahlung_erfassen), managing customers, and updating/cancelling invoices. These gaps can lead to dead ends in common workflows like handling overpayments or customer changes.

Resources