Skip to main content
Glama

forget

Remove an obsolete memory from active recall so it stops influencing future project recalls, recording a required reason in the audit trail; use purge to erase stored values from history.

Instructions

Remove a memory from active recall. DESTRUCTIVE.

    This is a destructive operation: the entry stops influencing every
    future recall in this project. `reason` is required and is written to
    the audit trail. The deleted value is never returned.

    With `purge=true` the memory's stored values are also removed from the
    audit trail and every checkpoint of the project (removal from storage
    and history; key names and value hashes remain). It also works on a
    memory forgotten earlier and cannot be undone. Only purge when the user
    asks for the content to be gone, not just out of recall.

    Use this for state that is genuinely obsolete. To correct a memory
    rather than remove it, use `revise`.
    

Input Schema

NameRequiredDescriptionDefault
keyYes
purgeNo
reasonYes
idempotency_keyNo
expected_versionNo

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv2.6.0
    • addedInput schema / properties / purge
      Added value: +{
      +  "default": false,
      +  "title": "Purge",
      +  "type": "boolean"
      +}
  2. Addedv2.1.6

TDQS

A4.5/5.0
Behavior5/5

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

With zero annotations the description carries the full burden and does so well: it discloses the audit-trail write, that the deleted value is never returned, that purge additionally strips stored values from history and all checkpoints (leaving key names and hashes), that purge works on already-forgotten entries, and that it cannot be undone. This is exactly the context annotations would otherwise supply.

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

Conciseness4/5

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

Front-loaded with the destructive warning, then organized into purpose, behavior, purge semantics, and alternative routing. Slight redundancy between the standalone "DESTRUCTIVE." line and "This is a destructive operation:", and the prose is a bit long, but nearly every sentence earns its place.

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?

An output schema exists and the description still usefully notes the deleted value is never returned. For a destructive mutation with no annotations the coverage is strong, but the two control parameters (idempotency and version pinning) are unaddressed, which matters for an irreversible operation.

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 coverage is 0%, so the description must explain all five parameters; it covers `key`, `reason` (required, written to audit trail) and `purge` (with detailed storage/history semantics) well. It says nothing about `idempotency_key` or `expected_version`, leaving retry and optimistic-concurrency behavior undocumented in both schema and description.

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 ("Remove a memory from active recall") and immediately disambiguates from the closest sibling by naming `revise` as the corrective alternative. The DESTRUCTIVE flag up front makes the operation class unmistakable.

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?

Gives explicit when-to-use ("state that is genuinely obsolete"), when-not-to-use and the alternative ("To correct a memory rather than remove it, use `revise`"), plus a separate rule for the purge flag ("Only purge when the user asks for the content to be gone, not just out of recall"). Nothing is left to inference.

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