home / mcp / memory keeper mcp server

Memory Keeper MCP Server

Provides persistent memory for Claude Code across sessions with channels, checkpoints, and search.

Installation
Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "mkreyman-mcp-memory-keeper": {
      "command": "npx",
      "args": [
        "mcp-memory-keeper"
      ],
      "env": {
        "DATA_DIR": "~/mcp-data/memory-keeper/",
        "MCP_MAX_ITEMS": "100",
        "MCP_MIN_ITEMS": "1",
        "MCP_MAX_TOKENS": "25000",
        "MCP_CHARS_PER_TOKEN": "3.5",
        "MCP_TOKEN_SAFETY_BUFFER": "0.8",
        "MEMORY_KEEPER_AUTO_UPDATE": "1",
        "MEMORY_KEEPER_INSTALL_DIR": "~/.local/mcp-servers/memory-keeper/"
      }
    }
  }
}

You can use the Memory Keeper MCP Server to give Claude Code persistent, cross-session memory. It stores your context, decisions, and progress so your AI assistant can resume projects seamlessly, even after restarts or across multiple Claude sessions.

How to use

Install and run Memory Keeper as an MCP server that your Claude Code client can connect to. You will typically add Memory Keeper to Claude, start a Claude session, and then interact with it to save and restore context across sessions, branches, and projects. Use channels and checkpoints to segment work, preserve decisions, and recover progress after context limits.

How to install

claude mcp add memory-keeper npx mcp-memory-keeper

This NPX-based setup uses the latest Memory Keeper version and manages dependencies automatically. If you need an alternative, you can install the MCP server globally and attach it similarly.

Configuration and usage notes

Configure environment variables to tailor storage, token limits, and performance. Common variables include where to store data, token budgets for responses, and how aggressively to batch results.

Typical workflow patterns involve creating a development workflow in Claude with a dedicated channel (often derived from your git branch), saving progress at milestones, and creating checkpoints before major changes. You can restore from checkpoints to recover a known-good state.

Troubleshooting and maintenance

If Memory Keeper isn’t visible in Claude Code or Claude Desktop after setup, restart Claude and re-check the MCP list. If problems persist, remove and re-add Memory Keeper, then verify the server is running.

Notes and best practices

- Memory Keeper provides persistent channels for organizing context. Channels survive crashes and restarts and can be shared across sessions. - Checkpoints offer complete context snapshots you can restore later. - Use the built-in search, filtering, and export/import features to manage and back up context.

Complete workflow example

Start a session, save a high-priority task, cache important files, and checkpoint before a refactor. Restore later to review decisions, then continue work from a known state.

Security considerations

Treat Memory Keeper as a persistent store for your development context. Limit access to trusted Claude sessions and control who can restore or export context. Use project-scoped channels to minimize cross-project data leakage.

Supported environments

Memory Keeper runs with Node-based tooling and relies on NPX for easy startup. It is designed to work across macOS, Linux, and Windows environments where Claude can invoke MCP commands.

FAQ and tips

- How do I derive a channel name? It auto-derives from your git branch when a project directory is set. - How do I create a checkpoint? Use the checkpoint feature before making large changes. - How do I restore? Provide the checkpoint key to Claude to resume from that state.

Available tools

mcp_context_session_start

Start a new context session with metadata such as name and description.

mcp_context_save

Save a context item with a key, value, category, and priority.

mcp_context_get

Retrieve items from context, with optional filters like channel, category, and session.

mcp_context_checkpoint

Create named checkpoints of the entire context for later restoration.

mcp_context_restore_checkpoint

Restore a previously saved checkpoint, optionally restoring files.

mcp_context_search

Search across keys/values with query, scope, and session filters.

mcp_context_export

Export the current or a specific session to a JSON file for backup.

mcp_context_import

Import data from a JSON export into the current context, with optional merge.

mcp_context_batch_save

Atomically save multiple items in a single operation.

mcp_context_batch_update

Atomically update multiple items in a single operation.

mcp_context_batch_delete

Atomically delete items by pattern with optional dry-run.

mcp_context_reassign_channel

Move items between channels based on patterns or explicit from/to channels.

mcp_context_link

Create relationships between context items.

mcp_context_watch

Create a watcher for real-time monitoring of context changes.

mcp_context_prepare_compaction

Prepare data for compaction to prevent data loss when nearing limits.

mcp_context_git_commit

Commit context changes with optional auto-save checkpoints linked to git commits.

mcp_context_analyze

Analyze context to extract knowledge graphs and relationships.

mcp_context_visualize

Generate visualization data for graph, timeline, or heatmap views.

mcp_context_branch_session

Create a branch of the current session for exploration.

mcp_context_merge_sessions

Merge a branched session back into the main session with conflict resolution.

mcp_context_journal_entry

Add timestamped journal entries with mood and tags.

mcp_context_timeline

Retrieve activity timelines grouped by date or time.

mcp_context_compress

Compress old context to save space while preserving important categories.

mcp_context_integrate_tool

Record events from other MCP tools into the context.

mcp_context_analyze

Automatic knowledge graph extraction from saved context.

mcp_context_find_related

Find related entities in the knowledge graph.

mcp_context_summarize

Produce AI-friendly summaries of saved context.