delete_memory
Delete memory by ID.
Long-term memory and code search for an agent, running entirely on your own machine — the vector index, knowledge graph and code index all sit inside one binary.
LABSCO SUMMARY
recall is the single entry point worth learning: it blends semantic, keyword and graph results in one call instead of making you choose. Memories are versioned rather than overwritten — invalidate soft-deletes and points at the replacement, and get_valid replays what was true at any timestamp you name.
A memory server written in Rust that ships as a single self-contained executable: SurrealDB, the embedding model and the graph all run inside the process, so there is no separate vector store or graph database to stand up.
No account and no API key — the embedding model is baked into the binary and runs on CPU. The Docker path wants three things on the run command: a named volume at -v mcp-data:/data so the database and the ~1.2 GB model survive restarts, your code at -v $(pwd):/project:ro for indexing, and --init for a clean shutdown. Also published to npm as memory-mcp-1file.
One command — claude mcp add memory -- npx -y memory-mcp-1file
USE CASES
Search the stored memories for the task that was in progress, then pull the full note back by ID.
recall fuses vector, keyword and graph results in a single call and ranks them together.
Index the directory once, then look things up by meaning or by symbol name.
Find the symbol, then walk its callers and callees to see the blast radius.
Soft-delete the old memory, link the one that replaces it, then replay what was valid on an earlier date.
Create entities and typed relations, then pull everything related to one of them at a chosen depth.
Counted once with only startup setup. Other versions, modes or optional credentials may expose a different list.
delete_memoryDelete memory by ID.
delete_projectDelete indexed project.
get_memoryGet full memory by ID.
get_statusGet system status and startup progress.
get_validGet valid memories. Optional timestamp (ISO 8601) for point-in-time query.
how_to_useShow all available tools with usage examples and parameter combinations.
index_projectIndex codebase directory for code search.
invalidateSoft-delete memory, optionally linking replacement.
knowledge_graphKnowledge graph ops. Actions: create_entity(name, entity_type?, description?) | create_relation(from_entity, to_entity, relation_type, weight?) | get_related(entity_id, depth?, direction?) | detect_communities()
list_memoriesList memories (newest first).
project_infoProject info. Actions: list() | status(project_id) | stats(project_id)
recallBest memory retrieval (query). Combines vector+BM25+graph via RRF fusion. Use as default.
recall_codeCode retrieval (query, mode?: vector|hybrid). Default hybrid = vector+BM25+graph fusion. Filters: path_prefix?, language?, chunk_type?
reset_all_memoryDANGER: Reset all database data (requires confirm=true).
search_memorySearch memories (query, mode?: vector|bm25). Vector=semantic similarity, bm25=exact keyword match.
search_symbolsSearch code symbols by name.
store_memoryStore a new memory.
symbol_graphNavigate symbol call graph. Actions: callers(symbol_id) | callees(symbol_id) | related(symbol_id, depth?, direction?)
update_memoryUpdate memory fields.
BEFORE YOU INSTALL
19 tools when we connected.
npx on PATH
All 8 documented setups run the server on your machine.
CONTEXT COST
Rated by the size of the 19 tool definitions that ride along on every turn, not by how many there are
INSTALLATION
claude mcp add memory -- npx -y memory-mcp-1file{
"mcpServers": {
"memory": {
"command": "docker",
"args": [
"run",
"--init",
"-i",
"--rm",
"--memory=3g",
"-v",
"mcp-data:/data",
"-v",
"<YOUR_PATH_TO_PROJECT>:/project:ro",
"ghcr.io/pomazanbohdan/memory-mcp-1file:latest"
]
}
}
}{
"mcpServers": {
"memory": {
"command": "npx",
"args": [
"-y",
"memory-mcp-1file"
]
}
}
}{
"servers": {
"memory": {
"command": "npx",
"args": [
"-y",
"memory-mcp-1file"
]
}
}
}{
"mcpServers": {
"memory": {
"command": "bunx",
"args": [
"memory-mcp-1file"
]
}
}
}