Files
dolibarr-mcp/README_DE.md

260 lines
7.5 KiB
Markdown

# 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:
```cmd
# 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
```bash
# 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
```bash
# 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
1. **Dolibarr Admin Login**
2. **Module aktivieren**: Home → Setup → Modules → "Web Services API REST (developer)" aktivieren
3. **API Key erstellen**: Home → Setup → API/Web services → Neuen API Key generieren
4. **API URL**: Normalerweise `https://ihre-dolibarr-instanz.com/api/index.php`
### .env Datei
```env
# 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 testen
- `get_status` - Dolibarr System-Status und Version
### User Management
- `get_users` - Benutzer auflisten (mit Pagination)
- `get_user_by_id` - Benutzer nach ID abrufen
- `create_user` - Neuen Benutzer erstellen
- `update_user` - Benutzer aktualisieren
- `delete_user` - Benutzer löschen
### Customer Management
- `get_customers` - Kunden/Drittparteien auflisten
- `get_customer_by_id` - Kunde nach ID
- `create_customer` - Neuen Kunden erstellen
- `update_customer` - Kunde aktualisieren
- `delete_customer` - Kunde löschen
### Product Management
- `get_products` - Produkte auflisten
- `get_product_by_id` - Produkt nach ID
- `create_product` - Neues Produkt erstellen
- `update_product` - Produkt aktualisieren
- `delete_product` - Produkt löschen
### Invoice Management
- `get_invoices` - Rechnungen auflisten (mit Status-Filter)
- `get_invoice_by_id` - Rechnung nach ID
- `create_invoice` - Neue Rechnung mit Zeilen erstellen
- `update_invoice` - Rechnung aktualisieren
- `delete_invoice` - Rechnung löschen
### Order Management
- `get_orders` - Bestellungen auflisten
- `get_order_by_id` - Bestellung nach ID
- `create_order` - Neue Bestellung erstellen
- `update_order` - Bestellung aktualisieren
- `delete_order` - Bestellung löschen
### Contact Management
- `get_contacts` - Kontakte auflisten
- `get_contact_by_id` - Kontakt nach ID
- `create_contact` - Neuen Kontakt erstellen
- `update_contact` - Kontakt aktualisieren
- `delete_contact` - Kontakt löschen
### Advanced
- `dolibarr_raw_api` - Roher API-Aufruf an beliebige Dolibarr-Endpunkte
## 🧪 Testing
```bash
# 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
```yaml
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:
```cmd
.\setup_windows_fix.bat
```
Dieses Script:
- Verwendet `requirements-minimal.txt` ohne problematische Pakete
- Installiert Pakete einzeln bei Fehlern
- Umgeht pywin32-Berechtigungsprobleme
- Funktioniert auch ohne Admin-Rechte
### API-Verbindungsprobleme
**Symptom**: "Cannot connect to Dolibarr API"
**Checkliste**:
1. ✅ Dolibarr "Web Services API REST" Modul aktiviert?
2. ✅ API Key in Dolibarr erstellt?
3. ✅ .env Datei korrekt konfiguriert?
4. ✅ DOLIBARR_URL mit `/api/index.php` am Ende?
5. ✅ Firewall/Network-Zugang?
**Debug**:
```bash
# 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:
- [Dolibarr REST API Wiki](https://wiki.dolibarr.org/index.php?title=Module_Web_Services_API_REST_(developer))
- [API Interfaces Guide](https://wiki.dolibarr.org/index.php?title=Interfaces_Dolibarr_toward_foreign_systems)
## 🤝 Contributing
1. Fork das Repository
2. Feature Branch erstellen: `git checkout -b feature/neue-funktion`
3. Changes committen: `git commit -am 'Neue Funktion hinzufügen'`
4. Branch pushen: `git push origin feature/neue-funktion`
5. Pull Request erstellen
## 📄 License
MIT License - siehe [LICENSE](LICENSE) für Details.
## 🆘 Support
- 📧 **Issues**: [GitHub Issues](https://github.com/latinogino/dolibarr-mcp/issues)
- 📖 **Wiki**: [Project Wiki](https://github.com/latinogino/dolibarr-mcp/wiki)
- 💬 **Discussions**: [GitHub Discussions](https://github.com/latinogino/dolibarr-mcp/discussions)
---
**⚡ Ready to integrate your Dolibarr ERP with AI? Get started in 2 minutes!**