Wiki.js MCP Server: Sicherheit
Sicherheit beim Wiki.js MCP Server: Umgang mit dem API-Token, was geloggt wird, welche Rechte der Server hat, destruktive Tools und Empfehlungen.
Sicherheit
Der API-Token
- Der Token steht in der
.env-Datei oder in der Umgebung des Prozesses. Das Repository schließt.env-Dateien über.gitignoreaus, die.env.exampleenthält nur einen Platzhalter. - Der Server sendet den Token ausschließlich als
Authorization: Bearer ...-Header an die konfigurierteWIKIJS_API_URL. Es gibt keine anderen Netzwerkziele, keine Telemetrie und keine Analyse-Aufrufe. - Der Server schreibt den Token nirgends in Logs oder in Tool-Antworten.
- Der Token hat die Rechte, die du dem API-Key in Wiki.js gegeben hast. Der Server schränkt diese Rechte nicht weiter ein.
- Der Server erzwingt kein HTTPS. Verwende eine
https://-URL, damit der Token nicht im Klartext übertragen wird.
Lege die
.envmit eingeschränkten Dateirechten ab (nur dein Benutzer darf lesen) und gib den Token nicht in Chats, Tickets oder Commits weiter. Wurde er offengelegt, widerrufe den Key in der Wiki.js-Administration und erzeuge einen neuen.
Was geloggt wird
Der Server schreibt ausschließlich auf stderr, damit der stdio-Kanal des MCP-Protokolls sauber bleibt:
- beim Start eine Statuszeile und der Hostname der Wiki.js-URL (nicht die vollständige URL, nicht der Token)
- bei jedem Tool-Fehler
[<tool>] Error: <Meldung> - bei GraphQL-Fehlern zusätzlich die vollständige Fehlerliste, wie Wiki.js sie geliefert hat
- Meldungen zum Beenden (SIGINT, SIGTERM, unbehandelte Fehler)
Seiteninhalte und Suchbegriffe werden nicht geloggt. Prüfe dennoch, wo dein MCP-Client die stderr-Ausgabe von Servern ablegt.
Datenfluss
Alles, was ein Tool zurückgibt (Seiteninhalte, Titel, Beschreibungen, Tags), geht an deinen MCP-Client und damit an das Modell, das du verwendest. Schreibende Tools senden die Inhalte, die das Modell erzeugt, an dein Wiki. Private Seiten sind für den Server nicht gesondert geschützt: was der API-Key lesen darf, kann das Modell lesen.
Destruktive Operationen
wikijs_delete_pagelöscht endgültig. Der Server fragt nicht nach; er markiert das Tool lediglich mitdestructiveHint: true, damit ein Client eine Bestätigung verlangen kann.wikijs_update_pageüberschreibt den gesamten Seiteninhalt und ersetzt Tags vollständig.wikijs_move_pageändert URLs, auf die andere Seiten oder externe Verweise zeigen können.
Empfehlungen
- Lege einen eigenen API-Key für den Server an, mit möglichst wenigen Rechten. Brauchst du nur Lesezugriff, vergib keine Schreibrechte.
- Aktiviere in deinem MCP-Client die Bestätigung für schreibende und löschende Tools.
- Sichere dein Wiki regelmäßig, bevor du Massenänderungen durch ein Modell zulässt.
- Rotiere den Key, wenn Rechner, Backups oder Konfigurationsdateien mit dem Token weitergegeben wurden.