Skip to main content
ClaudeWave

engRAM - superior agentic memory, encrypted at rest. Fully encrypted offline vector memory for AI agents (Hermes, Claude, OpenClaw).

MCP ServersOfficial Registry3 stars0 forksPythonMITUpdated today
Install in Claude Code / Claude Desktop
Method: pip / Python · engram-memory-vault
Claude Code CLI
claude mcp add engram -- python -m engram-memory-vault
claude_desktop_config.json (Claude Desktop)
{
  "mcpServers": {
    "engram": {
      "command": "python",
      "args": ["-m", "engram-memory-vault"]
    }
  }
}
1. Run the command above in your terminal (Claude Code), or paste the JSON config into claude_desktop_config.json (Claude Desktop).
2. Replace any <placeholder> values with your API keys or paths.
3. Restart Claude. The MCP server and its tools appear automatically.
💡 Install first: pip install engram-memory-vault
Use cases

MCP Servers overview

# engRAM

### Superior agentic memory, encrypted at rest.

engRAM is the memory your AI agents plug into. Hermes, Claude, and
OpenClaw each register in one command; anything that runs a subprocess
can use the CLI. Every agent can share the same memory - even across
different machines. Everything is local. The default install never
touches the network: the embedding model ships inside the package, so
recall works as soon as the vault is open. Every byte at rest is
AEAD-encrypted, the vectors included. The vault locks itself on restart
or power loss and unlocks once per boot.

*An **engram** is the physical trace a memory leaves in the brain. This
one lives in **RAM**: the whole index is held in memory, which is what
makes it both the fastest place to search and the safest place to keep
plaintext, because nothing decrypted is ever written to disk.*

## Why engRAM

Most memory tools ask you to choose: powerful, or private, or easy. engRAM
refuses the trade, because one design decision delivers all three.

**Better recall.** engRAM does not just store chat, it decides what
matters. A bare "OK" answering "send this reply to the client?" is
captured as a consent decision, with its question, at the highest
priority. What you said about yourself and your machine outranks
background noise. Search is hybrid (meaning plus keywords) and, at
personal scale, mathematically exact: the top result is the true top
result, not an approximation. It learns you first, and forgets nothing.

**More secure, by construction.** Every byte at rest is authenticated-
encrypted, the embedding vectors included (most tools leave those in the
clear, and vectors can be inverted back toward text). Deletion is
cryptographic: destroy the record's key and it is gone, unrecoverable.
Tampering is detected, history is hash-chained, and the vault locks itself
on restart or power loss. It runs fully offline: a runtime guard aborts on
any network attempt, and CI proves it on three operating systems.

**Not one step harder.** One command installs it, creates the vault, and
wires your agent. No API key, no cloud account, no daemon. Unlock when you
want to use it; lock when you want it closed. By default an unlock stays
open for weeks (until restart or you lock it), like any app you leave
running. The security is free at the point of use because it falls out of
the architecture, not out of your patience: keeping plaintext off disk
forces the index into RAM, and a RAM-resident index is also the fastest
one there is. Secure and fast are the same choice here, and neither costs
you a configuration step.

## Install

One command per platform. Each installs the package, creates your
encrypted vault, and wires the agent.

**Claude (Code + Desktop)** - macOS / Linux:
```bash
pip install engram-memory-vault && engram init && engram integrate claude
```
Windows (PowerShell):
```powershell
py -m pip install engram-memory-vault; engram init; engram integrate claude
```
Registers the MCP server with the Claude Code CLI (user scope, all
projects), **imports any memories Claude Code already wrote to its own
file-based memory** (copy-only - the Markdown files are never modified;
`--no-import` opts out, `engram import-claude` does it later), and prints
the Claude Desktop config block. The server describes
itself over the MCP handshake - it tells the model to recall before answering
and to store durable facts, credentials, names, and decisions - so Claude
treats engRAM as its memory with no hand-written instruction; `integrate
claude` also writes a managed, idempotent block into your CLAUDE.md as backup.

