Technische Dokumentation

Neun Tools, ein Endpoint, keine Zusatzdienste. Ein MCP-Server, der direkt mit der MemoMeister-API spricht, Logbücher sicher fortschreibt, Fotos an die KI liefert und PDF-Formulare selbst liest.

Tools

9 Tools

Bewusst schlank: create_text_memo und create_folder legen Inhalte an; update_text_memo und update_document_metadata schreiben erst im bestätigten apply-Schritt.

ToolZweckWichtige Parameter
search_documents Exakte Label-Suche, Volltext, serverseitiger Änderungszeitpunkt und datumsgenaue Dokumenttypen. Ein opaker Cursor setzt die Suche verlustfrei fort. query, labels, modifiedSince, createdOn, utcOffset, documentTypes, sortBy, folderId, cursor, limit
search_folders Projekte und Unterordner per Name finden, direkte Kinder oder mit topLevelOnly alle Projektwurzeln auflisten. query, parentId, topLevelOnly, limit
create_text_memo Text-Memo (Markdown) in einem Ordner anlegen, optional mit Label, Status, Frist und Zuständigen. assignees nimmt Namen oder User-IDs. folderId, textContent, description, labels, status, dueDate, assignees, backgroundColor
update_text_memo Logbuch oder Textmemo zweistufig fortschreiben: Anhängen erhält den bisherigen Inhalt, Ersetzen setzt den kompletten Text. Ein Revisionswert verhindert Überschreiben. documentId, text, mode (append | replace), apply, expectedLastModified
create_folder Mappe anlegen: neues Projekt auf oberster Ebene oder Unterordner in einer bestehenden Mappe, optional aus einer Ordnervorlage. Die Vorlage wird per Name gewählt; bei unbekanntem oder mehrdeutigem Namen kommt die Liste der vorhandenen Vorlagen zurück. name, parentId, template, description, labels
get_open_tasks Dokumente mit Aufgaben-Label (Standard offen) über alle Projekte oder in einem Ordner inkl. Unterordnern. label, folderId, assignee (Name oder ID), status, dueBefore, limit
get_document Ein Dokument vollständig, einschließlich Kommentare, Änderungsaktivitäten und Mappenpfad. Bei Bildern optional MCP-Bildvorschau; bei PDFs Formularfelder. documentId, includeImage, formFields: all | filled | none
get_documents Bis zu 20 bekannte Dokumente in einem MCP-Aufruf mit Text, Kommentaren, Änderungsaktivitäten und Mappenpfad lesen. documentIds
update_document_metadata Zweistufige Änderung von Beschriftung und Labels: erst Vorschau, dann bestätigtes Schreiben. Ein Revisionswert verhindert, dass zwischenzeitliche Änderungen überschrieben werden. documentId, description, labels, labelMode (add | replace), apply, expectedLastModified

Status-Werte

Die API kennt genau vier Werte und ignoriert alles andere stillschweigend. Der Server nimmt die deutschen Begriffe an und lehnt unbekannte Werte mit einer Fehlermeldung ab.

API-WertWird auch akzeptiert
TO_BE_DONEoffen, todo
IN_PROGRESSin Arbeit, in Bearbeitung
BLOCKEDblockiert
FINISHEDerledigt, fertig, done
Endpoint

Ein Endpoint für alle

Streamable HTTP nach MCP-Spezifikation (JSON-RPC 2.0), zustandslos. Der API-Key kommt pro Anfrage im Header — der Server speichert keine Keys.

PfadZweck
POST /mcpMCP-Endpoint. Header X-Memomeister-Api-Key (Pflicht), X-Memomeister-Api-Url (optional, z. B. Staging).
GET /healthStatus, Version, Laufzeit, MCP-Aufrufe der letzten 60 Minuten.
GET /activity/<Token>Privates, read-only Activity Log; nur aktiv, wenn ein zufälliges ACTIVITY_LOG_TOKEN gesetzt ist. Optional mit ?format=json.
POST /feedbackRückmeldungs-Formular der Übersichtsseite.
Die alten Rollen-Pfade /chef, /bauleiter, /monteur, /buero, /formular und /admin funktionieren weiter und liefern dieselben 9 Tools. Bestehende Client-Konfigurationen müssen nicht angepasst werden.
Einrichtung

In zwei Minuten verbunden

Remote (HTTP) — z. B. Claude, LangDock, N8N

URL:     https://mcp.corncreeker.com/mcp
Header:  X-Memomeister-Api-Key: <dein-key>

Claude Code (lokal, stdio)

claude mcp add memomeister -e MEMOMEISTER_API_KEY=<dein-key> -- node /pfad/zu/dist/index.js

Claude Desktop / Cursor / Windsurf (lokal, stdio)

{
  "mcpServers": {
    "memomeister": {
      "command": "node",
      "args": ["/pfad/zu/dist/index.js"],
      "env": { "MEMOMEISTER_API_KEY": "<dein-key>" }
    }
  }
}

