memcord

Privacy-first MCP server for AI memory management. Save, search & organize chat history with intelligent summarization.

What's new in v3.0.2 — Removes the broken SessionEnd agent hook. Re-run generate-config.py --install-hooks to clean it from existing installs automatically.

Table of Contents

Core Benefits

  • Infinite Memory - Claude remembers everything across unlimited conversations with intelligent auto-summarization
  • Your Data, Your Control - 100% local storage with zero cloud dependencies or privacy concerns
  • Effortless Organization - Per-project memory slots with timeline navigation and smart tagging
  • Intelligent Merging - Automatically combines related conversations while eliminating duplicates

Prerequisites

  • Python 3.10+python.org

  • uv (Python package manager) — install with:

    macOS / Linux:

    curl -LsSf https://astral.sh/uv/install.sh | sh
    

    Windows (PowerShell):

    powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
    

Quick Start

macOS / Linux:

curl -fsSL https://github.com/ukkit/memcord/raw/main/install.sh | bash

Windows (PowerShell):

irm https://github.com/ukkit/memcord/raw/main/install.ps1 | iex

This will:

  • ✅ Download and setup memcord
  • ✅ Set up Python virtual environment using uv
  • ✅ Generate platform-specific MCP configuration files
  • ✅ Configure Claude Desktop, Claude Code, VSCode, and Antigravity IDE

Demo

A demo GIF or terminal recording will be added here. Contributions welcome!

IDE Configuration

The installer auto-configures all supported IDEs. For manual setup or troubleshooting, see the detailed guides:

IDE / ClientGuide
Claude Code CLIInstallation Guide — Claude Code
Claude DesktopInstallation Guide — Claude Desktop
VSCode + GitHub CopilotVSCode Setup Guide
Google AntigravityInstallation Guide — Other MCP Apps
Configuration templatesconfig-templates/ (README)

Manual Installation

git clone https://github.com/ukkit/memcord.git
cd memcord
uv venv && uv pip install -e .
uv run python scripts/generate-config.py

See the Complete Installation Guide for updating, advanced options, and custom commands.

Keeping Memcord Updated

cd /path/to/memcord
git pull
uv pip install -e .
uv run python scripts/generate-config.py  # Regenerate configs

# Optional: Enable auto-save hooks (new in v2.5.0)
uv run python scripts/generate-config.py --install-hooks

The --install-hooks flag is idempotent — it merges into existing .claude/settings.json without overwriting other settings or hooks.

Using Memcord in a Project

First-Time Setup (New Project)

# 1. Once you are in claude code, initialize the project with a memory slot (one-time setup)
memcord_init "." "my-project-name"
# OR
memcord_init "my_project_name"
# Creates .memcord file containing "my-project-name"

# 2. Start saving your conversations
/memcord-save-progress  # Auto-detects slot from .memcord file

Subsequent Sessions (Returning to Project)

# Just use slash commands - no slot name needed!
/memcord-read           # Reads from bound slot automatically

/memcord-save           # Saves to bound slot automatically
/memcord-save-progress  # Summarizes and saves automatically

Enable Auto-Save (Optional)

uv run python scripts/generate-config.py --install-hooks

Automatically saves conversation progress before context compaction and on session end. See config-templates/README.md for details.

How Auto-Detection Works

  1. When you run /memcord-read (or save/save-progress) without arguments
  2. Claude checks for .memcord file in the current working directory
  3. If found, reads the slot name and uses it automatically
  4. No need to remember or type slot names!

Basic Usage

Saving & Retrieving

memcord_name "project_meeting"          # Create or select a slot
memcord_save "Our discussion about..."  # Save exact text
memcord_save_progress                   # Save a compressed summary
memcord_read                            # Read the slot

Navigating & Searching

memcord_select_entry "2 hours ago"    # Jump to a point in the timeline
memcord_list                          # List all slots
memcord_search "API design"           # Full-text search
memcord_query "What did we decide?"   # Natural language query

Project & Privacy

memcord_init "." "my-project"  # Bind a memory slot to this directory
memcord_zero                   # Privacy mode — nothing gets saved

See Complete Tools Reference for all 23 tools with full parameters and examples.

Summarizer Backends

Memcord supports four summarizer backends. New slots default to sumy (graph-based, no downloads required). Existing slots keep nltk to preserve prior behavior.

BackendTypeSpeedQualityExtra install
nltkExtractiveFastGoodNone (built-in)
sumyExtractive (graph)FastBetterNone (built-in)
semanticExtractive (embeddings)MediumBest extractiveuv pip install "memcord[semantic]" (~80 MB)
transformersAbstractive (BART)SlowBest overalluv pip install "memcord[transformers]" (~400 MB)

Switching Backends

Use memcord_configure to change the backend for any slot — no restart required:

# Check current config
memcord_configure action="get"

# Switch to the BART abstractive summarizer (best for conversations)
memcord_configure action="set" key="summarizer_backend" value="transformers"

# Switch to embedding-based semantic summarizer
memcord_configure action="set" key="summarizer_backend" value="semantic"

# Switch sumy algorithm (lexrank / lsa / edmundson)
memcord_configure action="set" key="sumy_algorithm" value="lsa"

# Reset to defaults
memcord_configure action="reset"

To apply one backend to all slots (e.g. in Docker or CI), set the environment variable:

export MEMCORD_SUMMARIZER=transformers

See Tools Reference — memcord_configure for the full parameter list.

Documentation

GuideDescription
Installation GuideComplete setup instructions for all MCP applications
Feature GuideComplete list of features
Tools ReferenceDetailed documentation for all 23 tools
Import & Merge GuideComprehensive guide for Phase 3 features
Search & Query GuideAdvanced search features and natural language queries
Usage ExamplesReal-world workflows and practical use cases
Data Format SpecificationTechnical details and file formats
TroubleshootingCommon issues and solutions
Version HistoryChangelog for all releases

If you find this project helpful, consider:

  • ⭐ Starring the repository on GitHub
  • Support Development
  • 🐛 Reporting bugs and suggesting features

MIT License - see LICENSE file for details.


Star History

Star History Chart

Related Servers