**Hermes** - macOS / Linux:
```bash
pip install engram-memory-vault && engram init && engram integrate hermes
```
Windows (PowerShell):
```powershell
py -m pip install engram-memory-vault; engram init; engram integrate hermes
```
Installs the provider plugin, wires the Hermes venv, and runs
`hermes memory setup engram`. engRAM then appears in the
`hermes memory setup` picker beside hindsight and mem0, the only entry
marked **"no setup needed"**: no API key, no cloud account, no daemon.
Verify with `hermes memory status`. See everything Hermes remembers at
any time with **`engram dash`** - one command, and the vault opens in
your browser (memories by kind, growth, the relation graph, live
search); Ctrl-C closes it.

**OpenClaw** - macOS / Linux:
```bash
pip install engram-memory-vault && engram init && engram integrate openclaw
```
Windows (PowerShell):
```powershell
py -m pip install engram-memory-vault; engram init; engram integrate openclaw
```
Writes the `mcpServers` entry into `~/.openclaw/openclaw.json` (with a
backup), then: `openclaw gateway restart` and confirm with
`openclaw mcp list`.

**Any MCP client** - macOS / Linux / Windows:

```bash
pip install engram-memory-vault && engram init
```

Then add the server to your client's MCP config (stdio transport, no API
key, no environment variables):

```json
{
  "mcpServers": {
    "engram": {
      "command": "engram",
      "args": ["serve"]
    }
  }
}
```

`--vault` and `--caller` are optional (`engram --vault PATH --caller NAME
serve`); the defaults use `~/.engram/memory.vault` with caller `user`.
Client-by-client walkthroughs in
[docs/INTEGRATIONS.md](docs/INTEGRATIONS.md).

## Measured, on an 8 GB baseline laptop

Every number below is reproducible on your machine with `engram selftest`
and `engram bench`.

| Metric | Measured |
|---|---|
| Fresh install → open vault, offline | seconds, zero network |
| Vector search, 20k records (HNSW) | p95 0.68 ms |
| Full hybrid search (embed + vector + BM25 + fuse) | p95 8.8 ms |
| Peak RSS, model + vault + index resident | 319 MB |
| Store one memory (embed + encrypt + fsync journal) | ~40 ms |
| Wheel size, model included | ~30 MB |
| Test suite (crypto, tamper, crash, offline, concurrency, 2FA, graph, dash) | 88 tests, ~40 s |

A single network round-trip to a cloud memory API costs more than this
entire pipeline. The property that makes engRAM secure (no plaintext
index ever on disk, so all search is RAM-resident) is the same property
that makes it fast: below 20k records search is exact SIMD matrix math,
recall = 1.0 by construction; above it, SIMD HNSW at ~99% recall.

## The memory logic

Full write-path, decision math, and comparisons in
[docs/MEMORY.md](docs/MEMORY.md). The load-bearing ideas:

**Nearly everything is stored; nothing important is buried.** Only empty
turns are dropped. A bare "OK" is not noise, it is a decision: when the
agent asks *"Want me to send this reply to the client now?"* and the user
answers *"OK"*, engRAM resolves the question from the conversation and
stores
`[decision 2026-07-20] Approved (answered "OK"): Want me to send this
reply to the client now?` at the top importance tier. Asking *"did the
user say to email the client?"* later retrieves exactly that record.

**Deterministic importance tiers rank recall**: decisions/consent 0.90,
personal facts and preferences 0.80, the user's machine and configuration
0.75, other substantive statements 0.55, pleasantries 0.20 (kept, ranked
last). The fused score is
`RRF(vector) + RRF(keyword) + 0.02·cosine + 0.006·importance`: cosine
magnitude keeps the genuinely best match on top, importance settles
near-ties in favor of what matters. The agent learns the user and the
computer first, the world second, and forgets nothing.

**One memory, not two.** Agent hosts increasingly ship a memory of their
own - Claude Code keeps per-project Markdown files with an auto-loaded
index. Two memories means facts land in whichever one the model happened to
think of, and neither is complete. engRAM takes over on install: it imports
what the file memory already holds, and both the MCP handshake and the
managed CLAUDE.md block tell the model that engram supersedes it - write
every new memory here, treat the files as a read-only archive. One vault,
encrypted, shared by every agent and project on the machine. Nothing is
deleted; the files stay exactly where they were.

