The Phase 1/2 descriptions explained WHAT each tool does. The model has
no other signal for WHEN to call them, so they only fire on explicit
user prompts ("remember that…", "search for…"). This rewrites each
description to lead with the trigger condition.
Highlights:
- memory.write now explicitly contrasts with the built-in file-based
memory at ~/.claude/.../memory/, so transient or container-specific
state stays there while user/project facts go here
- memory.search description tells the model to call it BEFORE answering
any question that might touch a previously-shared fact ("cheap; lean
toward calling it")
- project.identify becomes a session-start ritual when there's a repo
context, anchoring all subsequent project-scoped writes
- update vs delete: explicit "prefer update" guidance to keep ids stable
No code or schema changes — descriptions are pure metadata that surface
in the MCP tools/list response on the next session of every connected
client.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>