Skip to main content
Glama
memorysyncio

MemorySync Cursor Starter

Official

Delete memories (previews by default)

memorysync_forget
DestructiveIdempotent

Delete stored memories by ID after previewing the deletion. Use when a fact is wrong or the user requests forgetting; confirm before final removal.

Instructions

Permanently delete one or more memories by id. Use this when a stored fact is wrong or the user asks you to forget something - not to tidy up, because a deleted memory cannot be recovered. This previews by default: it reports what would be deleted and deletes nothing until dry_run is explicitly set to false. Confirm with the user before that second call. To find the ids to pass, use memorysync_search.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
reasonNoShort note recorded in the audit log explaining why these memories were removed.
dry_runNoDefaults to true, which previews the deletion without performing it. Pass false only after the user has confirmed.
memory_idsYesIdentifiers of the memories to delete, from memorysync_search results.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
dry_runYesWhether this call only previewed.
deleted_idsNoIdentifiers affected.
deleted_countYesNumber deleted, or number that would be deleted when previewing.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv1.0.3

TDQS

A4.9/5.0
Behavior5/5

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

Annotations already declare destructiveHint=true, readOnlyHint=false, and idempotentHint=true. The description adds critical behavioral context beyond those annotations: deletion is permanent and unrecoverable, the tool previews by default and deletes nothing until dry_run is explicitly false, and a second call is required to actually delete. It also discloses that a reason is recorded in an audit log. This is exactly the kind of behavioral disclosure that helps an agent avoid irreversible mistakes.

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 sentences, each earning its place: the first states the action and when to use it, the second explains the preview default and irreversibility, the third routes to the sibling for finding ids. The critical safety information (permanent, previews by default, confirm before second call) is front-loaded and prominent.

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 destructive mutation tool with an output schema and full schema coverage, the description covers everything an agent needs: what to delete, when to delete, how to find ids, the preview behavior, the confirmation requirement, and the irreversibility. The output schema handles return-value details, and annotations handle the safety profile. Nothing essential is missing.

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 description coverage is 100%, so the baseline is 3. The description adds value by explaining the dry_run default behavior in plain language ('previews by default... deletes nothing until dry_run is explicitly set to false') and by clarifying that memory_ids come from memorysync_search results. It also explains the purpose of the reason parameter (audit log). This goes beyond the schema's field-level descriptions.

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 states a specific verb ('Permanently delete') and resource ('one or more memories by id'), and immediately distinguishes the intended use case from a sibling ('not to tidy up'). It also names the sibling to use for finding ids (memorysync_search), so an agent can tell this tool apart from the other memory tools 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 Guidelines5/5

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

The description gives explicit when-to-use guidance ('when a stored fact is wrong or the user asks you to forget something'), an explicit when-not-to-use ('not to tidy up'), and names the alternative for finding ids (memorysync_search). It also instructs the agent to confirm with the user before the second call with dry_run=false, which is clear operational guidance.

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