Einvoice

io.github.makririch由 GitHub 账号 makririch 发布v0.1.3更新于 Oct 25, 2026

XRechnung & ZUGFeRD: create, validate, and convert German e-invoices. EN 16931 compliant.

已验证STDIO仅桌面金融开发者工具

概览

AI 生成的概览

面向德国电子发票的本地 MCP 服务器:创建、校验并读取 XRechnung 与 ZUGFeRD XML,并提供格式规则查询。

可以做什么
根据结构化数据生成符合 UBL 2.1 的 XRechnung 发票,并自动计算净额、总额与税额(EN 16931、XRechnung 3.0.2)。校验电子发票 XML 的语法、必填字段和德国 BR-DE 业务规则。从 UBL 或 CII XML 中提取结构化发票数据。查询格式规则、必填字段、税种代码、单位代码和法定截止日期。
适用场景
适用于处理德国电子发票的场景:让助手根据自然语言请求起草合规的 XRechnung、检查已有发票 XML、从收到的发票中提取数据,或回答必填字段与截止日期相关问题。
运行要求
以 npm 包 einvoice-mcp 通过 stdio 在本地运行,需要 Node.js 18 或更高版本。无需 API 密钥、账户或外部服务,也不需要任何配置。
安装前请注意
发票在本地生成和校验,但服务器不会提交或发送发票;开具前应检查生成的 XML,因为错误的电子发票可能导致进项税抵扣损失。校验仅覆盖语法和 BR-DE 规则,不构成法律或税务建议。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Einvoice,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

E-Invoice MCP Server

MCP Server fuer E-Rechnungen im DACH-Raum — XRechnung erstellen, validieren und Daten extrahieren. Direkt aus Claude, Cursor oder jedem MCP-Client.

[npm version] [License: MIT]

Was ist das?

E-Invoice MCP ist ein Model Context Protocol Server fuer die Erstellung und Validierung von E-Rechnungen nach dem deutschen XRechnung-Standard. Ab 2027 muessen alle Unternehmen in Deutschland E-Rechnungen versenden koennen — mit diesem Tool bist du vorbereitet.

Du sagst Claude einfach: "Erstelle eine Rechnung an die Beispiel GmbH fuer 10 Stunden Beratung" — und erhaeltst eine valide XRechnung als UBL 2.1 XML.

Features

  • XRechnung erstellen — Valides UBL 2.1 XML aus strukturierten Daten (EN 16931 + XRechnung 3.0.2)
  • E-Rechnung validieren — Syntax, Pflichtfelder und deutsche Business-Regeln (BR-DE) pruefen
  • Daten extrahieren — Strukturierte Daten aus UBL- oder CII-XML lesen
  • Format-Info — Nachschlagewerk fuer Pflichtfelder, Steuer-Kategorien, Einheiten-Codes und Fristen
  • Automatische Berechnung — Netto, Brutto, Steuerbetraege werden automatisch berechnet
  • Plugin-faehig — Kann standalone laufen ODER in den BuchPilot MCP Server integriert werden
  • Keine externen Dienste — Alles laeuft lokal, keine API-Keys noetig
  • Keine nativen Abhaengigkeiten — Laeuft auf jedem System mit Node.js

Gesetzliche Fristen

DatumWas passiert
01.01.2025Alle Unternehmen muessen E-Rechnungen empfangen koennen
31.12.2026PDF-Rechnungen nur noch mit Empfaenger-Zustimmung erlaubt
01.01.2027Unternehmen >800.000 EUR Umsatz muessen E-Rechnungen senden
01.01.2028ALLE Unternehmen muessen E-Rechnungen senden

Fehlerhafte E-Rechnungen koennen zum Verlust des Vorsteuerabzugs fuehren (+ 6% Verzinsung).

Installation

Voraussetzungen

  • Node.js >= 18

npm (global)

bash
npm install -g einvoice-mcp

Von Source

bash
git clone https://github.com/makririch/einvoice-mcp.gitcd einvoice-mcpnpm installnpm run build

Konfiguration

Dieser MCP Server benoetigt keine Konfiguration. Es werden keine API-Keys oder externe Dienste benoetigt — alles laeuft lokal.

Nutzung

Server starten (standalone)

bash
# Nach npm install -g:einvoice-mcp
# Oder von Source:npm start
# Entwicklung mit Auto-Reload:npm run dev

Der Server laeuft ueber stdio und wartet auf MCP-Nachrichten.

In Claude Desktop verwenden

Siehe Claude Desktop Setup Guide fuer eine detaillierte Anleitung.

Kurzversion — fuege in claude_desktop_config.json hinzu:

json
{  "mcpServers": {    "einvoice": {      "command": "npx",      "args": ["-y", "einvoice-mcp"]    }  }}

Beispiele (natuerliche Sprache in Claude)

