mirror of
https://github.com/latinogino/dolibarr-mcp.git
synced 2026-04-12 05:45:35 +02:00
7.5 KiB
7.5 KiB
Dolibarr MCP Server 🚀
Ein professioneller Model Context Protocol (MCP) Server für Dolibarr ERP-Integration. Ermöglicht LLMs vollständige CRUD-Operationen für alle Dolibarr-Module über eine standardisierte API.
✨ Features
🔧 Vollständige CRUD-Unterstützung für alle Dolibarr-Module:
- 👥 User Management - Benutzer verwalten, erstellen, aktualisieren, löschen
- 🏢 Customer/Third Party Management - Kunden und Drittparteien vollständig verwalten
- 📦 Product Management - Produkte mit Preisen, Lager und Details
- 🧾 Invoice Management - Rechnungen mit Zeilen, Steuer und Status
- 📋 Order Management - Bestellungen und Aufträge verfolgen
- 📞 Contact Management - Kontakte und Ansprechpartner
- 🔌 Raw API Access - Direkter Zugriff auf beliebige Dolibarr-Endpunkte
🛠️ Technische Features:
- ✅ Professionelle Fehlerbehandlung mit detaillierten API-Error-Messages
- ✅ Async/await Architektur für optimale Performance
- ✅ Pydantic Validation für Typ-Sicherheit und Datenvalidierung
- ✅ Umfassendes Logging mit konfigurierbaren Log-Levels
- ✅ Docker Support mit Multi-Stage Builds
- ✅ Windows + Linux Support mit platform-spezifischen Setup-Scripts
- ✅ Automatische API-Key Validation und Connection Testing
- ✅ MCP 1.0 Compliant - kompatibel mit Claude, anderen LLMs
🚀 Quick Start
Windows Setup (Empfohlen für Setup-Probleme)
Wenn Sie Probleme mit dem regulären Setup haben (besonders pywin32 Fehler), nutzen Sie das verbesserte Setup:
# 1. Repository klonen
git clone https://github.com/latinogino/dolibarr-mcp.git
cd dolibarr-mcp
# 2. Verbessertes Windows Setup (umgeht pywin32 Probleme)
.\setup_windows_fix.bat
# 3. .env Datei konfigurieren
copy .env.example .env
# Bearbeiten Sie .env mit Ihren Dolibarr-Credentials
# 4. Server starten
.\start_server.bat
Linux/macOS Setup
# 1. Repository klonen
git clone https://github.com/latinogino/dolibarr-mcp.git
cd dolibarr-mcp
# 2. Setup ausführen
chmod +x setup.sh
./setup.sh
# 3. .env konfigurieren
cp .env.example .env
# .env mit Ihren Dolibarr-Details bearbeiten
# 4. Server starten
python -m src.dolibarr_mcp
Docker Setup
# Mit docker-compose (empfohlen)
cp .env.example .env
# .env konfigurieren, dann:
docker-compose up -d
# Oder direkt mit Docker
docker build -t dolibarr-mcp .
docker run -d --env-file .env -p 8080:8080 dolibarr-mcp
⚙️ Konfiguration
Dolibarr API Setup
- Dolibarr Admin Login
- Module aktivieren: Home → Setup → Modules → "Web Services API REST (developer)" aktivieren
- API Key erstellen: Home → Setup → API/Web services → Neuen API Key generieren
- API URL: Normalerweise
https://ihre-dolibarr-instanz.com/api/index.php
.env Datei
# Dolibarr API Configuration
DOLIBARR_URL=https://ihre-dolibarr-instanz.com/api/index.php
DOLIBARR_API_KEY=ihr_dolibarr_api_schluessel
# Logging Configuration
LOG_LEVEL=INFO
📋 Verfügbare Tools
Der Server stellt folgende MCP-Tools zur Verfügung:
System & Status
test_connection- API-Verbindung testenget_status- Dolibarr System-Status und Version
User Management
get_users- Benutzer auflisten (mit Pagination)get_user_by_id- Benutzer nach ID abrufencreate_user- Neuen Benutzer erstellenupdate_user- Benutzer aktualisierendelete_user- Benutzer löschen
Customer Management
get_customers- Kunden/Drittparteien auflistenget_customer_by_id- Kunde nach IDcreate_customer- Neuen Kunden erstellenupdate_customer- Kunde aktualisierendelete_customer- Kunde löschen
Product Management
get_products- Produkte auflistenget_product_by_id- Produkt nach IDcreate_product- Neues Produkt erstellenupdate_product- Produkt aktualisierendelete_product- Produkt löschen
Invoice Management
get_invoices- Rechnungen auflisten (mit Status-Filter)get_invoice_by_id- Rechnung nach IDcreate_invoice- Neue Rechnung mit Zeilen erstellenupdate_invoice- Rechnung aktualisierendelete_invoice- Rechnung löschen
Order Management
get_orders- Bestellungen auflistenget_order_by_id- Bestellung nach IDcreate_order- Neue Bestellung erstellenupdate_order- Bestellung aktualisierendelete_order- Bestellung löschen
Contact Management
get_contacts- Kontakte auflistenget_contact_by_id- Kontakt nach IDcreate_contact- Neuen Kontakt erstellenupdate_contact- Kontakt aktualisierendelete_contact- Kontakt löschen
Advanced
dolibarr_raw_api- Roher API-Aufruf an beliebige Dolibarr-Endpunkte
🧪 Testing
# API-Verbindung testen
python test_connection.py
# Umfassende Tests
python test_dolibarr_mcp.py
# Mit Docker
docker-compose --profile test up dolibarr-mcp-test
🐳 Docker Production Deployment
version: '3.8'
services:
dolibarr-mcp:
image: dolibarr-mcp:latest
environment:
- DOLIBARR_URL=https://ihre-dolibarr-instanz.com/api/index.php
- DOLIBARR_API_KEY=ihr_api_schluessel
- LOG_LEVEL=INFO
ports:
- "8080:8080"
restart: unless-stopped
healthcheck:
test: ["CMD", "python", "-c", "from src.dolibarr_mcp.config import Config; Config()"]
interval: 30s
timeout: 10s
retries: 3
🔧 Troubleshooting
Windows Setup Probleme
Problem: [WinError 5] Zugriff verweigert beim Installieren von pywin32
Lösung: Nutzen Sie das verbesserte Setup-Script:
.\setup_windows_fix.bat
Dieses Script:
- Verwendet
requirements-minimal.txtohne problematische Pakete - Installiert Pakete einzeln bei Fehlern
- Umgeht pywin32-Berechtigungsprobleme
- Funktioniert auch ohne Admin-Rechte
API-Verbindungsprobleme
Symptom: "Cannot connect to Dolibarr API"
Checkliste:
- ✅ Dolibarr "Web Services API REST" Modul aktiviert?
- ✅ API Key in Dolibarr erstellt?
- ✅ .env Datei korrekt konfiguriert?
- ✅ DOLIBARR_URL mit
/api/index.phpam Ende? - ✅ Firewall/Network-Zugang?
Debug:
# Verbindung direkt testen
python test_connection.py
# Detaillierte Logs
LOG_LEVEL=DEBUG python -m src.dolibarr_mcp
Häufige API-Endpunkt Probleme
| Endpunkt | Häufige Probleme | Lösung |
|---|---|---|
/users |
403 Forbidden | Admin API Key erforderlich |
/products |
Leere Liste | Produkte in Dolibarr erstellen |
/thirdparties |
500 Error | Customer/Supplier Module aktivieren |
/invoices |
Permission denied | Invoice Module + Rechte prüfen |
📚 API Dokumentation
Vollständige Dolibarr REST API Dokumentation:
🤝 Contributing
- Fork das Repository
- Feature Branch erstellen:
git checkout -b feature/neue-funktion - Changes committen:
git commit -am 'Neue Funktion hinzufügen' - Branch pushen:
git push origin feature/neue-funktion - Pull Request erstellen
📄 License
MIT License - siehe LICENSE für Details.
🆘 Support
- 📧 Issues: GitHub Issues
- 📖 Wiki: Project Wiki
- 💬 Discussions: GitHub Discussions
⚡ Ready to integrate your Dolibarr ERP with AI? Get started in 2 minutes!