Skip to main content

What it does

Updates an existing memory by its ID, allowing you to correct errors, add new information, change memory classification, or update tags. Only the fields you provide will be modified; unspecified fields remain unchanged.

Parameters

Returns

Field descriptions:
  • success — Whether the update succeeded
  • memoryId — The updated memory’s ID (echo of input)
  • message — Confirmation message

Examples

Basic usage

Advanced usage

When to use this vs alternatives

  • crystal_edit — When you know the exact memory ID and want to modify it surgically
  • crystal_remember — When you want to save a new memory (not update existing)
  • crystal_forget — When you want to remove or archive a memory instead of editing it

Error handling

Notes

  • At least one field besides memoryId must be provided (editing nothing is a no-op)
  • All string fields are trimmed of leading/trailing whitespace
  • Category and store enums are case-sensitive and must match exactly
  • Tags are deduplicated automatically on save
  • Editing a memory updates its lastAccessedAt timestamp
  • The update is transactional — either all fields succeed or the entire operation fails