memory.forget
memory:writeSuppress specific entries from future recall. This is a reversible, tenant-scoped un-index tombstone — it does not destroy the underlying records. Physical hard-deletion is a separate operator-governed capability.
Arguments
| Name | Type | Required | Rules / enum |
|---|---|---|---|
entry_ids | array<string> | required | 1–100 non-empty strings, as returned by memory.recall. |
reason | string | optional | ≤512 chars, single-line. Recorded on the tombstone. |
Response (required:
status)status∈{forgotten, not_forgotten}.forgottenonly when the store confirms; an unreachable / 4xx / 5xx Cortex isnot_forgotten, never laundered.- Per-id counters that sum to
requested:tombstoned,already_forgotten,not_found,unknown.results[]gives per-id{entry_id, status}in request order. activity_confirmed(bool, present whenstatus == forgotten) —true= tombstone committed and its audit receipt was durably recorded;false= the rows ARE forgotten but the receipt could not be written (the delete is authoritative regardless).
Runtime observation. Engagement UAT reports
activity_confirmed:false
returning systematically live. The code permits both values, so treat "always false" as an
observed runtime state, not a contract guarantee — the forget itself is still authoritative.
Example
curl -sS "$CONDUIR_BASE/api/cortex/mcp" \
-H "Authorization: ApiKey $CORTEX_KEY" \
-H "Content-Type: application/json" \
-d '{"tool":"memory.forget","arguments":{
"entry_ids":["mcp_9f3c…"],
"reason":"superseded"}}'
{ "result": {
"status": "forgotten",
"requested": 1, "tombstoned": 1,
"already_forgotten": 0, "not_found": 0, "unknown": 0,
"results": [ { "entry_id": "mcp_9f3c…", "status": "tombstoned" } ],
"activity_confirmed": false
} }
Validation test
Runs this exact tool against the live broker (POST /api/cortex/mcp) with the
key saved in this browser — the same one the dashboard uses. No key yet?
Create one on Your keys (Microsoft sign-in), then come back. Note: a green receipt proves the tombstone write only — suppression is verified by a separate healthy re-recall of the same query.
Arguments (editable JSON)