Skip to main content
Glama

engram_forget

Permanently delete a memory by its id. This action is irreversible and also removes associated feedback. Use it when a memory is incorrect, outdated, or the user asks to forget it.

Instructions

Permanently delete one memory by id. Irreversible — also removes that memory's feedback rows. Returns: whether a memory with the given id was found and deleted; reports not-found without error if the id doesn't exist. Use when a memory is wrong, outdated, or the user asks you to forget it. If you're unsure, downvote with engram_feedback (helpful:false) instead of deleting.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
memory_idYesThe id of the memory to delete, as returned by engram_recall or engram_remember.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv1.6.6
    • changedInput schema / properties / memory_id / description
      Previous value: -"The ID of the memory to remove (returned by engram_recall)"New value: +"The id of the memory to delete, as returned by engram_recall or engram_remember."
  2. First observed

TDQS

A4.9/5.0
Behavior5/5

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

With no annotations, the description fully carries the burden: declares irreversibility, removal of feedback rows, return type (boolean), and error handling (reports not-found without error).

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?

Three concise sentences; front-loaded with action and key constraint ('Permanently delete'); every sentence adds essential information with no redundancy.

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 single-parameter tool without output schema, the description covers all necessary context: what action, side effects, return behavior, and error handling.

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 already provides 100% coverage with description for memory_id. Description adds value by specifying the source ('as returned by engram_recall or engram_remember').

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 uses specific verb-resource pairing ('Permanently delete one memory by id'), distinguishes from siblings like engram_feedback and engram_recall, and clearly states the return value.

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?

Explicitly states when to use ('when a memory is wrong, outdated, or the user asks you to forget it') and when to use an alternative ('If you're unsure, downvote with engram_feedback instead').

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