Claude Memory MCP Server

Claude Memory MCP Server

Enterprise-grade MCP server for persistent, intelligent memory management across Claude Code sessions.

Category
Visit Server

README

Claude Memory MCP Server

Enterprise-grade MCP server for persistent, intelligent memory management across Claude Code sessions.

Overview

Claude Memory is an MCP server that provides persistent memory capabilities with enterprise features: concurrent multi-writer access, intelligent search, versioning, backup/restore, and more. Designed for teams and individuals who need reliable, scalable memory management.

Features

Core Capabilities

  • Persistent Memory - Store and recall memories across sessions
  • Semantic Search - TF-IDF powered similarity search
  • Multi-Scope - User, project, and session-specific memories
  • Auto-Tagging - Intelligent tag inference from content
  • Importance Scoring - Automatic relevance weighting (1-10)

Enterprise Features

  • Concurrent Access - File locking for multi-writer scenarios
  • Versioning - Full memory version history
  • Transaction Support - Atomic batch operations
  • Append-Only Logging - Crash recovery audit trail
  • Backup/Restore - Point-in-time recovery
  • Memory Consolidation - Deduplication and merge
  • GC - Automatic expired memory cleanup

Installation

Quick Start (npm)

npm install @gsxrchris/claude-memory

Configure in .mcp.json (project or global at ~/.claude/):

{
  "mcpServers": {
    "memory": {
      "command": "npx",
      "args": ["@gsxrchris/claude-memory"]
    }
  }
}

Running Without npm

For local development:

npx tsx src/index.ts

MCP Tools (22 Tools)

Core Memory Operations

Tool Description
memory_remember Store memory with auto-importance, tags, expiration
memory_recall Search with semantic/exact/hybrid, filters, cross-project
memory_search_similar Find similar memories using vector search
memory_load Load memories sorted by importance
memory_save Save session context with summarization
memory_list List memories with metadata
memory_clear Clear memories for a scope

Intelligence

Tool Description
memory_consolidate Find and merge similar memories
memory_query_expand Expand queries with synonyms

Transactions (Enterprise)

Tool Description
memory_transaction_begin Start atomic batch operation
memory_transaction_commit Commit all pending changes
memory_transaction_rollback Rollback all pending changes

Versioning & Audit

Tool Description
memory_version_history Get memory version history
memory_version_restore Restore specific version
memory_audit_log Query operation history

Backup & Recovery

Tool Description
memory_backup_create Create point-in-time backup
memory_backup_list List available backups
memory_backup_restore Restore from backup
memory_backup_delete Delete backup

Maintenance

Tool Description
memory_gc Clean expired memories
memory_rebuild_index Force search index rebuild
memory_check_save_suggestion Periodic save reminders

Skills & Profile

Tool Description
memory_create_skill Create Claude Code skill
memory_list_skills List created skills
memory_get_user_profile Get learned user preferences
memory_update_user_preference Update user profile

Search Modes

Mode Description
semantic TF-IDF similarity via vector index
exact Plain text substring match
hybrid Combined scoring (recommended)

Scopes

Scope Location Usage
user ~/.claude/memories/user/ Persistent across projects
project ./memory/ Project-specific
session ./memory/ Temporary (7 day TTL)
all Cross-project Federated search

Memory Schema

Memories are stored as markdown with YAML frontmatter:

---
scope: user
type: preference
created: 2025-05-22T10:00:00Z
modified: 2025-05-22T12:00:00Z
version: 2
importance: 8
tags: [language, typescript, enterprise]
expires-at: 2025-05-29T10:00:00Z
project-id: myproject
user-id: user@company.com
---

Your memory content here...

Configuration

Environment Variables

Variable Description Default
MEMORY_DATA_DIR Custom memory storage path (for team shared storage) ~/.claude/memories
MEMORY_LOCK_TIMEOUT Lock acquisition timeout (ms) 5000
MEMORY_LOG_ROTATE_SIZE Log rotation threshold (bytes) 100MB
MEMORY_MAX_VERSIONS Max versions per memory 3

Or via Settings

Add to your Claude Code settings:

