[MODEL] Claude ignores its own MEMORY.md safety warning, causing irreversible data loss via MCP tool
Preflight Checklist
- [x] I have searched existing issues for similar behavior reports
- [x] This report does NOT contain sensitive information (API keys, passwords, etc.)
Type of Behavior Issue
Claude ignored my instructions or configuration
What You Asked Claude to Do
Asked Claude to update a MOC (Map of Content) file in an
Obsidian vault using MCP tools (obsidian-mcp-tools), and
separate unrelated content into a new file.
What Claude Actually Did
- Claude's MEMORY.md contained an explicit warning:
"Never use update_active_file - risk of destroying
unintended files. Always use create_vault_file instead."
This was recorded from a prior incident in the same project.
- Despite this self-recorded instruction, Claude used
update_active_file (Obsidian MCP tool) to write content.
- The Obsidian UI had a completely different file active.
The MOC content overwrote an unrelated file entirely.
- The target file was NOT updated at all.
- Claude did not verify the write by reading back
the target file afterward.
- The overwritten file was not tracked by git,
making recovery impossible.
Expected Behavior
- Claude should have followed its own MEMORY.md instruction
and used create_vault_file (filename-targeted) instead of
update_active_file (depends on Obsidian UI state).
- After writing, Claude should have verified the correct file
was updated by reading it back with get_vault_file.
- No unrelated files should have been modified.
Files Affected
Destroyed (irrecoverable):
- An unrelated note file was overwritten with completely
different content. Not git-tracked, so unrecoverable.
Not updated (should have been):
- The intended target MOC file remained unchanged.
Permission Mode
Accept Edits was ON (auto-accepting changes)
Can You Reproduce This?
Haven't tried to reproduce
Steps to Reproduce
_No response_
Claude Model
Opus
Relevant Conversation
Impact
Critical - Data loss or corrupted project
Claude Code Version
2.1.38
Platform
Anthropic API
Additional Context
The core issue is that Claude ignored its own persistent memory
(MEMORY.md) which explicitly prohibited using a specific MCP tool.
This suggests MEMORY.md instructions may not be weighted strongly
enough in the model's decision-making, even when they contain
critical safety warnings recorded from past incidents.
The dangerous tool (update_active_file from obsidian-mcp-tools)
operates on whichever file happens to be open in the Obsidian UI,
making it inherently unpredictable from Claude's perspective.
Claude should treat such UI-state-dependent tools with extra
caution, especially when its own memory explicitly warns against
their use.
This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