dorfteich/docs/de/manual/mcp-guide.md
Claude Fable 5 14711a18c2
All checks were successful
CD / Build and push images (push) Successful in 1m9s
CD / Deploy to Test (push) Successful in 10s
CD / Smoke tests against Test (push) Successful in 1m12s
CD / Promote to Int (push) Successful in 10s
CI / Lint, typecheck, test (push) Successful in 4m18s
CI / Build container images (push) Has been skipped
CI / Auth e2e pack (push) Successful in 5m59s
CI / Import/export fidelity gate (push) Successful in 47s
QA: page-tree and graph e2e packs in CI, manuals updated (#114)
Two new CI-wired Playwright packs, each in its own shared pond so the
fixture ponds stay untouched:

- page-tree.spec.ts — create-as-child with the form hint, collapsible
  folder view (collapse state survives reload), label view grouping,
  the local view override vs the owner-set pond default (fresh context
  without localStorage sees the new default), the Move-to dialog with
  the own subtree disabled, promote vs subtree delete, and a restored
  orphan re-attaching at the root.
- graph.spec.ts — pond graph nodes/edges/legend, node click-through,
  the phantom-create flow (dashed node turns solid), the local panel
  with hop toggle and highlight ring, and the permission slice: a
  label-denied reader sees neither the hidden node nor its edge.

Both packs 3× flake-free locally. Manuals: user guide (page tree,
moving/deleting with subpages, knowledge graph + local graph), pond
admin guide (sidebar view default), features.md (knowledge graph
bullet) — with the docs/de mirrors updated (English authoritative).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-14 11:10:14 +02:00

4.6 KiB

MCP-Handbuch — deine KI mit Dorfteich verbinden

Englisches Original: docs/manual/mcp-guide.md

Dorfteich bringt seinen eigenen MCP- Endpoint unter /api/mcp mit (Streamable HTTP). Jeder MCP-fähige Assistent — Claude Code, Claude Desktop über eine Bridge und andere — kann dein Wiki durchsuchen, lesen und (wenn du es erlaubst) beschreiben, mit exakt deinen Berechtigungen. Es läuft kein zusätzlicher Server: Der Endpoint ist Teil der Instanz.

Einschalten

Wie die REST-API ist MCP standardmäßig aus und hat eigene, unabhängige Schalter:

  1. Site-Admin: Admin → Einstellungen → Öffentliche API → „Eingebauten MCP-Endpoint aktivieren".
  2. Jeder Teich, den der Assistent sehen soll: Teich-Einstellungen → „Diesen Teich für KI-Assistenten freigeben (MCP)".

Ein Teich ohne Freigabe ist für MCP-Clients unsichtbar — selbst für dein eigenes Token.

Ein Token besorgen

MCP nutzt dieselben persönlichen API-Tokens wie die REST-API: Lege eins unter Einstellungen → API-Tokens an. Wähle den Scope bewusst:

  • read — der Assistent kann auflisten, lesen und suchen, sonst nichts.
  • read+write — er darf zusätzlich Seiten anlegen/ändern, kommentieren und Labels setzen.

Erwäge, das Token auf genau die Teiche zu beschränken, in denen der Assistent arbeiten soll.

Claude Code verbinden

claude mcp add --transport http dorfteich https://wiki.example.com/api/mcp \
  --header "Authorization: Bearer dt_pat_..."

Das war's — Claude Code listet die Tools beim nächsten Start. Reine Stdio-Clients überbrücken mit mcp-remote:

{
  "mcpServers": {
    "dorfteich": {
      "command": "npx",
      "args": [
        "mcp-remote",
        "https://wiki.example.com/api/mcp",
        "--header",
        "Authorization: Bearer dt_pat_..."
      ]
    }
  }
}

Was der Assistent kann

Tool Tut
list_ponds die Teiche, die dieses Token erreicht
list_pages(pond) Seiten mit Slug, Titel, Parent, Labels
read_page(pond, page) eine Seite als Markdown plus Metadaten
search(query, pond?, label?) Volltextsuche mit Snippets
create_page(pond, title, markdown, parent?) neue Seite aus Markdown (write)
update_page(pond, page, markdown?, title?, parent?) umbenennen, Inhalt ersetzen, verschieben (write)
add_comment(pond, page, text) eine Seite kommentieren (write)
list_labels(pond) der Label-Baum des Teichs
set_page_labels(pond, page, labelIds) die Labels einer Seite ersetzen (write)
export_pond(pond) ein Download-Link für den Markdown-ZIP-Export

Inhalts-Updates nehmen denselben kollaborativen Weg wie menschliche Bearbeitungen: Offene Editoren konvergieren live, und der vorherige Stand bleibt im Versionsverlauf — eine KI-Änderung lässt sich immer wie jede andere Änderung prüfen und zurücknehmen.

Gut zu wissen

  • Die Berechtigungen sind deine. Der Assistent sieht genau die Seiten, die dein Konto lesen darf; Label-Regeln, öffentlich/privat — alles gilt unverändert.
  • Jeder Schreibzugriff wird audit-geloggt, dem Token zugeordnet — im Audit-Log des Site-Admins steht, was der Assistent geändert hat.
  • Rate-limitiert pro Token; ein außer Kontrolle geratener Agent bekommt 429, keine geschmolzene Instanz.
  • Zustandslos: Jede Anfrage steht für sich; das Widerrufen des Tokens unter Einstellungen → API-Tokens schneidet den Assistenten sofort ab.
  • Der Endpoint spricht MCP über Streamable HTTP (POST). GET/SSE- Session-Resumption wird nicht angeboten — Clients fallen auf reines Request/Response zurück, was jeder aktuelle Client unterstützt.

Eine sinnvolle erste Sitzung

Bitte deinen Assistenten um list_ponds, dann search nach etwas, von dem du weißt, dass es da ist, read_page darauf — und mit einem Write-Token: eine neue Seite entwerfen. Sieh dir danach den Versionsverlauf der Seite an: Du findest die Änderung des Assistenten als normale, wiederherstellbare Version.