claude-memory-manager
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@claude-memory-managerwhat did we decide about the database schema last session?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Claude Memory Manager
Cross-session memory for Claude Code — never lose context between sessions.
Claude Memory Manager automatically captures architectural decisions, code changes, bug fixes, and configuration choices from your Claude Code sessions, then intelligently retrieves relevant context when you start new sessions.
What It Does
Every time you use Claude Code, valuable context is created and lost when the session ends:
Which libraries you chose and why
Bug fixes and their root causes
Configuration decisions
File structure and naming conventions
Error resolutions
Claude Memory Manager solves this by:
Parsing your Claude Code session logs (JSONL files)
Extracting meaningful memories with importance scoring
Embedding memories for semantic search
Storing everything in a local SQLite database with FTS5
Retrieving relevant context via hybrid semantic + keyword search
Serving context to Claude Desktop via MCP protocol
Related MCP server: Memory MCP
Installation
pip install claude-memory-managerFor local embeddings (no API key needed):
pip install claude-memory-manager[local]For development:
pip install claude-memory-manager[dev]Quick Start
1. Initialize the Database
claude-memory initThis creates the SQLite database at ~/.claude-memory/memory.db and saves a config file.
2. Ingest Session Logs
# Ingest all sessions from the default path (~/.claude/projects/)
claude-memory ingest
# Ingest from a specific path
claude-memory ingest /path/to/sessions
# Watch for new sessions and auto-ingest
claude-memory ingest --watch3. Search Memories
# Search across all memories
claude-memory search "authentication setup"
# Filter by project
claude-memory search "database schema" --project /path/to/project
# Filter by category
claude-memory search "cors" --category config4. Generate Context Summary
# List all indexed projects
claude-memory context
# Generate summary for a specific project
claude-memory context /path/to/project
# With custom token limit
claude-memory context /path/to/project --max-tokens 30005. Connect to Claude Desktop (MCP)
Add to your Claude Desktop config (see MCP Setup):
{
"mcpServers": {
"claude-memory": {
"command": "claude-memory-mcp",
"args": []
}
}
}CLI Reference
Command | Description |
| Initialize the SQLite database |
| Ingest session logs from path |
| Watch and auto-ingest new sessions |
| Hybrid semantic + keyword search |
| Generate context summary |
| List all indexed sessions |
| Database statistics |
| Remove old memories |
| Export memories as JSON |
| Start MCP server mode |
Global Options
Option | Description |
| Custom config file path |
| Enable debug logging |
| Show version |
Search Options
Option | Description |
| Filter by project path |
| Filter by category |
| Max results (default: 5) |
Categories
Memories are classified into these categories:
decision— Architectural and design decisionscode_change— Significant code modificationsbug_fix— Bug identification and resolutionconfig— Configuration and environment changeserror_resolution— Errors encountered and solvedpreference— User preferences and conventionsdiscussion— General discussion summaries
MCP Setup
Claude Desktop
Find your Claude Desktop config file:
macOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:
%APPDATA%\Claude\claude_desktop_config.json
Add the memory server:
{
"mcpServers": {
"claude-memory": {
"command": "claude-memory-mcp",
"args": []
}
}
}Restart Claude Desktop.
See examples/claude-desktop-config.json for a complete example.
MCP Tools
Once connected, Claude Desktop can use these tools:
Tool | Description |
| Search memories by query with optional filters |
| Get a formatted context summary for a project |
| Save a new memory directly |
| Get database statistics |
Architecture
claude-memory-manager/
src/claude_memory/
cli.py # Click CLI commands
mcp_server.py # MCP stdio server
config.py # Configuration management
core/
extractor.py # Memory extraction from conversations
embedder.py # Embedding generation + caching
indexer.py # Pipeline: parse -> extract -> embed -> store
retriever.py # Hybrid semantic + keyword search
summarizer.py # Context summary generation
parsers/
jsonl_parser.py # Claude Code session log parser
diff_parser.py # Unified diff parser
storage/
database.py # SQLite + FTS5 operations
models.py # Pydantic data models
migrations.py # Schema versioning
integrations/
anthropic_embeddings.py # Voyage AI API
local_embeddings.py # sentence-transformers
utils/
formatting.py # CLI output formatting
license.py # License validationData Flow
Session Logs (.jsonl)
|
[JSONL Parser] -----> ParsedSession
|
[Extractor] --------> Memory objects (categorized, scored)
|
[Embedder] ----------> Embeddings (bytes for SQLite BLOB)
|
[Indexer] -----------> SQLite DB (with FTS5 index)
|
[Retriever] ---------> Search results (hybrid ranked)
|
[Summarizer] --------> Context summary (markdown)Configuration
Configuration is loaded from (in priority order):
Environment variables
Config file (
~/.claude-memory/config.json)Defaults
Environment Variables
Variable | Description | Default |
| Path to session logs |
|
| Database file path |
|
|
|
|
| Anthropic API key | — |
| Voyage AI API key | — |
| Max tokens for context |
|
| Log level |
|
Embedding Providers
Provider | Dimension | Requires |
| 1024 |
|
| 1024 |
|
| 384 |
|
If no provider is available, a stub provider is used (keyword search still works, but semantic search is disabled).
FAQ
Where are my memories stored?
In a SQLite database at ~/.claude-memory/memory.db. All data stays local.
Does this send my code to any API?
Only if you configure the Voyage or Anthropic embedding provider. In that case, only memory text content (not full session logs) is sent to generate embeddings. Use local for fully offline operation.
How does deduplication work? Each memory's content is hashed (SHA-256). If a memory with the same hash already exists, it is skipped during ingestion.
How does hybrid search work? Results from cosine-similarity vector search (70% weight) are combined with SQLite FTS5 keyword search results (30% weight). Memories appearing in both get combined scores.
Can I export my memories?
Yes: claude-memory export > memories.json or claude-memory export -o file.json.
How do I prune old memories?
claude-memory prune --older-than 90d removes memories older than 90 days. Supports d (days), w (weeks), m (months), y (years).
Development
# Clone and install in development mode
git clone https://github.com/nyxtools/claude-memory-manager.git
cd claude-memory-manager
pip install -e ".[dev]"
# Run tests
pytest
# Type check
mypy src/
# Lint
ruff check src/ tests/License
MIT License. Copyright (c) 2026 NyxTools.
This server cannot be deployed
Maintenance
Related MCP Connectors
Persistent memory for Claude Code and Cursor. Stop re-explaining your project every session.
- SeturosOAuthcom.seturos
Shared work memory for Claude Code, Codex, Cursor and chat, scoped to each repository.
Persistent cross-session memory shared by Codex, Claude Code, ChatGPT, and other AI agents.
Private memory for AI agents: save and recall facts across Claude Code, Codex, Cursor and ChatGPT.
Related MCP Servers
- AlicenseAqualityDmaintenanceCross-surface persistent memory for Claude. Bridges context between Claude Chat, Code, and Cowork via local SQLite with full-text search.64 npm7MIT
- AlicenseAqualityBmaintenanceProvides persistent cross-session memory and full-text search for AI coding assistants, storing project context, decisions, and preferences while enabling searchable access to conversation history via local SQLite.81MIT
- AlicenseNot gradedqualityDmaintenanceProvides persistent, searchable memory for Claude Code using local SQLite, semantic embeddings, and full-text search, enabling Claude to recall and retrieve context across sessions and projects without external services.8 npm4MIT
- AlicenseNot gradedqualityDmaintenanceProvides local-first, cross-session memory for Claude Code, enabling semantic search across past sessions to retrieve procedures, decisions, or answers without exposing secrets.Apache 2.0