BuchPilot MCP – sevDesk & Lexoffice for n8n/AI

Created By
makririch2 months ago
MCP server for DACH accounting automation. Connect AI assistants to sevDesk and Lexoffice — create invoices, manage contacts, handle bookings and vouchers. Designed for German-speaking businesses using cloud accounting software.
Overview

BuchPilot MCP Server

MCP Server fuer DACH-Buchhaltung — Kontakte, Rechnungen, Belege und Angebote direkt aus Claude, Cursor oder jedem MCP-kompatiblen Client verwalten.

npm version License: MIT

Was ist das?

BuchPilot MCP ist ein Model Context Protocol Server, der dein Buchhaltungssystem (aktuell Lexoffice) mit KI-Assistenten verbindet. Du kannst per natuerlicher Sprache Rechnungen erstellen, Kontakte verwalten und ueberfaellige Zahlungen pruefen — direkt in Claude Desktop, Cursor oder jedem anderen MCP-Client.

Features

  • 15 Tools fuer vollstaendige Buchhaltungs-Automatisierung
  • Kontakte erstellen, abrufen, auflisten, aktualisieren
  • Rechnungen erstellen, abrufen, auflisten, aktualisieren, PDF herunterladen
  • Belege erstellen, abrufen, auflisten (Eingangsrechnungen, Gutschriften)
  • Angebote erstellen, abrufen
  • Ueberfaellige Rechnungen mit Betraegen und Tagen ueberfaellig
  • Backend-Architektur — aktuell Lexoffice, erweiterbar fuer sevDesk, Billomat etc.
  • Plugin-faehig — kann E-Invoice MCP Tools integrieren (einvoice-mcp)
  • Keine Datenbank, kein State — reiner API-Proxy

Installation

Voraussetzungen

  • Node.js >= 18
  • Ein Lexoffice-Account mit API-Key

npm (global)

npm install -g buchpilot-mcp

Von Source

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

Konfiguration

Erstelle eine Konfigurationsdatei .buchpilot.json an einem der folgenden Orte:

  1. Pfad aus Umgebungsvariable BUCHPILOT_CONFIG
  2. ~/.buchpilot.json (Home-Verzeichnis)
  3. ./.buchpilot.json (aktuelles Verzeichnis)

Inhalt der .buchpilot.json

{
  "backends": {
    "lexoffice": {
      "api_key": "DEIN_LEXOFFICE_API_KEY"
    }
  },
  "default_backend": "lexoffice"
}

Lexoffice API-Key erstellen

  1. Gehe zu Lexoffice Public API
  2. Klicke auf API-Key erstellen
  3. Kopiere den Key und fuege ihn in .buchpilot.json ein

Sicherheitshinweis: Speichere den API-Key nie in Git. Fuege .buchpilot.json zu deiner .gitignore hinzu.

Nutzung

Server starten (standalone)

# Nach npm install -g:
buchpilot-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:

{
  "mcpServers": {
    "buchpilot": {
      "command": "npx",
      "args": ["-y", "buchpilot-mcp"],
      "env": {
        "BUCHPILOT_CONFIG": "/Users/DEIN_NAME/.buchpilot.json"
      }
    }
  }
}

Beispiele (natuerliche Sprache in Claude)

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

  • "Erstelle einen Kontakt fuer die Firma Beispiel GmbH mit der E-Mail info@beispiel.de"
  • "Zeige mir alle offenen Rechnungen"
  • "Erstelle eine Rechnung an Kontakt XYZ: 10 Stunden Beratung zu je 150 EUR"
  • "Welche Rechnungen sind ueberfaellig?"
  • "Lade die PDF von Rechnung ABC herunter"
  • "Erstelle ein Angebot fuer 5 Lizenzen a 49 EUR/Monat"

Tool-Referenz

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

Kurzuebersicht

