Engram MCP

A local code graph and context toolkit for agents: entities, Git relations and recorded mistakes served via CLI, hooks and MCP

  • 143 ★ on the repository
  • Last commit
  • Apache-2.0
MCP server

Extended access

Why this level

  • Hook installs and generators change project files and client settings
  • Graph context goes to the agent model, so mind its provider policy
All reasons and checks

nickcirv/engram

Install

In your terminal, with SkillFoxx CLI

npx skillfoxx add mcp/nickcirv-engram

Detects the agents on your machine, shows the access level and pins the version.

Other ways to install

Access and checks

How we review

Extended accessThe tool runs code or makes network calls and only reads external data.

  • Hook installs and generators change project files and client settings
  • Graph context goes to the agent model, so mind its provider policy

This is third-party code. Review the repository files before installing.

What it does

Engram indexes source code entities, Git relationships and selected project memory, and then serves context bounded in size. The graph sits in a local SQLite database inside the project `.engram/` directory and is reachable from the CLI, from agent hooks, through MCP and in a protected local dashboard. CLI queries: `query` searches the graph, `path` builds the shortest path, `gods` lists the most connected nodes, `callers` and `callees` show calls, `impact` estimates the effect of an edit, and `learn` and `mistakes` keep a memory of errors. For MCP there is the `engram-serve` executable with the tools `query_graph`, `god_nodes`, `graph_stats`, `shortest_path`, `benchmark` and `list_mistakes`. Generators `gen`, `gen-mdc`, `gen-aider`, `gen-windsurfrules` and `gen-ccs` prepare documents for Claude, Cursor, Aider and Windsurf.

Who it is for. Developers who work with agents across a large repository and want recorded mistakes and code relations carried into a new session.

Good fit when

  • You need to find authorization code before reading whole files, with a token budget on the answer
  • You want mistakes from the last session to reach the next one through `mistakes`
  • You need to estimate what an edit touches through `impact`, `callers` and `callees`
  • The project needs generated rules for Cursor, Aider or Windsurf from one graph

Not a fit when

  • You need a ready package with no build: the README describes a source build at a pinned commit
  • You need a guarantee of no network use: update checks and external providers may reach the network
  • The project is small and the search built into the agent is enough

Example request

Index the project, find nodes related to authorization, show the calling functions and mistakes from earlier sessions, within 2000 tokens

MCP

Transport
stdio, http
Authentication
not required

Environment variables

ENGRAM_NO_UPDATE_CHECK
Value 1 disables the npm update check.
ENGRAM_API_TOKEN secret
HTTP server token, otherwise read from a local file.

Limitations

The text names a source-inspected `engramx` 4.5.0 on Node 20 and newer and a build from a pinned commit, with no published package mentioned. The build uses `npm install --ignore-scripts`, and `init` installs a Sentinel hook by default, so use `--no-hook` for a first look. The graph is local but the whole system is not guaranteed to be network-free: there is an npm update check, an external Context7 call and providers through MCP or plugins, and `ENGRAM_NO_UPDATE_CHECK=1` turns off only the update check. The HTTP server listens on `127.0.0.1` and needs a token. Generators, hook installs and cache commands change local state.

How to disable. Run `hook-disable` or remove the hook, drop the `engram` registration from the client and delete the `.engram/` directory in the project.

FAQ

How do I connect the MCP server?

Set the command `node` with the arguments `/absolute/path/to/engram/dist/serve.js` and the absolute project path. The server exposes `query_graph`, `god_nodes`, `graph_stats`, `shortest_path`, `benchmark` and `list_mistakes`.

Where is the graph stored?

In a local SQLite database inside the project `.engram/` directory and the graph is built with `init` and `reindex`.

Does `init` install a hook?

Yes by default, a Sentinel hook. The `--no-hook` flag skips it and `install-hook --dry-run` shows the actions in advance.

Does Engram work offline?

The graph core is local, but the npm update check and external providers may use the network. `ENGRAM_NO_UPDATE_CHECK=1` turns off the update check.

How is the local HTTP server protected?

It listens on `127.0.0.1`, validates the Host and Origin headers and needs a token from `ENGRAM_API_TOKEN` or a local file.

Discussion

No questions or reviews yet.

Local code graph for agents: an MCP server returns entry points, symbol links and change impact in one call

MCP serverExtended access77.5KRepository stars

GraphMind

graphmind

Local MCP server that builds a code graph and remembers project decisions, so the agent stops re-reading the repo every session

MCP serverExtended access218Repository stars

CodeGraph (Rust)

codegraph-rust

A Rust code graph for agents: four MCP tools show what an edit will touch, how the architecture fits together and where the fragile spots are

MCP serverExtended access915Repository stars

Local code structure graph: builds a repository map with tree-sitter and serves the assistant only the context a change actually touches over MCP

MCP serverExtended access32.7KRepository stars

README in short

The text describes Engram as a code graph and context toolkit for agents, then a quick start with a source build and a query check, a table of implemented features, the architecture and privacy limits. Warnings cover the network, hooks and the local token.

README badge

Report a problem