{
  "mcpServers": {
    "memory": {
      "command": "npx",
      "args": ["@gsxrchris/claude-memory"]
    }
  }
}

Team/Shared Deployment

For teams sharing a memory store:

{
  "mcpServers": {
    "memory": {
      "command": "npx",
      "args": ["@gsxrchris/claude-memory"],
      "env": {
        "MEMORY_DATA_DIR": "//server/share/memories"
      }
    }
  }
}

Architecture

┌─────────────────────────────────────────────┐
│           MCP Server Layer                  │
│  ┌──────────┐ ┌──────────┐ ┌──────────┐ │
│  │ Tools    │ │ Request  │ │Response  │ │
│  │ Router   │ │ Validator│ │Formatter │ │
│  └──────────┘ └──────────┘ └──────────┘ │
├─────────────────────────────────────────────┤
│         Core Services Layer                │
│  ┌──────────┐ ┌──────────┐ ┌──────────┐ │
│  │ Memory   │ │ Search  │ │ Session  │ │
│  │ Service  │ │ Engine  │ │ Manager  │ │
│  └──────────┘ └──────────┘ └──────────┘ │
├─────────────────────────────────────────────┤
│        Persistence Layer                  │
│  ┌──────────┐ ┌──────────┐ ┌──────────┐ │
│  │ FileMgr │ │ Vector  │ │ Log      │ │
│  │ +Lock   │ │ Index   │ │ Manager  │ │
│  └──────────┘ └──────────┘ └──────────┘ │
└─────────────────────────────────────────────┘

Concurrency

The server supports concurrent multi-writer access through:

  • File-level locking - Exclusive (write) and shared (read) locks
  • Atomic writes - Temp-file-then-rename pattern
  • Append-only log - Crash recovery via replay

Backup Strategy

Backups include:

  • All memory files (.memories/)
  • Transaction log (memory.log)
  • Vector index (.index/)
  • User profile

Security

  • Memories stored locally (no cloud)
  • No encryption (plaintext)
  • User-specific isolation via filesystem permissions

Migration from v1.x

The server is a drop-in replacement. All v1.x tools work unchanged.

New users: Memory directory is created automatically at first use.

Development

# Clone
git clone https://github.com/gsxrchris/claude-memory.git
cd claude-memory

# Install
npm install

# Build
npm run build

# Test
npm test

# Run
npm start

License

MIT - See LICENSE file

Author

Developed by Chris Bunting cbuntingde@gmail.com

Support

  • Issues: https://github.com/cbuntingde/claude-memory/issues
  • Changelog: See RELEASE-NOTES.md

Hooks (Automation)

This package includes hooks for automatic memory capture. Add to your Claude Code settings.json using the official hook format:

{
  "hooks": {
    "PostToolUse": [
      {
        "matcher": "Write|Edit|NotebookEdit",
        "hooks": [
          {
            "type": "command",
            "command": "npx @gsxrchris/claude-memory hooks tool"
          }
        ]
      }
    ],
    "PreToolUse": [
      {
        "matcher": "Bash|PowerShell",
        "hooks": [
          {
            "type": "command",
            "command": "npx @gsxrchris/claude-memory hooks pre-tool"
          }
        ]
      }
    ]
  }
}

Available Hooks

Hook Purpose Event
tool Capture Edit/Write/Bash usage PostToolUse
pre-tool Show conventions before Bash PreToolUse
prompt Capture user requests PostUserPromptSubmit

NPM Hook Commands

# Capture tool use
npx @gsxrchris/claude-memory hooks tool

# Pre-tool suggestions
npx @gsxrchris/claude-memory hooks pre-tool

# Capture prompt
npx @gsxrchris/claude-memory hooks prompt

CLI Commands

# Recall memories
npx @gsxrchris/claude-memory cli recall --scope user --limit 5

# Remember something
npx @gsxrchris/claude-memory cli remember --content "remember this" --scope user

# List memories
npx @gsxrchris/claude-memory cli list --scope user

# Clear session memories
npx @gsxrchris/claude-memory cli clear --scope session

# Garbage collect expired
npx @gsxrchris/claude-memory cli gc

See HOOKS.md for full details.

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured