Skip to main content
Available on hosted HTTP MCP and stdio MCP. crystal_supersede atomically creates a successor, archives its predecessor, and links the two records.

When to use

Use supersede when a decision, rule, or fact has been replaced and you need a link between old and new guidance. Use update for a small correction that should keep the same ID, or forget when there is no successor. Raw HTTP uses POST /api/mcp/supersede. If you change channels, pass the old scope as scopeChannel. The successor inherits scope and identity from the predecessor where applicable; a request agentId is not a new identity stamp. The same redacted-write protection applies: protected writes return 409 redacted_content_write. Missing or hidden predecessors return 404. Use the returned successor ID for subsequent reads; the archived predecessor retains its supersession link. A successful response contains success, action: "superseded", oldMemoryId, newMemoryId, and the supplied reason, with applicable contradiction advisory fields.

Examples

Examples use placeholder IDs. Replace them with IDs returned by your account. MCP examples show the JSON tool arguments and the JSON inside the tool result, not the outer MCP envelope.

Replace an outdated schedule

Request:
Hosted MCP response:

Follow the successor

Save newMemoryId for later reads and changes. Use get memory to inspect supersession links. The old record is archived, so ordinary recall should not be treated as an inventory of historical versions.

Errors and common mistakes

Supply both successor title and content, even when other fields are inherited. Verify the old ID before submitting. Retrying after an uncertain network result can create another successor; inspect the predecessor and its links first. Protected redacted writes return 409; missing or hidden predecessors return 404.