Update memory
updateUpdate an existing memory by ID. Use mode replace (default) to patch fields, or append to extend content. Re-embeds only when content changes. The target workspace is always the one the memory itself belongs to (echoed in resolved_workspace); optionally pass workspace: as a safety confirmation — the call fails if the memory is not actually in that workspace.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | UUID of the memory to update. | |
| mode | No | replace = patch fields; append = extend content with revision history. | replace |
| tags | No | Optional tags. A tag like project:my-app also sets collection automatically. | |
| type | No | Memory category: general, preference, fact, instruction, or conversation. Omit to include all types. | |
| content | No | New or appended content. | |
| workspace | No | To operate on a team workspace, pass its exact name, slug, or ID (e.g. "Acme"). Omit — or pass "personal" — for your personal memory (default). Every response echoes resolved_workspace so you can confirm where the operation actually happened. Call list_collections when unsure of the exact workspace name. | |
| collection | No | Scope slug (e.g. project:memxus, personal:preferences). GitHub/Notion connector syncs use project:<slug> — one collection per project. Partial names work; call list_collections when unsure. | |
| importance | No | Relevance weight from 0 to 1. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| tags | No | Tags attached to the memory. | |
| message | Yes | Human-readable confirmation. | |
| memory_id | Yes | UUID of the updated memory. | |
| collection | No | Collection slug, or empty string if none. | |
| importance | No | Stored importance (0–1). | |
| memory_type | Yes | Stored memory category. | |
| resolved_workspace | No | The workspace this call actually operated on (defense against writing to the wrong team by typo or name collision). id=null means Personal. |