Skip to main content
Glama

memory_archive

Idempotent

Move a memory to the archive tier with a tombstone instead of deleting it, so it stays out of recall and lists but remains recoverable and auditable.

Instructions

Soft-retire a memory: move it to the archive tier with a tombstone instead of deleting it. Archived memories are excluded from recall, list, audit, and find_similar but remain fully recoverable via memory_restore. Use this instead of forget when the memory may need to be recovered or audited later.

Input Schema

NameRequiredDescriptionDefault
refNoMemory reference for single archive
noteNoTombstone note: why this memory is being retired
titleNoTitle of specific memory to archive
categoryNoCategory (used with title)

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv0.5.1
    • changedInput schema / $schema
      Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
  2. First observedv0.4.1

TDQS

A4.7/5.0
Behavior5/5

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

Beyond the annotations (which only declare idempotent, non-destructive, closed-world), the description discloses downstream side effects the agent could not otherwise infer: archived memories are excluded from recall, list, audit, and find_similar, and remain fully recoverable. This is exactly the kind of behavioral context that annotations cannot express.

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?

Two sentences, zero filler, and the core mechanism (tombstone, not delete) is front-loaded ahead of the routing advice. Every clause earns its place.

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

Completeness5/5

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

For a mutation tool with no output schema, the description covers what the operation does, what it excludes, how to reverse it, and when to prefer it over forget. Combined with the annotations covering safety semantics, nothing material is missing.

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

Parameters3/5

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

Schema description coverage is 100% with 4 well-documented parameters, so the schema carries the burden and a baseline of 3 applies. The description's mention of the 'tombstone' loosely gestures at the note parameter but adds no syntax, format, or interaction detail beyond the schema.

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?

The description names a specific verb and resource ('soft-retire a memory'), and immediately clarifies the mechanism ('move it to the archive tier with a tombstone instead of deleting it'). This distinguishes it from forget, memory_prune, and memory_restore without the agent needing to open any other schema.

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

Usage Guidelines5/5

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

It gives an explicit alternative and the condition selecting it: 'Use this instead of forget when the memory may need to be recovered or audited later.' It also names the inverse operation (memory_restore) for un-doing the action.

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