Skip to main content
Glama
makririch

einvoice-mcp

E-Invoice MCP 服务器

用于 DACH 地区(德国、奥地利、瑞士)电子发票的 MCP 服务器 — 创建、验证 XRechnung 并提取数据。可直接从 Claude、Cursor 或任何 MCP 客户端使用。

npm version License: MIT

这是什么?

E-Invoice MCP 是一个 Model Context Protocol 服务器,用于根据德国 XRechnung 标准创建和验证电子发票。从 2027 年起,德国所有企业都必须具备发送电子发票的能力 — 使用此工具,你已做好准备。

你只需告诉 Claude:“为 Beispiel GmbH 创建一张 10 小时咨询服务的发票” — 即可获得一份有效的 UBL 2.1 XML 格式的 XRechnung。

功能特性

  • 创建 XRechnung — 从结构化数据生成有效的 UBL 2.1 XML(符合 EN 16931 + XRechnung 3.0.2 标准)

  • 验证电子发票 — 检查语法、必填字段和德国业务规则 (BR-DE)

  • 提取数据 — 从 UBL 或 CII XML 中读取结构化数据

  • 格式信息 — 提供必填字段、税收类别、单位代码和截止日期的查询手册

  • 自动计算 — 自动计算净额、总额和税额

  • 插件化 — 可独立运行,也可集成到 BuchPilot MCP 服务器中

  • 无需外部服务 — 全部本地运行,无需 API 密钥

  • 无原生依赖 — 可在任何安装了 Node.js 的系统上运行

法定截止日期

日期

事件

2025年1月1日

所有企业必须具备接收电子发票的能力

2026年12月31日

PDF 发票仅在获得接收方同意的情况下允许使用

2027年1月1日

年营业额超过 80 万欧元的企业必须发送电子发票

2028年1月1日

所有企业必须发送电子发票

错误的电子发票可能导致进项税抵扣损失(外加 6% 的利息)。

安装

前提条件

  • Node.js >= 18

npm (全局)

npm install -g einvoice-mcp

从源码安装

git clone https://github.com/makririch/einvoice-mcp.git
cd einvoice-mcp
npm install
npm run build

配置

此 MCP 服务器无需配置。不需要 API 密钥或外部服务 — 全部本地运行。

使用方法

启动服务器 (独立模式)

# Nach npm install -g:
einvoice-mcp

# Oder von Source:
npm start

# Entwicklung mit Auto-Reload:
npm run dev

服务器通过 stdio 运行并等待 MCP 消息。

在 Claude Desktop 中使用

详细指南请参阅 Claude Desktop Setup Guide

简要说明 — 在 claude_desktop_config.json 中添加:

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

示例(在 Claude 中使用自然语言)

配置服务器后,你可以询问 Claude,例如:

  • “为 Beispiel GmbH 创建一张 10 小时咨询服务的 XRechnung,单价 150 欧元”

  • “这个 XML 文件是有效的 XRechnung 吗?”

  • “从这个 XML 中提取发票数据”

  • “XRechnung 需要哪些必填字段?”

  • “有哪些税收类别,它们分别代表什么?”

  • “我的企业必须在什么时候具备发送电子发票的能力?”

快速入门

“5 分钟创建你的第一张 XRechnung”的分步指南可在 docs/quickstart.md 中找到。

工具参考

所有 4 个工具的完整参考(包括参数、输入示例和输出示例)可在 docs/tool-reference.md 中找到。

概览

工具

描述

create_xrechnung

从结构化数据创建 XRechnung (UBL 2.1 XML)

validate_invoice

验证电子发票 XML(语法 + BR-DE 业务规则)

extract_data

从 UBL 或 CII XML 中提取结构化数据

get_format_info

格式、必填字段、代码和截止日期的查询手册

BuchPilot 集成

E-Invoice MCP 可以作为插件集成到 BuchPilot MCP 服务器 中:

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

组合使用: BuchPilot 在 Lexoffice 中创建发票 -> 提取数据 -> 生成 XRechnung -> 完成电子发票。

支持的标准

标准

版本

状态

XRechnung

3.0.2

创建 + 验证

EN 16931

XRechnung 的基础

UBL 2.1

XRechnung 的 XML 语法

CII (Cross Industry Invoice)

提取(读取)

ZUGFeRD / Factur-X

2.3

提取(读取),计划支持创建

常见问题 / 故障排除

“无法解析 XML”

  • XML 是否格式良好?(所有标签是否正确闭合?)

  • 它确实是 UBL 或 CII 发票吗?(根元素必须是 <Invoice><CrossIndustryInvoice>

  • 编码是否为 UTF-8?

验证显示错误 “BR-DE-13: Buyer Reference 是必填项”

买方参考号 (BT-10) 在 XRechnung 中是必填项。对于向公共部门客户开具的发票,这是 Leitweg-ID。对于 B2B 发票,它可以是任何参考号(例如订单号)。

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

验证显示警告 “BR-DE-21: 建议提供电话号码”

这只是一个警告,不是错误。发票仍然有效。为了获得最佳兼容性,你应该提供卖方的电话号码。

有哪些税收类别?

代码

名称

描述

税率

S

标准

标准税率

19%, 7%

Z

零税率

0%(例如免增值税的欧盟内交易)

0%

E

免税

例如根据德国增值税法第 19 条的小型企业

0%

AE

反向征税

接收方纳税义务(德国增值税法第 13b 条)

0%

K

欧盟内交易

免税的欧盟内交付

0%

有哪些单位代码?

代码

名称

描述

H87

单个单位(默认)

HUR

小时

工作小时

DAY

工作日

MON

日历月

KGM

公斤

重量

MTR

长度

LTR

体积

MTK

平方米

面积

SET

套/包

组合

C62

单位(通用)

通用计量单位

服务器已启动,但 Claude 无法识别工具

  • 检查 claude_desktop_config.json 是否正确

  • 修改配置后重启 Claude Desktop

  • 检查日志:~/Library/Logs/Claude/mcp.log (macOS)

许可证

MIT — 可自由使用,包括商业用途。

作者

MaKriGitHub

Install Server
A
security – no known vulnerabilities
F
license - not found
A
quality - A tier

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/makririch/einvoice-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server