**Capture that does not depend on the model.** Instructions are a request,
and a host that declares its own memory in its system prompt outranks
anything a tool says. So `engram integrate claude` also installs a
`PostToolUse` hook: when Claude Code writes a memory file, the fact lands in
the vault whether or not the model ever thought about engram. The hook is
additive and idempotent (your other hooks are untouched, settings.json is
backed up first), it exits successfully no matter what - a memory tool must
never break your editor - and it stays quiet when the vault is locked.
`engram hook status | install | uninstall`, or `integrate claude --no-hooks`.

**See what it just learned.** `engram recent` lists the newest memories,
newest last, hiding the thousands of seeded starting facts so the handful
that real use produced are actually visible - and `engram status` reports
`organic_records` beside the total, so a vault that has learned nothing can
never look busy. Same view over MCP as `memory_recent`.

**One pinned embedding space.** The model's SHA-256 is recorded in the
vault and enforced at open; cosine comparisons stay mathematically valid
forever instead of silently degrading when a model changes. Migration is
explicit: `engram reindex --re-embed`.

**No LLM inside.** Embeddings run locally (bundled 384-dim int8 ONNX
model, <300 MB RAM). Judgment belongs to the host model you already run,
via `engram_store` / `engram_forget`; engRAM contributes deterministic
capture, encryption, and total recall. That split is what makes the
offline guarantee absolute and every decision reproducible. Pair engRAM
with an offline LLM and the whole agent stack can run usefully with no
network at all.

## Agent-native by design

engRAM is built to sit under agents you already use, not as a separate
app you babysit.

- **Hermes native provider** - shows up in `hermes memory setup` with
  **"no setup needed"**. Turns sync automatically; search injects only
  what is releva
agent-memoryai-agentsclaudeencryptionhermeslocal-firstmcpmcp-servermemorymodel-context-protocolofflineprivacypythonvector-database

What people ask about engRAM

What is MaxFreedomPollard/engRAM?

+

MaxFreedomPollard/engRAM is mcp servers for the Claude AI ecosystem. engRAM - superior agentic memory, encrypted at rest. Fully encrypted offline vector memory for AI agents (Hermes, Claude, OpenClaw). It has 3 GitHub stars and was last updated today.

How do I install engRAM?

+

You can install engRAM by cloning the repository (https://github.com/MaxFreedomPollard/engRAM) or following the README instructions on GitHub. ClaudeWave also provides quick install blocks on this page.

Is MaxFreedomPollard/engRAM safe to use?

+

MaxFreedomPollard/engRAM has not been audited yet by our security agent. Review the original repository on GitHub before using it in production.

Who maintains MaxFreedomPollard/engRAM?

+

MaxFreedomPollard/engRAM is maintained by MaxFreedomPollard. The last recorded GitHub activity is from today, with 0 open issues.

Are there alternatives to engRAM?

+

Yes. On ClaudeWave you can browse similar mcp servers at /categories/mcp, sorted by popularity or recent activity.

Deploy engRAM to your cloud

Ship this repo to production in minutes. Each platform spins up its own environment with editable env vars.

Maintain this repo? Add a badge to your README

Drop the badge into your GitHub README to show it's tracked on ClaudeWave. Each badge links back to this page and reflects the live Trust Score.

Featured on ClaudeWave: MaxFreedomPollard/engRAM
[![Featured on ClaudeWave](https://claudewave.com/api/badge/maxfreedompollard-engram)](https://claudewave.com/repo/maxfreedompollard-engram)
<a href="https://claudewave.com/repo/maxfreedompollard-engram"><img src="https://claudewave.com/api/badge/maxfreedompollard-engram" alt="Featured on ClaudeWave: MaxFreedomPollard/engRAM" width="320" height="64" /></a>

More MCP Servers

engRAM alternatives