Diese Dokumentation bezieht sich immer auf die aktuellste veröffentlichte Version.
Diese Seite beschreibt, was der Server mit Zugangsdaten und Dateien macht und was du selbst absichern musst.
| Thema | Verhalten |
|---|---|
| Speicherort | Im Klartext in der Datei .env oder in den Umgebungsvariablen, die der MCP-Client dem Prozess mitgibt. Der Server setzt keine Dateirechte |
| Übertragung | Als Header X-API-Key bei jeder Anfrage |
| Ausgabe | Der Startbericht auf stderr zeigt [SET] statt des Keys. Die URL und die Standardwerte erscheinen im Klartext |
| Eingabeprüfung | Ein Key mit Zeilenumbruch wird abgelehnt, damit niemand Header einschleusen kann |
Die .env steht in der .gitignore des Projekts. Beschränke zusätzlich die Dateirechte, zum Beispiel mit chmod 600 ~/.claude/mcp-servers/osticket/.env.
https:// nutzen. http:// wird nur akzeptiert, wenn ALLOW_HTTP=true gesetzt ist. Nutze das nicht außerhalb einer lokalen Entwicklungsumgebung, weil der Key sonst unverschlüsselt läuft.OSTICKET_API_REJECT_UNAUTHORIZED genau true ist. Jeder andere Wert, auch TRUE oder 1, schaltet die Prüfung ab und lässt Angriffe auf die Verbindung zu. Der Server warnt dann beim Start.Der Key bestimmt, was Claude in osTicket tun darf. Gib ihm nur die Berechtigungen, die du brauchst.
| Ziel | Berechtigungen |
|---|---|
| Nur lesen | can_read_tickets (deckt auch Suche, Statistik und Statusliste ab) |
| Tickets erstellen | Create-Berechtigung des Keys in osTicket |
| Tickets ändern | can_update_tickets |
| Tickets löschen | can_delete_tickets. Im Plugin standardmäßig aus, aktiviere sie nur bewusst |
| Subtickets | can_manage_subtickets |
Das Tool osticket_delete_ticket löscht endgültig und kann nicht rückgängig gemacht werden. Fehlt die Berechtigung, lehnt das Plugin den Aufruf ab.
Der Endpunkt
/api/wildcard/tickets.json, den das Erstellen nutzt, prüft den API-Key im Plugin API Key Wildcard. Die ErstellungsroutePOST /api/tickets.jsondes Plugins API Endpoints prüft Key und Berechtigung dagegen nicht selbst. Der Server nutzt diese Route nicht.
Die Anhänge lädt der Server von beliebigen Pfaden, die als Parameter ankommen. Es gibt keine Liste erlaubter Verzeichnisse. Wer den Tool-Aufruf steuert, kann jede Datei, die der Prozess lesen darf und die kleiner als 10 MB ist, an ein Ticket hängen.
Das ist wichtig, wenn Claude Ticket-Inhalte liest, die jemand anders geschrieben hat: Ein Ticket kann Anweisungen enthalten, die das Modell zu einem Tool-Aufruf verleiten. Bestätige Tool-Aufrufe mit Anhängen im MCP-Client, statt sie pauschal freizugeben.
Beim Herunterladen schreibt der Server die Datei in das temporäre Verzeichnis des Betriebssystems. Der Dateiname wird bereinigt und bekommt ein zufälliges Präfix, damit nichts überschrieben wird. Die Dateien bleiben liegen, bis du sie löschst.
projectContext wird von Zeilenumbrüchen und Tabs befreit, bevor er in die Nachricht kommt.Unexpected error occurred ersetzt.401, 403, 404 und 501. Eine Nicht-JSON-Antwort wird auf 500 Zeichen gekürzt.~/.claude/mcp-servers/osticket/logs/server.log enthält Start- und Stoppmeldungen, Warnungen und die Meldungen fehlgeschlagener Wiederholungen. Der Code schreibt keine Ticket-Inhalte hinein. Sie wird beim Start rotiert, wenn sie größer als 10 MB ist.Alles, was ein Tool zurückgibt, also Tickets, Nachrichten und Absender-Adressen, landet im Kontext des Modells deines MCP-Clients. Überlege vorher, ob die Ticket-Inhalte dort verarbeitet werden dürfen.