Engram
Local-first persistent memory for AI agents — SQLite + local embeddings, MCP-native, no cloud.
Connector by HBarefoot · GitHub account verified by the MCP Registry
Install
Works with Claude Code, Codex, VS Code, Cursor, Windsurf, Claude Desktop. Read the repository before you give any tool access to your data.
npx agentmarket install connector/hbarefoot-engram
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this server can do and what it asks for, from its tool list and install config. Checked Oct 25, 2026.
- Tools
- 2 read · 3 write · 0 delete · 1 not yet classified
- Secrets
- None asked for
- Install scripts
- Not scanned yet
- Runs as
- Node.js package
Tools by what they do 6
Read from the source code; the running server may list different tools.
Read 2 · Look things up without changing anything.
engram_recallengram_status
Write 3 · Create, change, send or run things.
engram_contextengram_feedbackengram_remember
Not yet classified 1 · We could not tell from the name and description.
engram_forget
Tools (6)
Read from the source code; the running server may differ. Descriptions are the server’s own words; hidden characters are shown as [U+…].
engram_contextBuild a single pre-formatted context block from relevant memories, ready to inject into a system prompt at session start. With a query it selects semantically relevant memories; with no query it returns the top memories by access frequency and recency. The block is rendered in the requested format and truncated to fit max_tokens. Returns: one formatted string (not an array) — contrast with engram_recall, which returns raw scored memory objects. Use when you want drop-in context text; use engram_recall when you need structured results to reason over.
engram_feedbackRecord a helpful/unhelpful vote on a recalled memory to tune future ranking. Updates the memory's aggregated feedback_score (−1 to 1), which feeds the recall score (weight 0.10); after 5+ votes it may auto-adjust the memory's confidence (strongly negative lowers it, strongly positive raises it). Returns: the updated feedback stats for that memory. Call right after acting on a memory from engram_recall to close the learning loop; to remove a bad memory outright, use engram_forget instead.
engram_forgetPermanently delete one memory by id. Irreversible — also removes that memory's feedback rows. Returns: whether a memory with the given id was found and deleted; reports not-found without error if the id doesn't exist. Use when a memory is wrong, outdated, or the user asks you to forget it. If you're unsure, downvote with engram_feedback (helpful:false) instead of deleting.
engram_recallRetrieve memories relevant to a query, ranked by a hybrid score. Embeds the query, gathers candidates (FTS5 top-20 plus in-namespace embeddings, optionally time-filtered), and scores each by similarity×0.45 + recency×0.15 + confidence×0.15 + access×0.05 + feedback×0.10 + a 0.1 FTS boost, then filters by category/threshold and returns the top results. If embedding generation fails it falls back to FTS-only search. Reading a memory bumps its last_accessed and access_count. Returns: an array of memory objects — each with id, content, category, entity, confidence, namespace, tags, timestamps, scor…
engram_rememberStore a durable memory (fact/preference/pattern/decision/outcome) that persists across sessions. Every write is scanned for secrets (16+ patterns — OpenAI/Stripe/AWS/GitHub/Slack/Google keys, private keys, connection strings, JWTs): by default detected secrets are redacted to [REDACTED] before storage, or the write is rejected if auto-redaction is disabled. Category and entity are auto-extracted when omitted, a local embedding is generated, and the content is deduplicated against existing memories. Returns: the memory id plus an outcome — "created" (new), "merged" (0.92–0.95 cosine to an exist…
engram_statusReport Engram health and statistics. Read-only and parameter-free. Returns: memory counts by category and namespace, embedding-model status (name, cached/loaded state, size), the database location, and key config (default namespace, recall limit, confidence threshold, secret-detection on/off). Use as a diagnostics/health check — to confirm the model is loaded and see how many memories exist — before relying on recall.
Signals
- Stars
- 9
- Forks
- 1
- Open issues
- 2
- Weekly downloads
- 53
- Last commit
- Jul 7, 2026 (3 months ago)
- Last release
- Jul 6, 2026 (3 months ago)
- Last package publish
- Jul 6, 2026 (3 months ago)
From GitHub (fetched Oct 24, 2026) and the package registry.
Details
- Registry name
io.github.HBarefoot/engram- Version
- 1.6.3
- Auth
- No auth
- Packages
- npm @hbarefoot/engram
- License
- MIT
- Repository
- github.com/HBarefoot/engram
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
Cite this page
Engram MCP server. Agent Mart. https://agentmart.dev/connectors/hbarefoot-engram (last updated 2026-10-24)