compile_done
Meldet ein Inbox-Item als fertig eingearbeitet (nach compile_next + upsert_page). keys = die Seiten, in die der Inhalt eingearbeitet wurde; jede muss einen [quelle: <item_id>]-Anker tragen, dessen Werte wörtlich in der Quelle stehen — der Server prüft das automatisch. keys=[] heißt: nichts Verwertbares, nichts einzuarbeiten. Für jede Seite ohne Typ typing[key] = { type, status, relations, confidence } angeben, ausschließlich mit dem Vokabular aus dem tbox-Feld der letzten compile_next-Antwort. claim_token aus compile_next.item.claim_token UNVERÄNDERT zurückgeben — er beweist, dass das Item noch dir gehört (sonst lease_lost = die Sperre ist abgelaufen).
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"item_id": "<item_id>",
"keys": "<keys>"
},
"name": "compile_done"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| keys | Yes | Seiten-Keys, in die eingearbeitet wurde; [] = nichts Verwertbares. | |
| typing | No | Typing je noch untypisierter Ziel-Seite: { "<key>": { "type": "<T-Box-Typ|null>", "status": "<status|null>", "relations": { "<prädikat>": ["<key>"] }, "confidence": 0..1 } }. | |
| item_id | Yes | Die Item-ID aus compile_next. | |
| claim_token | No | Sperr-Schlüssel aus compile_next.item.claim_token — unverändert zurückgeben. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| ok | Yes | immer true. Fehler kommen als isError ohne structuredContent zurück (errors.error_result: {ok:false, error_class, fehler}). | |
| tool | Yes | Name des proxierten Vault-Tools. | |
| result | Yes | Rohes MCP-Tool-Result der Instanz: {content: [...], isError: bool}. Der eigentliche Inhalt steckt als JSON-Text in content[0].text. | |
| hinweis | No | Optionaler Hinweis ans Modell (F14) — Datenstand-Warnung, nächster Schritt, Granularitäts-Caveat. Darf null sein. | |
| proxied | Yes | immer true — die Nutzlast kommt aus der engram-Instanz, nicht aus dem Gateway. | |
| workspace | No | Nur bei Berater-Accounts: der Arbeitsbereich, in dem dieser Call gelandet ist (dispatch.py stempelt ihn zentral an JEDES Result). Haushalts-Results tragen das Feld nicht. |