
Melchizedek
io.github.louis49Published by GitHub account louis49v1.0.2Updated Oct 25, 2026
Persistent memory for Claude Code — offline, single-file, hybrid search.
Overview
Local MCP server that indexes Claude Code conversation transcripts into a single SQLite file and lets the assistant search past sessions across projects.
- What you can do
- Search indexed conversations with compact snippets, date filters and ordering, then pull surrounding context or full chunk content for drill-down retrieval. Find past sessions that touched a specific file, past fixes for an error message, or earlier approaches to similar work. Save manual memory notes and list indexed sessions, optionally filtered by project. Inspect index statistics and configuration, and change settings. Remove individual chunks or whole sessions from the index, exclude or re-include projects, and restart the server.
- When to use it
- Useful if you work in Claude Code across many sessions and projects and want earlier debugging steps, architectural decisions and code patterns recalled automatically instead of re-explaining them. Best for users who want this history kept entirely on their own machine.
- Requirements
- Runs locally over stdio as an npm package, needing Node.js 20 or newer and Claude Code 2.0 or newer on macOS, Linux or Windows. Automatic indexing requires SessionEnd hooks added to the Claude Code settings file. Optional embedding and reranker models download on first use.
Installation
In SourceWeft
- Open Melchizedek in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Other MCP clients
Follow the launch instructions in the repository.
README
Melchizedek
[npm version] [npm downloads] [CI] [License: MIT] [Donate] [Donate]
Persistent memory for Claude Code. Automatically indexes every conversation and provides production-grade hybrid search (BM25 + vectors + reranker) via MCP tools. 100% local, zero config, zero API keys, zero invoice.
Why Melchizedek?
Claude Code forgets everything between sessions - and knows nothing about your other projects. Melchizedek fixes both.
It runs silently in the background - indexing your conversations as you work - then gives Claude the ability to search across your entire history, across all projects: past debugging sessions, architectural decisions, error solutions, code patterns.
No cloud. No API keys. No config. Plug and ask.
How it works
Search pipeline - 4 levels of graceful degradation
Every layer is optional. The plugin works with BM25 alone and gets better as more components are available.
Performance
Measured with npm run bench - 100 sessions, 1 000 chunks, on a single SQLite file.
Quick Start
npm (recommended)
Add the MCP server to Claude Code:
npx (no install)
From source
Claude Code plugin marketplace (coming soon)
Plugin review pending. In the meantime, use npm or npx install above.
Setting up hooks (automatic indexing)
The MCP server provides search tools, but hooks trigger automatic indexing. Without hooks, you'd need to manually index sessions.
For marketplace installs, hooks are configured automatically. For npm/npx/source installs, add hooks to ~/.claude/settings.json.
See docs/installation.md for the full JSON configuration, hook reference, and troubleshooting.
After setup, restart Claude Code. Indexing starts automatically.
MCP Tools
Search (start here)
Progressive retrieval pattern - search returns ~50 tokens/result, context ~200-300, full ~500-1000. Start with m9k_search, drill down only when needed. 4x token savings vs loading everything.
Context-aware ranking - results from your current project (×1.5) and current session (×1.2) are automatically promoted. Cross-project results remain visible.
Specialized search
Memory management
Usage guide
Configuration
Zero config by default. Everything is tunable via m9k_config or environment variables.
See docs/configuration.md for the full settings reference (20+ options, env vars, config file examples).
Enhanced Search
Melchizedek works out of the box with BM25 keyword search. Text embeddings (MiniLM) download automatically on first use for semantic search.
For GPU-accelerated code embeddings (Ollama), cross-encoder reranking (GGUF models), platform-specific setup guides, and the full model reference, see Enhanced Search Setup.
How is this different?
Inspirations
This project stands on the shoulders of others. Key ideas borrowed from:
Known issues
- Session boost inactive - Claude Code currently sends an empty
session_idin the SessionStart hook stdin payload, preventing the ×1.2 session boost from working. The ×1.5 project boost is unaffected and provides the primary context-aware ranking. Related upstream issues: #13668 (emptytranscript_path), #9188 (stalesession_id). Melchizedek's session boost code is tested and ready, and will activate automatically when the upstream fix lands.
Privacy
- Zero telemetry. No tracking, no analytics, no network calls (except optional lazy model download).
- Read-only on transcripts. Never writes to
~/.claude/projects/. All data in~/.melchizedek/. <private>tag support. Content between<private>...</private>is replaced with[REDACTED]before indexing.- Local-only. Your conversations never leave your machine.
Requirements
- Node.js >= 20
- Claude Code >= 2.0
- macOS, Linux, or Windows
License
MIT
"Without father, without mother, without genealogy, having neither beginning of days nor end of life."
- Hebrews 7:3
Built by @louis49
Source: README.md at commit 3053612
Tools
0Version history
1- v1.0.2LatestSep 16, 2026
Score
50% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 days25 pts
Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.
- Auth declared10 pts
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts