MEMCORD v3.3.0 (mcp server)

This privacy-first, self-hosted MCP server helps you organize chat history, summarize messages, search across past chats with AI — and keeps everything secure and fully under your control.

MCP Server Claude Code Claude Desktop VSCode Google Antigravity Python License Buy Me a Coffee

Never Lose Context Again

Transform your Claude conversations into a searchable, organized knowledge base that grows with you

> **[What's new in v3.3.0](docs/versions.md#v330---zero-memory-leaks-and-minimum-memory-footprint)** — Eliminated memory leaks and reduced memory footprint across the server: bounded caches use O(1) LRU eviction, asyncio tasks are tracked to prevent silent GC, rate-limiter and operation-queue entries are pruned automatically, and resource handles are guaranteed to close. ## Table of Contents - [Core Benefits](#core-benefits) - [Prerequisites](#prerequisites) - [Quick Start](#quick-start) - [Demo](#demo) - [IDE Configuration](#ide-configuration) - [Keeping Memcord Updated](#keeping-memcord-updated) - [Using Memcord in a Project](#using-memcord-in-a-project) - [Basic Usage](#basic-usage) - [Summarizer Backends](#summarizer-backends) - [Documentation](#documentation) ## 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+ and uv are required. The installer handles both — click to expand manual instructions. - **Python 3.10+** — [python.org](https://python.org) - **uv** (Python package manager) — install with: **macOS / Linux:** ```bash curl -LsSf https://astral.sh/uv/install.sh | sh ``` **Windows (PowerShell):** ```powershell powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex" ```
## Quick Start **macOS / Linux:** ```bash curl -fsSL https://github.com/ukkit/memcord/raw/main/install.sh | bash ``` **Windows (PowerShell):** ```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 / Client | Guide | |---|---| | Claude Code CLI | [Installation Guide — Claude Code](docs/installation.md#claude-code-cli-recommended-) | | Claude Desktop | [Installation Guide — Claude Desktop](docs/installation.md#claude-desktop) | | VSCode + GitHub Copilot | [VSCode Setup Guide](docs/vscode-setup.md) | | Google Antigravity | [Installation Guide — Other MCP Apps](docs/installation.md#other-mcp-applications) | | Configuration templates | [`config-templates/`](config-templates/) ([README](config-templates/README.md)) | ### Manual Installation ```bash 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](docs/installation.md)** for updating, advanced options, and custom commands. ## Keeping Memcord Updated ```bash 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) ```bash # 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) ```bash # 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) ```bash 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](config-templates/README.md#auto-save-hooks-optional) for details. ### How Auto-Detection Works All read **and write** operations follow the same slot resolution priority: 1. Explicit `slot_name` argument (always wins) 2. Currently active slot (set by `memcord_use` or `memcord_name`) 3. `.memcord` binding file in the current working directory When the `.memcord` binding is used and the slot already exists, it is also **auto-activated** for the rest of the session — so subsequent operations skip re-detection automatically. This means after `memcord_init`, a fresh session (no `memcord_use` call needed) will correctly route `memcord_save`, `memcord_save_progress`, `memcord_configure`, and `memcord_read` to the bound slot. ## Basic Usage ### Saving & Retrieving ```bash 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 ```bash 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 ```bash memcord_init "." "my-project" # Bind a memory slot to this directory memcord_zero # Privacy mode — nothing gets saved ``` See **[Complete Tools Reference](docs/tools-reference.md)** 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. | Backend | Type | Speed | Quality | Extra install | |---|---|---|---|---| | `nltk` | Extractive | Fast | Good | None (built-in) | | `sumy` | Extractive (graph) | Fast | Better | None (built-in) | | `semantic` | Extractive (embeddings) | Medium | Best extractive | `uv pip install "memcord[semantic]"` (~80 MB) | | `transformers` | Abstractive (BART) | Slow | Best overall | `uv pip install "memcord[transformers]"` (~400 MB) | ### Switching Backends Use `memcord_configure` to change the backend for any slot — no restart required: ```bash # 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: ```bash export MEMCORD_SUMMARIZER=transformers ``` See **[Tools Reference — memcord_configure](docs/tools-reference.md)** for the full parameter list. ## Documentation | Guide | Description | |---|---| | **[Installation Guide](docs/installation.md)** | Complete setup instructions for all MCP applications | | **[Feature Guide](docs/features-guide.md)** | Complete list of features | | **[Tools Reference](docs/tools-reference.md)** | Detailed documentation for all 23 tools | | **[Import & Merge Guide](docs/import-and-merge.md)** | Comprehensive guide for Phase 3 features | | **[Search & Query Guide](docs/search-and-query.md)** | Advanced search features and natural language queries | | **[Usage Examples](docs/examples.md)** | Real-world workflows and practical use cases | | **[Data Format Specification](docs/data-format.md)** | Technical details and file formats | | **[Troubleshooting](docs/troubleshooting.md)** | Common issues and solutions | | **[Version History](docs/versions.md)** | Changelog for all releases | --- If you find this project helpful, consider: - ⭐ Starring the repository on GitHub - ☕ [Support Development](https://buymeacoffee.com/ukkit) - 🐛 Reporting bugs and suggesting features --- **MIT License** - see LICENSE file for details. --- ## Star History [![Star History Chart](https://api.star-history.com/svg?repos=ukkit/memcord&type=date&legend=top-left)](https://www.star-history.com/#ukkit/memcord&type=date&legend=top-left)