accueil / serveurs / Finance & Paiement / dev.invowerk/xrechnung-e-invoice-validator
dev.invowerk/xrechnung-e-invoice-validator
serveur MCP (Model Context Protocol) · invowerk 1
Référencé dans l'annuaire. Seul le pentest comportemental fait foi, et il n'a pas encore été exécuté sur ce serveur.
Est-ce que dev.invowerk/xrechnung-e-invoice-validator est sûr ?
Au dernier audit MCP Hub, le serveur MCP « dev.invowerk/xrechnung-e-invoice-validator » est classé « Non encore testé ». Référencé dans l'annuaire. Seul le pentest comportemental fait foi, et il n'a pas encore été exécuté sur ce serveur. Le verdict est réévalué en continu ; consultez la fiche pour l'état à jour.
Méthode : MCP Hub analyse la description de chaque outil (couche 1) et, pour le verdict fort, exécute le serveur dans une micro-VM isolée avec leurres et réseau bloqué (couche 2). On publie des noms et des compteurs, jamais le contenu brut renvoyé par un outil.
Les 6 outils
- convert_invoice≈ 520 tokens
Convert an e-invoice to UBL or CII. The result is checked before it is returned. Input: `invoice_base64` is the base64 of an XML invoice or a ZUGFeRD / Factur-X PDF, at most 4 MB decoded; or pass the file as a download link in `file`. `target_syntax` is "ubl" or "cii". `target_flavor` is optional, "en16931" or "xrechnung"; without it the flavor of the source is kept. Returns `xml`, `syntax`, `flavor` and `self_validation` (`valid`, `finding_count`). invowerk checks the converted XML before answering and never returns an invalid document. Input that cannot be read or converted fails with an error message. Credits: 3 per call.
Paramètres, retour & exemple (4)
Paramètresfile· object · optionnel
The file as a download link, instead of `invoice_base64`. In ChatGPT, pass the user's uploaded file here. Other clients can set `download_url` to a public https URL.target_flavor· ? · optionnel
Optional: "en16931" or "xrechnung". Without it the flavor of the source is kept.target_syntax· string · requis
Syntax to convert to: "ubl" or "cii".invoice_base64· ? · optionnel
The invoice file, base64-encoded. At most 4 MB decoded.
Exemple d'appel{"name": "convert_invoice", "arguments": {"target_syntax": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - explain_errors≈ 324 tokens
Explain rule codes in plain language. Works without an API key. Covers the codes of `validate_invoice` findings and hints: EN 16931, XRechnung, ZUGFeRD and invowerk's own hint codes (IW-*). Input: `codes` is a list of one or more codes, e.g. ["BR-CO-18", "BR-DE-21"]. Duplicates are removed. `lang` is "de" (default) or "en". Returns `lang` and `explanations`. Each explanation has `title`, `meaning`, `causes`, `fixes`, `severity`, `standard`, `bt_refs`, `xpath_hints` and `explain_url` (the German page for the code). If any code is unknown, the call fails and names the unknown codes. Credits: free. This tool is not metered.
Paramètres, retour & exemple (2)
Paramètreslang· string · optionnel · de | en
Language of the explanations: "de" (default) or "en".codes· array · requis
One or more rule codes from validate_invoice, e.g. ["BR-CO-18", "BR-DE-21"].
Exemple d'appel{"name": "explain_errors", "arguments": {"codes": []}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - generate_invoice≈ 384 tokens
Create a valid EN 16931 e-invoice (UBL or CII XML) from JSON. Input: `invoice` is a JSON object keyed on EN 16931 Business Terms, the same schema as `POST /v1/generate`, at most 4 MB. Main fields: `syntax` ("ubl" default, or "cii"), `flavor` ("en16931" default, or "xrechnung", which requires `buyer_reference`, the Leitweg-ID BT-10, and `payment_iban`), `invoice_number`, `issue_date` (YYYY-MM-DD), `currency`, `seller`, `buyer`, `lines`, `tax_breakdown`, `totals`. invowerk writes your amounts as given. It does not compute or correct them. Returns `xml`, `syntax`, `flavor` and `self_validation`. invowerk checks the XML before answering and never returns an invalid document. Invalid input, or XML that fails the check, returns an error, as does a busy (`engine_busy`) or overrunning (`engine_timeout`) generate. Credits: 5 per call.
Paramètres, retour & exemple (1)
Paramètresinvoice· object · requis
The invoice as a JSON object keyed on EN 16931 Business Terms, the schema of POST /v1/generate and of parse_invoice's `model`: syntax, flavor, invoice_number, issue_date, currency, seller, buyer, lines, tax_breakdown, totals.
Exemple d'appel{"name": "generate_invoice", "arguments": {"invoice": {}}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - parse_invoice≈ 466 tokens
Read an existing e-invoice into JSON keyed on EN 16931 Business Terms. The JSON is the input format of `generate_invoice`, so you can edit it and create the invoice again. Input: `invoice_base64` is the base64 of an XML invoice (UBL or CII) or a ZUGFeRD / Factur-X PDF, at most 4 MB decoded; or pass the file as a download link in `file`. A PDF may have at most 500 pages and 16 attachments. Returns `model` (the invoice as JSON), `detection` (`syntax`, `flavor`, `customization_id`) and `source` ("xml" or "pdf-embedded"). A file that cannot be read fails with an error that starts with an error code, e.g. a PDF without embedded XML, a UBL credit note, malformed XML, or a busy (`engine_busy`) or overrunning (`engine_timeout`) read. Credits: 2 per call.
Paramètres, retour & exemple (2)
Paramètresfile· object · optionnel
The file as a download link, instead of `invoice_base64`. In ChatGPT, pass the user's uploaded file here. Other clients can set `download_url` to a public https URL.invoice_base64· ? · optionnel
The invoice file, base64-encoded. At most 4 MB decoded.
Exemple d'appel{"name": "parse_invoice", "arguments": {"file": {}, "invoice_base64": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - render_invoice≈ 484 tokens
Render an XML e-invoice (UBL or CII, e.g. XRechnung) as a readable HTML page. invowerk uses the KoSIT XRechnung visualization. Use it to show a person what an e-invoice contains. Input: `invoice_base64` is the base64 of the XML, at most 4 MB decoded, or pass the file as a download link in `file`. PDFs are not accepted. `lang` sets the label language, "de" (default) or "en". Returns `html` (a complete HTML document), `lang`, `flavor` (e.g. "xrechnung") and `syntax` (e.g. "ubl_invoice"). A file that is not an XML invoice, malformed XML or XML with a DOCTYPE fails with an error message, and so does a busy (`engine_busy`) or overrunning (`engine_timeout`) render. Credits: 1 per call.
Paramètres, retour & exemple (3)
Paramètresfile· object · optionnel
The file as a download link, instead of `invoice_base64`. In ChatGPT, pass the user's uploaded file here. Other clients can set `download_url` to a public https URL.lang· string · optionnel · de | en
Language of the labels: "de" (default) or "en".invoice_base64· ? · optionnel
The invoice file, base64-encoded. At most 4 MB decoded.
Exemple d'appel{"name": "render_invoice", "arguments": {"file": {}, "lang": "de", "invoice_base64": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - validate_invoice≈ 590 tokens
Check an e-invoice against EN 16931 and German rules. Input: `invoice_base64` is the base64 of an XML invoice (UBL or CII) or a ZUGFeRD / Factur-X PDF, at most 4 MB decoded; or pass the file as a download link in `file`. `explain=true` adds an explanation to findings whose rule has one, in `lang` ("de" or "en"). `valid` is the result. For XRechnung the KoSIT validator decides. If it is unreachable, invowerk's own check with the same rules decides, `verdict_source` is "local" and `official_degraded` is true. `disagreement` is true when both ran and differ. `findings` lists each problem with `rule_id`, `severity` and `message`; pass the codes to `explain_errors` (free). `pdfa_verdict` is the PDF/A check of a PDF. `hints` never change `valid`. Unreadable input returns a finding, not an error. It fails with an error when the check is busy (`engine_busy`), ran longer than 20 s (`engine_timeout`) or the XML has more than 100,000 elements (`document_too_complex`). Credits: 1 per call.
Paramètres, retour & exemple (4)
Paramètresfile· object · optionnel
The file as a download link, instead of `invoice_base64`. In ChatGPT, pass the user's uploaded file here. Other clients can set `download_url` to a public https URL.lang· string · optionnel · de | en
Language of the explanations: "de" (default) or "en".explain· boolean · optionnel
true adds an explanation to each finding whose rule has one.invoice_base64· ? · optionnel
The invoice file, base64-encoded. At most 4 MB decoded.
Exemple d'appel{"name": "validate_invoice", "arguments": {"file": {}, "lang": "de", "explain": true, "invoice_base64": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]}
C'est votre serveur ?
Revendiquez-le sur l'espace créateur (preuve GitHub, domaine ou npm) pour afficher le badge « propriétaire vérifié » et lancer un pentest comportemental à la demande afin d'obtenir le badge « Vérifié ».