Anleitung: Claude Desktop per MCP mit Dolibarr verbinden (REST-API)

Hallo zusammen,

ich möchte meine getestete Konfiguration für die Anbindung von Claude Desktop an Dolibarr über das Model Context Protocol (MCP) mit euch teilen. Damit ist es möglich, per natürlicher Sprache auf Kunden, Angebote oder Rechnungen zuzugreifen, ohne die API manuell anzusprechen.

Die Anleitung richtet sich an macOS-Nutzer, die Grundlagen sind aber auch auf andere Systeme übertragbar. Bitte beachtet die Sicherheitshinweise am Ende – besonders die Rechtevergabe des API-Benutzers.

Getestete Umgebung:

  • Dolibarr (Installation im Unterordner /dolibarr)
  • Claude Desktop (macOS)
  • Node.js ≥ 18
  • Paket: mcp-server-dolibarr via npx

1. Voraussetzungen prüfen

Öffnet das Terminal und prüft, ob Node.js in einer kompatiblen Version installiert ist:

node -v
npx -v

Die Ausgabe muss eine Versionsnummer zeigen. Node.js muss Version 18 oder höher haben.

2. API-Erreichbarkeit testen

Bevor ihr Claude konfiguriert, testet die Dolibarr-API direkt. Ersetzt die Platzhalter durch eure Werte:

curl -s -o /dev/null -w "%{http_code}\n" \
  -H "DOLAPIKEY: DEIN_API_SCHLUESSEL" \
  "https://DEINE-DOMAIN.tld/dolibarr/api/index.php/explorer"

Erwartete Ausgabe: 200

  • 404 → Pfad stimmt nicht. Achtet darauf, ob Dolibarr im Unterordner liegt (dann /dolibarr/api/index.php).
  • 401 → API-Schlüssel ungültig oder der Benutzer hat keine Berechtigung.

3. Claude Desktop konfigurieren

Öffnet die Konfigurationsdatei:

open -e ~/Library/Application\ Support/Claude/claude_desktop_config.json

Ersetzt den mcpServers-Block (oder fügt ihn ein, falls noch keiner existiert). Wichtig: Die URL muss exakt auf /dolibarr/api/index.php enden – ohne abschließenden Schrägstrich.

"mcpServers": {
  "dolibarr": {
    "command": "npx",
    "args": [
      "-y",
      "mcp-server-dolibarr"
    ],
    "env": {
      "DOLIBARR_URL": "https://DEINE-DOMAIN.tld/dolibarr/api/index.php",
      "DOLIBARR_API_KEY": "DEIN_API_SCHLUESSEL"
    }
  }
}

Speichert die Datei (Cmd + S) und schließt den Editor.

4. Claude Desktop neu starten

Beendet Claude Desktop vollständig (Cmd + Q), wartet ein paar Sekunden und startet es neu. Falls eine alte Verbindung hängt, könnt ihr im Terminal prüfen, ob noch npx-Prozesse laufen:

ps aux | grep npx

Gefundene Prozesse mit kill <PID> beenden.

5. Verbindung prüfen

Öffnet einen neuen Chat in Claude Desktop. Unten im Eingabefeld sollte ein Stecker-Symbol (:electric_plug:) erscheinen. Klickt darauf – in der Liste sollte dolibarr mit seinen Tools auftauchen.

Testet mit einer einfachen Frage:

Liste mir die letzten 5 Kunden aus Dolibarr auf.

Wenn Claude Daten zurückgibt, die der API-Benutzer sehen darf, funktioniert die Verbindung.

Vollständige Konfiguration (Referenz)

Zur Kontrolle hier der komplette mcpServers-Block:

{
  "mcpServers": {
    "dolibarr": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-server-dolibarr"
      ],
      "env": {
        "DOLIBARR_URL": "https://DEINE-DOMAIN.tld/dolibarr/api/index.php",
        "DOLIBARR_API_KEY": "DEIN_API_SCHLUESSEL"
      }
    }
  }
}

Fehlerbehebung (kurz)

  • 404 Not Found: Prüft den Unterordner in der URL (/dolibarr/api/index.php). Testet den curl-Befehl aus Schritt 2.
  • 401 Unauthorized: API-Schlüssel falsch oder der Benutzer hat keine Modulberechtigung. In Dolibarr prüfen und ggf. neuen Schlüssel generieren.
  • Stecker-Symbol fehlt: JSON-Syntax der Config prüfen (Komma, Klammern). Claude komplett beenden und neu starten. Prüfen, ob npx im Terminal läuft.

Logs findet ihr unter:

~/Library/Logs/Claude/

Sicherheitshinweise (wichtig)

  • Separater API-Benutzer: Legt für jeden KI-Zugang einen eigenen Dolibarr-Benutzer an. Teilt keine Schlüssel zwischen Personen.
  • Minimale Rechte: Gebt dem Benutzer nur die Module, die wirklich benötigt werden (z. B. nur lesend auf Kunden/Rechnungen).
  • Schlüssel geheim halten: Postet keine echten API-Keys in Foren. Bei Verdacht auf Kompromittierung sofort in Dolibarr rotieren.

Bereitgestellt von ITSS Gerhard Peilstöcker – https://dolicare.de
Feedback und Ergänzungen willkommen.