Local MCP memory server with encrypted three-tier storage and cue-based recall for AI coding assistants.
Copy the AI prompt to install this server into Claude Code, Cursor, or another agent — or use 1-click editor setup below.
We ran the install command below but it didn't respond within our test window — this can mean a slow first-time install rather than a real problem.
uvx iai-pmeNo response to initialize.
This is an experimental automated check and can have false negatives — missing environment variables, a slow cold install, etc. It doesn’t necessarily mean something’s wrong. Last checked 1mo ago.
💡 Paste the JSON block into your client's configuration file under mcpServers, then restart the application.
Inspect callable tools, capabilities, and parameters exposed to AI agents by Iai Personal Memory Engine.
memory_recallCue-based recall — returns hits **and anti-hits**: memories that *contradict* the cue surface next to the ones that match, so a stale fact can't masquerade as current.
memory_temporal_recallTime-anchored recall — *"what did I say about pricing in May?"*
memory_recall_structuralRetrieve by the *shape* of a memory (the HD substrate), not just its embedding.
memory_searchPlain text search over the store.
memory_captureWrite a memory explicitly (ambient capture normally does this for you).
memory_contradictRecord that a fact changed. The old version is archived, not erased — both stay retrievable. That's the Rescue@10 and historical-verbatim story in the [benchmarks](#benchmarks).
English | 中文
Keeps every conversation word-for-word and gives your AI agent the right
context on every turn — including the old wording when a fact changes.
Quick start · How it works · Benchmarks · Compatibility · Technical reference
Your AI agent forgets everything the moment you close the session. iai-memory fixes that, on your own machine. Switch the hooks on and it records both sides of every conversation word-for-word, then feeds the agent the part of your history that matters on every message — not just when a session starts. No memory file to maintain, no “remember this.”
When a fact changes, the old one isn't overwritten. The new version is stored and linked back to what it replaced, so you can still pull up both. When something contradicts itself, recall shows you the conflict instead of quietly handing over a stale answer as if it were true.
It's memory built around you and one agent — not a memory API for a multi-tenant app, and not a wrapper around someone else's database. What you say is stored once, verbatim, and never rewritten. The store, the search, the graph, the dashboard: all of it runs on your machine.
The memory style is autistic by design. It keeps the literal wording instead of smoothing it into a paraphrase, holds onto precise cues, and leaves rare things rare instead of averaging them away. Why the name.
Then run inside Claude Code:
Restart the session, then verify:
Python 3.11 is also supported.
This builds the Rust engine and TypeScript wrapper, installs the background service and hooks, registers Claude Code, and runs the health check. It requires Git, Python 3.11/3.12, Node.js 18+, and Rust. To inspect the steps without changing anything:
Replace codex with cursor, antigravity, hermes, openclaw, or all.
MCP tools work with any MCP-over-stdio client; automatic capture and context
injection depend on the hooks exposed by the host. See the
technical reference.
New stores use the native engine format by default; an existing store keeps its
current format on upgrade. To move an existing legacy SQLite store onto the
native engine, run iai-mcp migrate-to-lilli — iai-mcp doctor prints the exact
command, and the technical reference documents the full flow.
| Event | Action |
|---|---|
| Prompt | New turns are appended to a session buffer as file IO; no embedding or engine RPC is needed on the capture path |
| Session end | Remaining transcript content is rolled over for ingestion; hook failures do not block the host |
| Session start | A bounded memory prefix is exposed as host context; an empty store or unavailable engine yields empty output |
| Later turns | Supported hosts receive a small foresight or delta pack with age and revision markers |
| Idle time | Captures are embedded, deduplicated, encrypted, inserted, clustered, consolidated, reinforced, and decayed |
The background process is called the daemon in the CLI. The MCP wrapper and
iai can still read the local store directly when it is asleep or temporarily
unavailable.
| Tier | Contains |
|---|---|
| Episodic | Timestamped, write-once fragments of what was said |
| Semantic | Summaries induced from related episodes during idle consolidation |
| Procedural | Ten bounded behavioural parameters learned over time |
Distinct hyperdimensional representations keep literal detail, semantic structure, and behavioural tendencies from collapsing into one vector surface.
The local, LLM-free recall path combines semantic similarity, graph evidence,
recency, temporal validity, and lexical evidence. memory_recall returns both
hits and anti_hits; memory_contradict closes the old record's validity
interval, creates a new record, and links the two.
While idle, the engine groups related episodes, induces semantic memory,
reinforces useful paths, and decays weak unreviewed edges. One optional REM step
may invoke claude -p through the user's existing Claude subscription, capped
at no more than 1% of the daily quota. No Anthropic API key is required.
| Component | Role |
|---|---|
| Hippo | Encrypted records, vector index, and graph in one local store |
| MOSAIC | Leiden-family community detection with stable community identity |
| Lilli HD | Hyperdimensional substrate and structural recall |
| Native engine | Rust embedder and graph kernels |
The local dashboard searches the store, exposes graph neighbourhoods and contradictions, pins or fades memories, ingests files, controls the background engine, and reports token-use estimates from your own store.
iai upload accepts documents, Office files, e-books, source code,
configuration files, and directories. Full formats and administrative commands
are listed in docs/REFERENCE.md.
Every harness ships in bench/; methodology and reproduce commands are in
BENCHMARKS.md.
| Benchmark | Result |
|---|---|
| Rescue@10 after contradiction | 1.000 |
| Historical-verbatim hit@10 | 1.000 |
| LongMemEval-S R@5, product embedder | 0.962 |
| LongMemEval-S R@10, product embedder | 0.978 |
Historical-verbatim retrieval uses a flat-cosine baseline of about 0.71. With
the matched all-MiniLM-L6-v2 embedder, iai-memory and mempalace v3.3.6 both
score R@5 0.966 and R@10 0.978; no win is claimed.
On the author's store, an automatically injected memory pack averaged about
350 tokens versus about 2,850 tokens for the agent-search round trip it
replaced: approximately 88% cheaper on that measured workload. This does not
apply to explicit memory_recall, whose default response budget is 1,500
tokens.
Fourteen tools cover cue, temporal, structural, and lexical recall; capture and correction; reinforcement and consolidation; behavioural-profile control; and store introspection.
| Host | Ambient behaviour |
|---|---|
| Claude Code | Session-start recall, per-turn updates, turn capture, and session capture |
| Codex CLI | Full integration through Codex hooks |
| Cursor | Session-start recall and capture; no per-turn text injection |
| Antigravity | Recall per invocation and lossless transcript capture |
| Hermes 0.5.0+ | Recall before model calls and capture from its message store |
| OpenClaw | MCP tools on request; no ambient shell hooks |
| Gemini CLI and other MCP hosts | MCP tools; no bundled host-specific hooks unless listed above |
| Claude Desktop | MCP tools; plain Chat does not expose Claude Code-style ambient hooks |
Factual signals from GitHub, npm, and our automated checks — not a rating.
No reviews yet — be the first to share how this listing worked for you.
Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.
[](https://allmcps.com/mcp/codeabra-iai-personal-memory-engine)<a href="https://allmcps.com/mcp/codeabra-iai-personal-memory-engine"><img src="https://allmcps.com/api/badge/codeabra-iai-personal-memory-engine?style=directory" alt="Iai Personal Memory Engine on AllMCPs" /></a>