Zammad MCP Server — Konfiguration
Umgebungsvariablen und Zugriffskontrolle für den Zammad MCP Server.
Konfiguration
Pflichtfelder
| Variable | Beschreibung |
|---|---|
ZAMMAD_URL | Basis-URL der Zammad-Instanz |
ZAMMAD_HTTP_TOKEN | API-Token aus dem Zammad-Profil — Schnellstart mit Screenshots |
Token einmal unter Profil → Token Access anlegen, ticket.agent aktivieren, Secret in Claude/Cursor MCP-Konfig einfügen.
Zugriffskontrolle
MCP_ALLOWED_CATEGORIES=all
MCP_DENIED_TOOLS=delete_ticket,delete_user,delete_organization
MCP_ALLOWED_GROUPS=Support,Vertrieb
MCP_ALLOWED_ORGANIZATIONS=1,2
MCP_DEFAULT_PERMISSION=read_only
MCP_RATE_LIMIT_PER_MINUTE=60
# Optionales Audit-Log (stderr-JSON immer aktiv)
MCP_AUDIT_LOG_PATH=/var/log/zammad-mcp-audit.jsonl
Transport (Remote-MCP)
Wenn der Server nicht von Claude/Cursor gestartet wird (Docker, Zammad Commander):
| Variable / Flag | Default | Beschreibung |
|---|---|---|
--transport | stdio | stdio, http oder sse |
MCP_TRANSPORT | — | Wie --transport |
MCP_SERVER_HOST | 127.0.0.1 | Bind-Adresse (0.0.0.0 in Docker) |
MCP_SERVER_PORT | 8000 | HTTP/SSE-Port |
MCP_SERVER_PATH | /mcp/ | HTTP-Pfad (/sse/ für SSE) |
Docker-CMD: zammad-mcp-server --transport http --host 0.0.0.0 --port 8000.
Artikel-Formatierung
| Variable | Default | Beschreibung |
|---|---|---|
MCP_STRIP_HTML | 1 | body_plain in Tool-Antworten für Artikel |
| Stufe | Bedeutung |
|---|---|
DENIED | Tool nicht verfügbar |
READ_ONLY | Nur Lesen |
WRITE | Anlegen und Ändern |
ADMIN | Inkl. Löschen |
Produktions-Rezepte
Read-only Triage:
MCP_ALLOWED_CATEGORIES=tickets,search,system
MCP_DENIED_TOOLS=create_ticket,update_ticket,delete_ticket,create_article,delete_user,delete_organization
Support Lead (keine Deletes):
MCP_ALLOWED_CATEGORIES=all
MCP_DENIED_TOOLS=delete_ticket,delete_user,delete_organization
MCP_ALLOWED_GROUPS=Support
Mit get_allowed_tools prüfen, welche Tools der Client sieht.
Details zur Architektur: ARCHITECTURE.md auf GitHub.
