Fakturai — German E-Invoice (ZUGFeRD / Factur-X / E-Rechnung)
Server Details
KoSIT-verified German e-invoices: generate & validate ZUGFeRD, Factur-X, XRechnung, EN 16931.
- Status
- Healthy
- Uptime
- 99.9% over 36 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
TDQS
Scored across 3 tools
Each tool targets a distinct operation: health check, invoice generation, and invoice validation. No overlap in functionality or ambiguity.
Tools follow a lowercase snake_case pattern, but 'compliance_status' is a noun phrase while the other two use verb_noun structure. Slight inconsistency but still predictable and readable.
Three tools is well-scoped for the focused domain of German e-invoice generation and validation. Neither too few nor excessive.
Covers the full workflow: readiness check, invoice creation with verification, and validation of existing invoices. No obvious gaps for the stated purpose.
Available Tools
3 toolscompliance_statusAInspect
Check the e-rechnung engine health: KoSIT + Mustang daemon status and dependency version pins vs. latest releases. Use before bulk invoice generation to confirm the compliance gate is fully operational.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It discloses what is checked (health, status, version pins vs. latest) but does not explicitly state it is read-only or has no side effects. Adding 'read-only' would improve transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences: first defines purpose, second gives usage context. No redundant words, perfectly front-loaded. Every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given output schema exists, return values need not be described. Tool is simple with no parameters, and usage context is sufficient. Could mention that it does not modify state, but overall complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Zero parameters, so schema coverage is 100%. The description does not need to add parameter meaning. Baseline of 4 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool checks e-rechnung engine health, specifically KoSIT + Mustang daemon status and dependency version pins. It distinguishes from sibling tools generate_einvoice and validate_einvoice by being a pre-check operation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly advises use before bulk invoice generation to confirm compliance gate is operational. While it does not list alternatives or when not to use, the context is clear given siblings. A score of 4 reflects good guidance without exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate_einvoiceAInspect
Generate a KoSIT-verified ZUGFeRD/Factur-X German e-invoice (EN 16931 / E-Rechnung). Returns pdf_b64 (base64 PDF), invoice_number, and the full validation_report. Every invoice returned has passed the official German government KoSIT acceptance gate — the same gate used by federal agencies for B2G submissions. Keywords: ZUGFeRD, Factur-X, E-Rechnung erstellen, Rechnung PDF, German invoice.
| Name | Required | Description | Default |
|---|---|---|---|
| invoice_json | Yes | ||
| seller_profile | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description discloses the output format and the important behavioral fact that every invoice has passed the KoSIT acceptance gate. It does not detail permissions, side effects, or rate limits, but covers the key behavioral promise.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured paragraph with the main function, output, verification guarantee, and keywords. It is concise with no filler, though a clearer separation of sections could improve readability.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite having an output schema (not shown), the description fails to explain the critical input parameters, leaving the agent uninformed about how to construct invoice_json and seller_profile. For a complex tool generating regulated documents, this is a significant gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description adds no meaning to the two opaque object parameters (invoice_json, seller_profile). The agent has no guidance on required fields, structure, or examples for these inputs.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it generates a KoSIT-verified ZUGFeRD/Factur-X German e-invoice, specifies output fields (pdf_b64, invoice_number, validation_report), and distinguishes from siblings like validate_einvoice by emphasizing the generation and verification aspect.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for generating a verified German e-invoice, but does not explicitly state when to use this tool versus siblings like validate_einvoice or compliance_status. No when-not or alternative guidance is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_einvoiceAInspect
Validate an existing ZUGFeRD/Factur-X/E-Rechnung invoice. Accepts a base64-encoded PDF or raw CII XML. Runs the full three-validator check: PDF/A conformance, EN 16931 Schematron, and the official German KoSIT acceptance gate. No authentication required. Keywords: E-Rechnung prüfen, ZUGFeRD validieren, Factur-X check, Rechnung compliance.
| Name | Required | Description | Default |
|---|---|---|---|
| content | Yes | ||
| content_format | No | pdf_b64 |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, description fully discloses input formats and the three validation steps. No contradictions. Could mention output format, but output schema exists. Good transparency for a read-only validation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Four concise, front-loaded sentences. Each sentence adds unique value: purpose, input format, validation details, and authentication status. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (2 params, 0% schema coverage, no annotations), the description covers input, validation behavior, and authentication. Output schema exists so return values are not needed. Could mention error handling, but overall complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema has 0% description coverage; description compensates by explaining the 'content' parameter accepts base64-encoded PDF or raw CII XML and mentions default format. Adds significant meaning beyond the schema's bare titles.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the tool validates existing ZUGFeRD/Factur-X/E-Rechnung invoices, listing specific formats (PDF, CII XML) and validation checks (PDF/A, EN 16931, KoSIT). This distinguishes it from sibling tools like compliance_status and generate_einvoice.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states 'No authentication required' and implies usage for validating existing invoices. Does not explicitly contrast with siblings, but the verb 'validate' clearly differentiates from generation or status checks.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
3 tool updates
- First observed
compliance_status - First observed
generate_einvoice - First observed
validate_einvoice
Related MCP Connectors
XRechnung and ZUGFeRD e-invoicing (EN 16931): create, validate, check Leitweg-IDs, German VAT.
Generate & validate EN 16931 e-invoices (Factur-X, ZUGFeRD, XRechnung); verification certificates
German e-invoicing: generate XRechnung 3.0, pre-check and extract (incl. ZUGFeRD PDF). Paid.
Create, validate, convert & extract compliant e-invoices (UBL, Factur-X, ZUGFeRD, XRechnung)
Related MCP Servers
- AlicenseAqualityCmaintenanceValidates electronic invoices (XRechnung, ZUGFeRD, Factur-X, Peppol BIS, etc.) against authority-pinned rules and explains failures.210 npmMIT
- AlicenseAqualityDmaintenanceMCP server for DACH e-invoicing. Create XRechnung (UBL) and ZUGFeRD 2.3 (Factur-X CII) invoices, validate against EN 16931 rules, extract data from XML, and convert between UBL, CII and JSON formats.630 npm2MIT
- AlicenseAqualityAmaintenanceModel Context Protocol (MCP) server for German Electronic Invoicing (ZUGFeRD 2.x / XRechnung 3.x). Provides tools to validate, generate, parse, and convert invoices compliant with EN 16931 and KoSIT.50218 PyPI2Apache 2.0
- AlicenseAqualityDmaintenanceMCP server for German e-invoice compliance (XRechnung 3.0 & ZUGFeRD 2.x) enabling AI agents to validate, generate, parse, and check compliance of electronic invoices per EN 16931.61MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.