Skip to main content
Glama

memory_supersede

Replace an outdated saved fact with a corrected version while preserving the old entry as history; retrieval returns the new fact instead of a duplicate.

Instructions

Replace an existing memory with a newer version. The old memory is kept as history (status: superseded) and retrieval returns the new one. Use when a saved fact becomes outdated and should be replaced rather than duplicated. Only active memories can be superseded; the new memory inherits type, tags, and aliases unless you pass replacements. An unknown id is reported back as a failure; nothing is written.

Input Schema

NameRequiredDescriptionDefault
idYesID of the memory being replaced.
tagsNoOptional tags for the new memory.
typeNoCategory of the new memory. Defaults to the old memory's type.
aliasesNoOptional: alternate phrasings of this fact — synonyms, another way a question might be worded, equivalents in the user's other language (e.g. 节假日 for 'public holidays'). They are indexed with the memory so differently-worded questions still match. Only used when the install has capture aliases enabled (init default). Send at most 4; extras and blanks are dropped silently, never an error.
contentYesThe new, corrected content.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.6/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Goes well beyond the annotations: it discloses the non-destructive history model (status: superseded), retrieval precedence, the active-only precondition, field inheritance for type/tags/aliases with override behavior, and failure semantics (unknown id reported as failure, nothing written). The destructiveHint=false annotation is corroborated rather than merely repeated.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Four short sentences, each carrying distinct information: purpose, when-to-use, precondition plus inheritance, and failure behavior. Nothing is redundant and the primary purpose is front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema exists, and the description covers failure behavior and history retention but does not state what a successful call returns (e.g., the new memory's id or status). For a mutation tool that is a small but real gap rather than a serious omission.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3, but the description adds inheritance semantics the schema does not spell out: the new memory inherits type, tags, and aliases unless replacements are passed. It doesn't clarify the aliases cap or indexing behavior beyond the schema text, so it stops short of a 5.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource (replace an existing memory) plus a distinct scope: the old memory is retained as history while retrieval returns the new one. It explicitly contrasts with the duplication route (memory_add) via 'replaced rather than duplicated', letting an agent separate it from siblings without opening schemas.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives a clear condition for use ('when a saved fact becomes outdated and should be replaced rather than duplicated') and a precondition ('only active memories can be superseded'). It implies memory_add is the alternative but never names it or states when replacement should be avoided, so no explicit when-not rule.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.