ToolBeschreibung
create_contactNeuen Kontakt anlegen (Person oder Firma)
get_contactKontakt per ID abrufen
list_contactsKontakte auflisten mit Filtern
update_contactKontakt aktualisieren
create_invoiceNeue Rechnung mit Positionen erstellen
get_invoiceRechnung per ID abrufen
list_invoicesRechnungen auflisten (nach Status filterbar)
get_invoice_pdfRechnung als PDF herunterladen (Base64)
update_invoiceEntwurfs-Rechnung aktualisieren
create_voucherNeuen Beleg anlegen
get_voucherBeleg per ID abrufen
list_vouchersBelege auflisten
create_quotationNeues Angebot mit Positionen erstellen
get_quotationAngebot per ID abrufen
get_overdue_invoicesUeberfaellige Rechnungen mit Analyse

E-Invoice Integration

BuchPilot MCP kann optional das E-Invoice MCP Paket integrieren, um XRechnung und ZUGFeRD direkt aus dem Buchhaltungssystem zu erzeugen:

// In deinem eigenen MCP-Server:
import { registerEInvoiceTools } from "einvoice-mcp";
registerEInvoiceTools(server);
// Ergebnis: 15 + 4 = 19 Tools

FAQ / Troubleshooting

"No .buchpilot.json found"

Der Server findet keine Konfigurationsdatei. Erstelle eine .buchpilot.json in deinem Home-Verzeichnis:

echo '{"backends":{"lexoffice":{"api_key":"DEIN_KEY"}},"default_backend":"lexoffice"}' > ~/.buchpilot.json

"401 Unauthorized" bei Lexoffice

  • Ist der API-Key korrekt in .dachflow.json?
  • Ist der Key noch aktiv? Pruefe unter Lexoffice Public API
  • API-Keys koennen ablaufen — erstelle ggf. einen neuen

"429 Too Many Requests"

Lexoffice erlaubt max. 2 Requests pro Sekunde. Wenn du viele Operationen hintereinander ausfuehrst, warte kurz zwischen den Anfragen.

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)

Rechnung kann nicht aktualisiert werden

Nur Rechnungen im Status draft (Entwurf) koennen aktualisiert werden. Finalisierte Rechnungen sind unveraenderlich.

Backend "sevDesk" nicht verfuegbar

Aktuell wird nur Lexoffice als Backend unterstuetzt. sevDesk-Unterstuetzung ist geplant. Du kannst die n8n-Nodes (n8n-nodes-buchpilot) fuer sevDesk verwenden.

Lizenz

MIT — Frei nutzbar, auch kommerziell.

Autor

MaKriGitHub

Server Config

{
  "mcpServers": {
    "buchpilot": {
      "command": "npx",
      "args": [
        "buchpilot-mcp"
      ]
    }
  }
}
Project Info
Created At
2 months ago
Updated At
a month ago
Author Name
makririch
Star
-
Language
-
License
-
Category

Recommend Servers

View All
Bring your real authenticated browser session to AI coding agents. Local-first MCP server + Chrome MV3 extension. No cloud. No telemetry.
@Cubenest

peek records the user's actual logged-in browser (DOM via rrweb, console events, network metadata, optional response bodies via opt-in Deep capture) through a Chrome MV3 extension. The extension ships events through a native-messaging stdio bridge to a local MCP server (peek-mcp), which persists them to a SQLite database at ~/.peek/sessions.db. AI coding agents (Claude Code, Cursor, Cline, Windsurf) read sessions from the database via 10 MCP tools: Tool What it does list_recent_sessions List recently recorded sessions (id, origin, ts, event count). get_session_summary LLM-readable narrative summary of a session. get_session_console_errors Console errors recorded in a session. get_session_network_errors Failed/notable network requests in a session. get_user_action_before_error Last N user actions before a console error. generate_playwright_repro Generate a runnable Playwright test from a session. get_dom_snapshot Reconstruct the DOM at a given timestamp. query_dom_history Timeline of attribute/text changes for a selector. request_authorization Side-panel consent for write actions (Level 3). execute_action Dispatch a UI action (gated by permission level + destructive blocklist). Why local-first matters Every other "browser session for AI" tool ships to a vendor cloud. peek's SQLite + extension live on the user's machine — no remote endpoints, no telemetry. The privacy policy (docs/peek/PRIVACY_POLICY.md) is the source of truth. Install # 1. Add the MCP server to Claude Code claude mcp add peek -- npx -y @peekdev/mcp # 2. Install the Chrome extension from the Chrome Web Store # (link added once the CWS listing is approved)

a day ago