Umgebungsvariablen

VariableBeschreibungStandard
MEMOMEISTER_API_KEYPflicht im stdio-Modus. Im HTTP-Modus kommt der Key per Header.—
MEMOMEISTER_API_URLGraphQL-Endpointhttps://api.memomeister.com/graphql
TRANSPORTstdio oder httpstdio
HTTP_PORT / HTTP_HOSTBind-Adresse im HTTP-Modus3000 / 0.0.0.0
LOG_DIROrdner für die Anfrage-Logs: eine JSONL-Datei pro Tag (requests-JJJJ-MM-TT.jsonl) mit Tool, bereinigten Argumenten, Nutzer, Client, Dauer und Ergebnis. Inhalte, URLs und Secrets werden nicht geschrieben.— (im Docker-Image /app/logs)
ACTIVITY_LOG_TOKENMindestens 24 zufällige URL-sichere Zeichen. Aktiviert das private Dashboard unter /activity/<Token>; der Token ist wie ein Passwort zu behandeln.— (Dashboard deaktiviert)
FEEDBACK_FILEJSONL-Datei für Rückmeldungen aus dem Formular— (Formular antwortet dann mit 503)

Docker

docker compose up -d --build
Fotos

Bildanalyse in der verbundenen KI

get_document lädt für ein IMAGE-Dokument eine Vorschau innerhalb des Servers und liefert sie als MCP-Bildinhalt an den Client. Die eigentliche Bildanalyse macht das Vision-Modell der verbundenen KI.

Bevor Beschriftung oder Labels geändert werden, liefert update_document_metadata mit apply=false die bisherigen und vorgeschlagenen Werte. Erst nach Bestätigung wird mit apply=true geschrieben. expectedLastModified schützt vor dem Überschreiben einer neueren Revision.

Signierte Download- und Vorschaulinks verlassen den Server nicht. Bildinhalte sind auf 5 MB begrenzt; unterstützt werden JPEG, PNG, GIF und WebP.
PDF-Formulare

Formularfelder direkt im Server gelesen

Kein externer PDF-Dienst: get_document lädt das PDF über den MemoMeister-Downloadlink und liest die AcroForm-Felder im Prozess (Text, Checkbox, Radio, Dropdown, Liste, Signatur).

Die meisten MemoMeister-Vorlagen sind mit einem Besitzer-Passwort geschützt. Der Server nutzt @cantoo/pdf-lib, das solche PDFs selbst entschlüsselt. Getestet an 50 echten Vorlagen und ausgefüllten Formularen: alle 50 gelesen, keine verstümmelten Feldnamen.

Nicht unterstützt: PDFs, die zum Öffnen ein Benutzer-Passwort brauchen. Dann steht der Grund in formFields.error — der Rest des Dokuments kommt trotzdem zurück.
Details

Gut zu wissen

Ordner-Filter

Mit folderId suchen search_documents und get_open_tasks im Ordner selbst und in allen Unterordnern. Die API trennt das in zwei Filter, der Server führt beide sortiert und ohne verlorene Treffer zusammen.

Änderungen und Kommentare

modifiedSince wird als exakter serverseitiger Zeitfilter an MemoMeister geschickt. Kommentare, Änderungsfelder, Revisionen und der vollständige Mappenpfad kommen mit den Dokumentdetails. Die MemoMeister-API ändert bei einem neuen oder bearbeiteten Kommentar jedoch nicht lastModified des Dokuments; deshalb liefern die Detail-Tools zusätzlich commentLastModified und effectiveLastModified. Eine reine modifiedSince-Suche kann eine ausschließlich kommentierte Änderung nicht finden.

Personen

Ersteller und Zuständige kommen in allen Ergebnissen als { id, name }. Wo ein Tool Personen annimmt (assignees, assignee), gehen Namen oder IDs: der Server gleicht sie mit dem Team des API-Keys ab — ID, voller Name, E-Mail, eindeutiger Vor- oder Nachname, eindeutiger Namensteil. Ist ein Name mehrdeutig oder unbekannt, wird nichts angelegt und die Antwort listet das Team als „Name (ID)". Die Teamliste wird pro Key 10 Minuten zwischengespeichert.

Fristen

dueBefore filtert auf die Frist (dueDate) des Dokuments. Dokumente ohne Frist fallen dabei heraus.

Neue Memos in der Suche

Frisch angelegte Memos tauchen nach wenigen Sekunden in Suche und Aufgabenliste auf (Suchindex der API). Per get_document sind sie sofort abrufbar.

Umfang

Der Server sucht, liest, legt Textmemos und Mappen an und aktualisiert bestätigte Textinhalte, Beschriftungen und Labels. Er löscht und verschiebt nichts und überschreibt keine Dateien.

Server-Status

Live

Prüfe… Version — Läuft seit — Aufrufe (60 Min) —