Invoice Bridge MCP
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Invoice Bridge MCPValidate the latest invoice PDF against § 14 UStG and EN 16931."
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
🌉 Invoice Bridge MCP
Ein robuster, produktionsreifer Model Context Protocol (MCP) Server zur automatisierten Extraktion, Analyse und Konformitätsprüfung von hybriden elektronischen Rechnungen (ZUGFeRD / Factur-X) und § 14 UStG Pflichtangaben für KI-Assistenten (z. B. Claude Desktop, Antigravity, Cursor, Cline).
📋 Inhaltsverzeichnis
Related MCP server: Scribo MCP Server
💡 Überblick
Ab dem 01.01.2025 gilt in Deutschland die gesetzliche Verpflichtung zum Empfang elektronischer Rechnungen (E-Rechnung) im B2B-Bereich. Invoice Bridge MCP schließt die Lücke zwischen Dokumenten-Eingangsverzeichnissen, hybriden PDF/A-3-Rechnungsdateien und LLM-basierten Agenten.
Der MCP-Server ermöglicht KI-Assistenten:
Rechnungsdokumente im Eingangsordner aufzufinden (
invoices://list).Eingebettete XML-Rechnungsdaten aus PDF/A-3-Dateien verlustfrei zu extrahieren (
parse_invoice).XML-Rechnungen auf steuerrechtliche (§ 14 UStG) und EN 16931 Konformität zu prüfen (
validate_compliance).PDF-Rechnungen in einem Schritt direkt zu prüfen (
validate_invoice_pdf).
✨ Funktionsumfang
📄 PDF/A-3 Extraktion: Erkennt und extrahiert eingebettete Factur-X / ZUGFeRD-Anhänge (
factur-x.xml,zugferd-invoice.xml,xrechnung.xml).⚡ 1-Step PDF Validierung: Direkte Prüfung von PDF-Rechnungen ohne Zwischendatei.
🛡️ Sicherheit & Resilienz: Integrierte Path-Traversal-Absicherung (
..Erkennung) und sicheres Fehlerhandling bei defektem XML.⚖️ § 14 UStG & Schematron-Validierung:
Rechnungsnummer, Ausstellungsdatum (Format 102 / YYYYMMDD), Rechnungstyp-Codes.
Vollständigkeit von Rechnungssteller und Leistungsempfänger.
Prüfung der Steuernummer und USt-IdNr. (Format & ISO-Ländercode-Prefix).
Währungscodes (ISO 4217) & Ländercodes (ISO 3166-1).
🧮 Mathematische Konsistenzprüfung:
Exakte Cent-genaue Prüfung mit
Decimal:Netto + USt == Brutto.Prüfung der maximalen Nachkommastellen (BR-DEC-Regeln).
🔌 Standardkonformes MCP: Basiert auf
FastMCPmit automatischer Tool- und Ressourcen-Registrierung.
🏗️ Architektur
flowchart LR
A[KI-Agent / LLM] <-->|MCP Protocol| B[Invoice Bridge MCP Server]
B --> C[parser.py\nPDF/A-3 Extractor]
B --> D[validator.py\nFacturXValidator]
B --> E[(input/ Ordner)]
C -->|Liest PDF & Schreibt XML| E
D -->|Liest XML & Prüft Daten| E🚀 Installation & Schnellstart
Voraussetzungen
Python >= 3.10
Virtuelle Umgebung empfohlen
1. Repository klonen & Virtual Environment erstellen
git clone https://github.com/Winterholdt/invoice-bridge-mcp.git
cd invoice-bridge-mcp
# Virtual Environment anlegen
python -m venv .venv
# Aktivieren (Windows PowerShell)
.venv\Scripts\Activate.ps1
# Aktivieren (Linux/macOS)
source .venv/bin/activate2. Paket installieren
pip install -e .⚙️ MCP Konfiguration
Claude Desktop / Cline / Antigravity
Trage den MCP Server in deine Konfigurationsdatei (z. B. claude_desktop_config.json) ein:
{
"mcpServers": {
"invoice-bridge": {
"command": "c:/your/path/invoice-bridge-mcp/.venv/Scripts/python.exe",
"args": [
"c:/your/path/invoice-bridge-mcp/src/invoice_bridge/server.py"
],
"env": {
"INVOICE_INPUT_DIR": "c:/your/path/invoice-bridge-mcp/input"
}
}
}
}Umgebungsvariablen
Variable | Standardwert | Beschreibung |
|
| Absoluter oder relativer Pfad zum Eingangsverzeichnis für Rechnungen. |
🛠️ MCP Schnittstellen (Tools & Resources)
Resources
URI | Beschreibung | Rückgabe |
| Listet alle im Eingangsordner ( | Liste von Dateinamen ( |
Tools
1. validate_invoice_pdf (Empfohlen für PDFs)
Direkte Prüfung einer PDF-Rechnung in einem Schritt: Extrahiert eingebettete ZUGFeRD/Factur-X XML-Daten und validiert die Konformität nach § 14 UStG.
Eingabe-Parameter:
invoice_pdf_name(string, erforderlich): Dateiname der PDF im Ordnerinput/(z. B.test.pdf).
Rückgabe-Beispiel:
{ "status": "success", "invoice_id": "RE-2026-001", "compliance_checks": { "is_valid": true, "total_checks": 14, "passed": 14, "failed": 0, "failed_details": [] }, "approved_for_payment": true }
2. parse_invoice
Extrahiert die eingebettete ZUGFeRD/Factur-X XML-Datei aus einer PDF-Rechnung und speichert sie als .xml im Eingangsordner.
Eingabe-Parameter:
invoice_pdf_name(string, erforderlich): Dateiname der PDF im Ordnerinput/(z. B.test.pdf).
Rückgabe-Beispiel:
{ "status": "success", "xml_file": "test.xml" }
3. validate_compliance
Prüft eine vorhandene ZUGFeRD/Factur-X XML-Datei auf formale, strukturelle und rechnerische Konformität nach § 14 UStG und EN 16931 / Factur-X Profilen.
Eingabe-Parameter:
invoice_xml_name(string, erforderlich): Dateiname der XML im Ordnerinput/(z. B.test.xml).
Rückgabe-Beispiel:
{ "status": "success", "invoice_id": "INV-2026-001", "compliance_checks": { "is_valid": true, "total_checks": 14, "passed": 14, "failed": 0, "failed_details": [] }, "approved_for_payment": true }
📜 Validierte Regeln & Standards
Regel-ID | Standard / Norm | Beschreibung |
BR-01 | EN 16931 / Factur-X | Profil-Spezifikation (Specification Identifier / BT-24) |
BR-02 | § 14 Abs. 4 Nr. 4 UStG | Fortlaufende Rechnungsnummer (BT-1) |
BR-03 | § 14 Abs. 4 Nr. 3 UStG | Ausstellungsdatum im Format 102 ( |
BR-04 | UN/CEFACT 1001 | Gültiger Rechnungstyp-Code (z. B. |
BR-05 | ISO 4217 | 3-stelliger Währungscode (BT-5, z. B. |
BR-06 | § 14 Abs. 4 Nr. 1 UStG | Name des Rechnungsstellers (Seller Name / BT-27) |
BR-07 | § 14 Abs. 4 Nr. 1 UStG | Name des Rechnungsempfängers (Buyer Name / BT-44) |
BR-09 | ISO 3166-1 | Ländercode des Rechnungsstellers (BT-40) |
BR-CO-26 | EN 16931 | Rechnungssteller-Identifikation (Seller ID, Legal Org ID, Tax ID) |
BR-CO-09 | § 14 Abs. 4 Nr. 2 UStG | USt-IdNr. mit korrektem Länder-Präfix oder Steuernummer |
BR-13..15 | EN 16931 | Pflichtsummen: Netto ( |
BR-DEC-* | EN 16931 | Maximal 2 Nachkommastellen bei Währungsbeträgen |
CALC-01 | § 14 Abs. 4 Nr. 7/8 UStG | Mathematische Konsistenz: |
📁 Projektstruktur
invoice-bridge-mcp/
├── .github/
│ └── workflows/
│ └── ci.yml # GitHub Actions CI Workflow (Python 3.10 - 3.12)
├── config/
│ └── mcp_config.example.json # Vorlage für MCP-Client-Konfiguration
├── input/ # Verzeichnis für Eingangsrechnungen (PDF/XML)
│ └── test.pdf
├── src/
│ └── invoice_bridge/ # Hauptpaket (Single Source of Truth)
│ ├── __init__.py
│ ├── parser.py # PDF/A-3 Extractor mit robuster Fehlerbehandlung
│ ├── server.py # FastMCP Server mit Path-Traversal-Schutz
│ └── validator.py # FacturX / ZUGFeRD / § 14 UStG Prüflogik
├── test_invoices/ # Testrechnungen
│ ├── fail-xml-invalid.pdf
│ └── test.pdf
├── tests/ # Vollständige Pytest-Suite
│ ├── test_parser.py
│ ├── test_server.py
│ └── test_validator.py
├── .gitignore
├── pyproject.toml # Projekt-Metadaten, Entrypoints & Linter-Settings
└── README.md🧪 Entwicklung & Tests
# Entwicklungsumgebung inkl. Test-Tools installieren
pip install -e .[dev]
# Linter ausführen
ruff check .
# Test-Suite ausführen
pytest -v📄 Lizenz
Dieses Projekt ist unter der MIT-Lizenz lizenziert. Weitere Details in der LICENSE-Datei.
This server cannot be deployed
Maintenance
Related MCP Connectors
Verify ZUGFeRD/Factur-X e-invoices, convert PDF invoices to ZUGFeRD, check VAT IDs and Peppol.
German e-invoicing: generate XRechnung 3.0, pre-check and extract (incl. ZUGFeRD PDF). Paid.
Evidence-backed UBL, PDF, and image invoice checks before approval or payment.
XRechnung and ZUGFeRD e-invoicing (EN 16931): create, validate, check Leitweg-IDs, German VAT.
Related MCP Servers
AlicenseNot gradedqualityCmaintenanceInvoiceXML brings e-invoice compliance to your AI agent. Create, validate, convert, render, and extract structured invoices across UBL (Peppol BIS Billing 3.0, used worldwide), CII, Factur-X, ZUGFeRD, and XRechnung, all checked against the EN 16931 standard and official Schematron rules. Ask your assistant to generate a compliant invoice, validate one for errors, or convert between formats, with n5MIT- FlicenseNot gradedqualityDmaintenanceEnables AI agents to create and manage e-invoices through natural language, supporting EU compliance formats like ZUGFeRD and XRechnung, as well as US plain PDF invoices.7-
- AlicenseNot gradedqualityAmaintenanceEnables AI assistants to locally parse, validate, audit, explain, generate, and convert XRechnung and ZUGFeRD/Factur-X e-invoices using official rule sets, fully offline with no API keys required.Apache 2.0
- FlicenseNot gradedqualityCmaintenanceEnables AI agents to parse and analyze PDF invoices, including text, field, and table extraction, OCR for scanned documents, ZUGFeRD support, compliance validation, and batch processing via MCP.-