Skip to main content
Glama

wikijs-mcp

MCP-Server für den Zugriff auf Wiki.js über die GraphQL-API, erstellt mit FastMCP (Python).

Verfügbare Tools

Domain

Tool

pages

wikijs_page_list, wikijs_page_get, wikijs_page_get_by_path, wikijs_page_create, wikijs_page_update, wikijs_page_delete, wikijs_page_move, wikijs_page_render, wikijs_page_tree

search

wikijs_page_search

tags

wikijs_tag_list, wikijs_page_list_by_tags

groups

wikijs_group_list, wikijs_group_get, wikijs_group_create, wikijs_group_update, wikijs_group_delete, wikijs_group_assign_user, wikijs_group_unassign_user

users

wikijs_user_list, wikijs_user_get, wikijs_user_create, wikijs_user_update, wikijs_user_delete, wikijs_user_activate, wikijs_user_deactivate, wikijs_user_enable_tfa, wikijs_user_disable_tfa

system

wikijs_system_info

mail

wikijs_mail_update_config, wikijs_mail_send_test

storage

wikijs_storage_target_list, wikijs_storage_status, wikijs_storage_action_execute, wikijs_storage_target_update

Die Domain mail erfordert die Berechtigung manage:system. Anders als bei anderen Domains können die beiden mail-Tools nur mit einem Wiki.js-API-Schlüssel der Gruppe Administrators (Berechtigung manage:system) verwendet werden. wikijs_mail_update_config ist außerdem REPLACE-ALL — ein Aufruf überschreibt die gesamte Mail-Konfiguration der Instanz, nicht nur das genannte Feld.

Die Domain storage erfordert ebenfalls die Berechtigung manage:system. Alle vier storage-Tools können nur mit einem API-Schlüssel der Gruppe Administrators verwendet werden. Force Sync (Schaltfläche in Admin → Storage) wird mit wikijs_storage_action_execute(target_key="git", handler="sync") ausgeführt. wikijs_storage_target_list maskiert Konfigurationswerte, die Anmeldedaten sind (basicPassword, sshPrivateKeyContent) zu *** — die Originalwerte können nicht über MCP gelesen werden. Handler werden nicht aufgelistet: Verwenden Sie actions von wikijs_storage_target_list, um verfügbare Handler zu finden, und beachten Sie, dass einige davon destruktiv sind (purge löscht das lokale Git-Repository, importAll überschreibt den Wiki-Inhalt vom lokalen Repository).

wikijs_storage_target_update(target_key, is_enabled, mode, sync_interval, config) ändert die Konfiguration eines Ziels mit Partial-Update-Semantik: Argumente, die nicht gesetzt sind, bedeuten „nicht ändern", und config wird pro Schlüssel zusammengeführt. Die Wiki.js-Mutation dahinter (storage.updateTargets) ist eigentlich REPLACE-ALL, daher führt das Tool selbst read-modify-write durch, um nicht genannte Felder nicht zu löschen. config-Schlüssel, die noch nicht im Ziel vorhanden sind, werden abgelehnt (ValueError), ebenso der Wert "***" — das ist der Sentinel der Redaktion von wikijs_storage_target_list, keine echten Anmeldedaten.

Related MCP server: mcp-wikijs-mv

Konfiguration

Kopieren Sie .env.example in .env und füllen Sie die passenden Werte aus:

cp .env.example .env

Erforderliche Variablen

Variable

Beschreibung

WIKIJS_URL

Basis-URL der Wiki.js-Instanz, z. B. https://wiki.example.com

WIKIJS_API_KEY

Wiki.js-API-Schlüssel (Admin → API Access)

Verwendung

stdio (Claude Desktop / VS Code)

{
  "mcpServers": {
    "wikijs": {
      "command": "uvx",
      "args": ["--from", "git+https://github.com/andhit-r/wikijs-mcp", "wikijs-mcp"],
      "env": {
        "WIKIJS_URL": "https://wiki.example.com",
        "WIKIJS_API_KEY": "your-api-key"
      }
    }
  }
}

HTTP + API-Schlüssel (Claude Code / VS Code remote)

docker run -p 8000:8000 \
  -e WIKIJS_URL=https://wiki.example.com \
  -e WIKIJS_API_KEY=your-wikijs-api-key \
  -e MCP_API_KEY=your-mcp-api-key \
  ghcr.io/andhit-r/wikijs-mcp:latest

HTTP + Authentik OAuth (Claude Web)

Füllen Sie alle AUTHENTIK_*-Variablen und MCP_BASE_URL in .env aus, dann:

docker run -p 8000:8000 --env-file .env ghcr.io/andhit-r/wikijs-mcp:latest

Lizenz

MIT

Related MCP Connectors

Related MCP Servers