einvoice-mcp
MCP-сервер для электронных счетов (E-Invoice)
MCP-сервер для электронных счетов в регионе DACH — создание, проверка и извлечение данных XRechnung. Напрямую из Claude, Cursor или любого MCP-клиента.
Что это такое?
E-Invoice MCP — это сервер Model Context Protocol для создания и проверки электронных счетов в соответствии с немецким стандартом XRechnung. Начиная с 2027 года все компании в Германии должны уметь отправлять электронные счета — с этим инструментом вы будете готовы.
Вы просто говорите Claude: «Создай счет для Beispiel GmbH на 10 часов консультаций» — и получаете валидный XRechnung в формате UBL 2.1 XML.
Функции
Создание XRechnung — валидный UBL 2.1 XML из структурированных данных (EN 16931 + XRechnung 3.0.2)
Проверка электронных счетов — проверка синтаксиса, обязательных полей и немецких бизнес-правил (BR-DE)
Извлечение данных — чтение структурированных данных из UBL- или CII-XML
Информация о форматах — справочник обязательных полей, налоговых категорий, кодов единиц измерения и сроков
Автоматический расчет — нетто, брутто и суммы налогов рассчитываются автоматически
Поддержка плагинов — может работать автономно ИЛИ быть интегрирован в MCP-сервер BuchPilot
Никаких внешних сервисов — все работает локально, API-ключи не нужны
Никаких нативных зависимостей — работает на любой системе с Node.js
Законодательные сроки
Дата | Что происходит |
01.01.2025 | Все компании должны уметь принимать электронные счета |
31.12.2026 | PDF-счета разрешены только с согласия получателя |
01.01.2027 | Компании с оборотом >800 000 евро должны отправлять электронные счета |
01.01.2028 | ВСЕ компании должны отправлять электронные счета |
Ошибочные электронные счета могут привести к потере права на вычет НДС (+ 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 для получения подробных инструкций.
Краткая версия — добавьте в claude_desktop_config.json:
{
"mcpServers": {
"einvoice": {
"command": "npx",
"args": ["-y", "einvoice-mcp"]
}
}
}Примеры (естественный язык в Claude)
После настройки сервера вы можете спросить Claude, например:
«Создай XRechnung для Beispiel GmbH на 10 часов консультаций по 150 евро»
«Является ли этот XML-файл валидным XRechnung?»
«Извлеки данные счета из этого XML»
«Какие обязательные поля нужны для XRechnung?»
«Какие существуют налоговые категории и что они означают?»
«До какого срока моя компания должна уметь отправлять электронные счета?»
Быстрый старт
Пошаговое руководство «Создай свой первый XRechnung за 5 минут» можно найти в docs/quickstart.md.
Справочник инструментов
Полный справочник всех 4 инструментов с параметрами, примерами входных и выходных данных можно найти в docs/tool-reference.md.
Краткий обзор
Инструмент | Описание |
| Создание XRechnung (UBL 2.1 XML) из структурированных данных |
| Проверка XML электронного счета (синтаксис + бизнес-правила BR-DE) |
| Извлечение структурированных данных из UBL- или CII-XML |
| Справочник форматов, обязательных полей, кодов и сроков |
Интеграция с BuchPilot
E-Invoice MCP может быть интегрирован как плагин в MCP-сервер BuchPilot:
import { registerEInvoiceTools } from "einvoice-mcp";
registerEInvoiceTools(server);Комбинация: BuchPilot создает счет в Lexoffice -> извлечение данных -> создание XRechnung -> готовый электронный счет.
Поддерживаемые стандарты
Стандарт | Версия | Статус |
XRechnung | 3.0.2 | Создание + проверка |
EN 16931 | — | Основа для XRechnung |
UBL 2.1 | — | XML-синтаксис для XRechnung |
CII (Cross Industry Invoice) | — | Извлечение (чтение) |
ZUGFeRD / Factur-X | 2.3 | Извлечение (чтение), создание в планах |
FAQ / Устранение неполадок
«XML не удалось распарсить»
Является ли XML корректным (well-formed)? (Все ли теги правильно закрыты?)
Действительно ли это счет 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 UStG | 0% |
AE | Обратное начисление | Налоговое обязательство получателя (§ 13b UStG) | 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 — свободно для использования, в том числе в коммерческих целях.
Автор
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