Skip to main content
Glama
makririch

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.

npm version License: MIT

¿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-mcp

Desde el código fuente

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

Configuració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 dev

El 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

create_xrechnung

Crear XRechnung (UBL 2.1 XML) a partir de datos estructurados

validate_invoice

Validar XML de factura electrónica (sintaxis + reglas de negocio BR-DE)

extract_data

Extraer datos estructurados de XML UBL o CII

get_format_info

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.json es correcto

  • Reinicia 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

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