Skip to main content

Overview

Update an existing observation by ID. Only the fields you provide are changed — all other fields remain unchanged. Use this when you have the exact observation ID and need to correct or refine it.
This tool is part of the agent profile and uses deferred loading to optimize performance.

When to Use

  • Corrections — fix typos, inaccuracies, or missing details in an existing observation
  • Refinements — add more context or clarification to a previously saved memory
  • Reclassification — change the type or scope of an observation
  • Topic key updates — assign or change the topic key for upsert behavior
Only use mem_update when you have the exact observation ID. If you’re updating evolving knowledge (like architecture decisions), use mem_save with a topic_key instead.

Parameters

number
required
Observation ID to updateGet the ID from:Example: 42
string
New title for the observationExample: "Fixed FTS5 syntax error on special chars [updated]"
string
New content for the observationUse the same What/Why/Where/Learned format as mem_save:
string
New observation type/categoryRecognized types:
  • decision
  • architecture
  • bugfix
  • pattern
  • config
  • discovery
  • learning
  • manual
string
New project nameChange which project this observation is associated with.
string
New visibility scopeOptions:
  • project — project-scoped
  • personal — cross-project personal knowledge
string
New topic key (normalized internally)Assign or change the topic key for upsert behavior. Format: family/segmentExample: architecture/database-schema-design

Response

string
Confirmation message with updated observation details
Example:

Usage Examples

Update Title

Updates only the title. All other fields remain unchanged.

Update Content

Replaces the content with updated details. Title, type, and other fields stay the same.

Change Type and Scope

Reclassifies observation #12 as a personal pattern (cross-project knowledge).

Assign Topic Key

Assigns a topic key to enable future upserts via mem_save.

Update Multiple Fields

Updates title, type, and content. Project and scope remain unchanged.

Partial Updates

Only the fields you provide are updated. All other fields remain unchanged:
You can update one field or many — it’s a partial update, not a full replacement.

Validation

If the observation ID doesn’t exist, you’ll get an error:
Use mem_search to find the correct ID.
You must provide at least one field to update:
Error:
If you provide topic_key, it’s normalized internally:
  • Lowercased
  • Spaces replaced with hyphens
  • Special characters removed
Input: "Architecture / Database Schema Design"Stored: "architecture/database-schema-design"

Difference from mem_save with topic_key

Use mem_update when you have an exact ID. Use mem_save with topic_key for evolving topics.

What Changes

When you update an observation:
  • Specified fields are replaced with new values
  • Updated timestamp (updated_at) is refreshed
  • Revision count does NOT increment (only topic_key upserts increment revisions)
  • Duplicate count is NOT affected
  • Created timestamp remains unchanged