Nachdem du den Server konfiguriert hast, kannst du Claude z.B. fragen:

  • "Erstelle eine XRechnung an die Beispiel GmbH fuer 10 Stunden Beratung zu 150 EUR"
  • "Ist diese XML-Datei eine gueltige XRechnung?"
  • "Extrahiere die Rechnungsdaten aus diesem XML"
  • "Welche Pflichtfelder brauche ich fuer eine XRechnung?"
  • "Welche Steuer-Kategorien gibt es und was bedeuten sie?"
  • "Bis wann muss mein Unternehmen E-Rechnungen versenden koennen?"

Quickstart

Eine Schritt-fuer-Schritt-Anleitung "Erstelle deine erste XRechnung in 5 Minuten" findest du in docs/quickstart.md.

Tool-Referenz

Eine vollstaendige Referenz aller 4 Tools mit Parametern, Beispiel-Inputs und Beispiel-Outputs findest du in docs/tool-reference.md.

Kurzuebersicht

ToolBeschreibung
create_xrechnungXRechnung (UBL 2.1 XML) aus strukturierten Daten erstellen
validate_invoiceE-Rechnung XML validieren (Syntax + BR-DE Business-Regeln)
extract_dataStrukturierte Daten aus UBL- oder CII-XML extrahieren
get_format_infoNachschlagewerk fuer Formate, Pflichtfelder, Codes und Fristen

BuchPilot-Integration

E-Invoice MCP kann als Plugin in den BuchPilot MCP Server integriert werden:

typescript
import { registerEInvoiceTools } from "einvoice-mcp";registerEInvoiceTools(server);

Kombination: BuchPilot erstellt eine Rechnung in Lexoffice -> Daten extrahieren -> XRechnung erzeugen -> fertige E-Rechnung.

Unterstuetzte Standards

StandardVersionStatus
XRechnung3.0.2Erstellen + Validieren
EN 16931—Basis fuer XRechnung
UBL 2.1—XML-Syntax fuer XRechnung
CII (Cross Industry Invoice)—Extrahieren (Lesen)
ZUGFeRD / Factur-X2.3Extrahieren (Lesen), Erstellen geplant

FAQ / Troubleshooting

"XML konnte nicht geparst werden"

  • Ist das XML well-formed? (Alle Tags korrekt geschlossen?)
  • Ist es tatsaechlich eine UBL- oder CII-Rechnung? (Root-Element muss <Invoice> oder <CrossIndustryInvoice> sein)
  • Ist das Encoding UTF-8?

Validierung zeigt Fehler "BR-DE-13: Buyer Reference ist Pflicht"

Die Kaeufer-Referenz (BT-10) ist in XRechnung Pflicht. Bei Rechnungen an oeffentliche Auftraggeber ist das die Leitweg-ID. Bei B2B-Rechnungen kann es eine beliebige Referenz sein (z.B. Bestellnummer).

json
{  "buyerReference": "04011000-12345-67"}

Validierung zeigt Warnung "BR-DE-21: Telefonnummer empfohlen"

Das ist nur eine Warnung, kein Fehler. Die Rechnung ist trotzdem gueltig. Fuer beste Kompatibilitaet solltest du aber eine Telefonnummer des Verkaeufers angeben.

Welche Steuer-Kategorien gibt es?

CodeNameBeschreibungSteuersaetze
SStandardNormaler Steuersatz19%, 7%
ZNullsatz0% (z.B. innergemeinschaftlich mit USt-Befreiung)0%
ESteuerbefreitz.B. Kleinunternehmer nach Paragraph 19 UStG0%
AEReverse ChargeSteuerschuldnerschaft des Empfaengers (Paragraph 13b UStG)0%
KInnergemeinschaftlichSteuerfreie innergemeinschaftliche Lieferung0%

Welche Einheiten-Codes gibt es?

CodeNameBeschreibung
H87StueckEinzelne Einheit (Default)
HURStundeArbeitsstunde
DAYTagArbeitstag
MONMonatKalendermonat
KGMKilogrammGewicht
MTRMeterLaenge
LTRLiterVolumen
MTKQuadratmeterFlaeche
SETSet/PaketZusammenstellung
C62Einheit (generisch)Allgemeine Mengeneinheit

Server startet, aber Claude erkennt die Tools nicht

  • Pruefe ob die claude_desktop_config.json korrekt ist
  • Starte Claude Desktop neu nach Konfigurationsaenderungen
  • Pruefe die Logs: ~/Library/Logs/Claude/mcp.log (macOS)

Lizenz

MIT — Frei nutzbar, auch kommerziell.

Autor

MaKri — GitHub

来源:README.md,提交 eee0985

工具

0
SourceWeft 尚未在沙箱中启动过该软件包,因此其工具未知。

版本历史

1
  1. v0.1.3最新Sep 16, 2026

评分

已满足适用检查项的 40%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分

    请在仓库或注册中心条目中声明许可证。