einvoice-mcp
Servidor MCP de Factura Electrónica
Servidor MCP para facturas electrónicas en la región DACH: cree, valide y extraiga datos de XRechnung. Directamente desde Claude, Cursor o cualquier cliente MCP.
¿Qué es esto?
E-Invoice MCP es un servidor del Model Context Protocol para la creación y validación de facturas electrónicas según el estándar alemán XRechnung. A partir de 2027, todas las empresas en Alemania deberán poder enviar facturas electrónicas; con esta herramienta estarás preparado.
Simplemente dile a Claude: "Crea una factura para Beispiel GmbH por 10 horas de consultoría" y obtendrás una XRechnung válida como XML UBL 2.1.
Características
Crear XRechnung — XML UBL 2.1 válido a partir de datos estructurados (EN 16931 + XRechnung 3.0.2)
Validar factura electrónica — Comprobar sintaxis, campos obligatorios y reglas de negocio alemanas (BR-DE)
Extraer datos — Leer datos estructurados de XML UBL o CII
Información de formato — Referencia para campos obligatorios, categorías de impuestos, códigos de unidades y plazos
Cálculo automático — Los importes netos, brutos y de impuestos se calculan automáticamente
Compatible con plugins — Puede ejecutarse de forma independiente O integrarse en el servidor MCP de BuchPilot
Sin servicios externos — Todo se ejecuta localmente, no se necesitan claves API
Sin dependencias nativas — Se ejecuta en cualquier sistema con Node.js
Plazos legales
Fecha | Qué sucede |
01.01.2025 | Todas las empresas deben poder recibir facturas electrónicas |
31.12.2026 | Facturas PDF permitidas solo con el consentimiento del destinatario |
01.01.2027 | Empresas con >800.000 EUR de facturación deben enviar facturas electrónicas |
01.01.2028 | TODAS las empresas deben enviar facturas electrónicas |
Las facturas electrónicas incorrectas pueden provocar la pérdida de la deducción del IVA soportado (+ 6% de intereses).
Instalación
Requisitos previos
Node.js >= 18
npm (global)
npm install -g einvoice-mcpDesde el código fuente
git clone https://github.com/makririch/einvoice-mcp.git
cd einvoice-mcp
npm install
npm run buildConfiguración
Este servidor MCP no requiere configuración. No se necesitan claves API ni servicios externos; todo se ejecuta localmente.
Uso
Iniciar el servidor (independiente)
# Nach npm install -g:
einvoice-mcp
# Oder von Source:
npm start
# Entwicklung mit Auto-Reload:
npm run devEl servidor se ejecuta a través de stdio y espera mensajes MCP.
Uso en Claude Desktop
Consulta la Guía de configuración de Claude Desktop para obtener instrucciones detalladas.
Versión corta: añade esto a claude_desktop_config.json:
{
"mcpServers": {
"einvoice": {
"command": "npx",
"args": ["-y", "einvoice-mcp"]
}
}
}Ejemplos (lenguaje natural en Claude)
Después de configurar el servidor, puedes preguntarle a Claude, por ejemplo:
"Crea una XRechnung para Beispiel GmbH por 10 horas de consultoría a 150 EUR"
"¿Es este archivo XML una XRechnung válida?"
"Extrae los datos de la factura de este XML"
"¿Qué campos obligatorios necesito para una XRechnung?"
"¿Qué categorías de impuestos existen y qué significan?"
"¿Hasta cuándo debe mi empresa poder enviar facturas electrónicas?"
Inicio rápido
Encontrarás una guía paso a paso "Crea tu primera XRechnung en 5 minutos" en docs/quickstart.md.
Referencia de herramientas
Encontrarás una referencia completa de las 4 herramientas con parámetros, entradas de ejemplo y salidas de ejemplo en docs/tool-reference.md.
Resumen rápido
Herramienta | Descripción |
| Crear XRechnung (UBL 2.1 XML) a partir de datos estructurados |
| Validar XML de factura electrónica (sintaxis + reglas de negocio BR-DE) |
| Extraer datos estructurados de XML UBL o CII |
| Referencia para formatos, campos obligatorios, códigos y plazos |
Integración con BuchPilot
E-Invoice MCP puede integrarse como plugin en el servidor MCP de BuchPilot:
import { registerEInvoiceTools } from "einvoice-mcp";
registerEInvoiceTools(server);Combinación: BuchPilot crea una factura en Lexoffice -> extraer datos -> generar XRechnung -> factura electrónica lista.
Estándares compatibles
Estándar | Versión | Estado |
XRechnung | 3.0.2 | Crear + Validar |
EN 16931 | — | Base para XRechnung |
UBL 2.1 | — | Sintaxis XML para XRechnung |
CII (Cross Industry Invoice) | — | Extraer (leer) |
ZUGFeRD / Factur-X | 2.3 | Extraer (leer), creación planificada |
FAQ / Solución de problemas
"No se pudo analizar el XML"
¿El XML está bien formado? (¿Están todas las etiquetas cerradas correctamente?)
¿Es realmente una factura UBL o CII? (El elemento raíz debe ser
<Invoice>o<CrossIndustryInvoice>)¿La codificación es UTF-8?
La validación muestra el error "BR-DE-13: Buyer Reference es obligatorio"
La referencia del comprador (BT-10) es obligatoria en XRechnung. En facturas a organismos públicos, este es el Leitweg-ID. En facturas B2B, puede ser cualquier referencia (por ejemplo, número de pedido).
{
"buyerReference": "04011000-12345-67"
}La validación muestra la advertencia "BR-DE-21: Se recomienda el número de teléfono"
Esto es solo una advertencia, no un error. La factura sigue siendo válida. Para una mejor compatibilidad, deberías indicar un número de teléfono del vendedor.
¿Qué categorías de impuestos existen?
Código | Nombre | Descripción | Tipos impositivos |
S | Estándar | Tipo impositivo normal | 19%, 7% |
Z | Tasa cero | 0% (p. ej. intracomunitario con exención de IVA) | 0% |
E | Exento de impuestos | p. ej. pequeña empresa según el párrafo 19 UStG | 0% |
AE | Inversión del sujeto pasivo | Sujeto pasivo el destinatario (párrafo 13b UStG) | 0% |
K | Intracomunitario | Entrega intracomunitaria exenta de impuestos | 0% |
¿Qué códigos de unidades existen?
Código | Nombre | Descripción |
H87 | Pieza | Unidad individual (predeterminado) |
HUR | Hora | Hora de trabajo |
DAY | Día | Día laborable |
MON | Mes | Mes natural |
KGM | Kilogramo | Peso |
MTR | Metro | Longitud |
LTR | Litro | Volumen |
MTK | Metro cuadrado | Superficie |
SET | Set/Paquete | Conjunto |
C62 | Unidad (genérica) | Unidad de medida general |
El servidor se inicia, pero Claude no reconoce las herramientas
Comprueba si el archivo
claude_desktop_config.jsones correctoReinicia Claude Desktop después de realizar cambios en la configuración
Comprueba los registros:
~/Library/Logs/Claude/mcp.log(macOS)
Licencia
MIT — Uso libre, también comercial.
Autor
MaKri — GitHub
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