v2.1.2 · MCP server · local-first

Persistent memory for AI coding agents.

A local-first MCP server that gives Claude Code, Codex, Cursor and any stdio-MCP client durable project memory — decisions, patterns, pitfalls, architecture notes, and team-shared knowledge.

~ — bash
$ npm install -g @lfrmonteiro99/memento-memory-mcp
$ memento-mcp install
$ memento-mcp import claude-md
$ memento-mcp ui  # open the local inspector

Agents are powerful. They are also amnesiac.

They forget why.

The decision you defended in three meetings? Gone next session.

You repeat context.

Every chat starts with the same paragraph of project lore.

Tokens drain.

Hand-pasted memory burns context windows you'd rather spend on code.

A typed memory layer that survives sessions.

Six memory types, ranked and retrieved by intent. Your agent stops guessing and starts remembering.

factdecisionpreferencepatternarchitecturepitfall
01

Local-first by default

SQLite + FTS5 search. No vector database required. No mandatory cloud account. Your project history doesn't quietly leak to a SaaS.

02

Team memory through git

Team-scoped memories serialize to .memento/memories/. Review, diff, commit, share — like normal project files.

03

Token-aware injection

Adaptive ranking with utility feedback. The right context lands in the prompt — not all of it, the right of it.

04

Optional embeddings

FTS5 and vector results merged through one ranker. Bring your own key when you want semantic search. Skip it when you don't.

05

Privacy that holds

<private>…</private> regions are excluded from search, embeddings, sync and LLM calls. Secret scrubbing at write time.

06

Per-project policy

.memento/policy.toml controls required tags, banned patterns, retention, and vault promotion — checked into the repo.

07

Session summaries

Capture the end-of-session signal deterministically, or with optional LLM-assisted summaries via Anthropic or OpenAI.

08

Local web inspector

memento-mcp ui opens a browser inspector for memories, sessions, projects, sync drift, analytics and health.

Capture. Store. Rank. Inject.

1

Agent activity

Decisions, pitfalls and patterns surface during a session.

2

Typed store

Memories are written to local SQLite with type, scope and tags.

3

Ranked retrieval

FTS5 + optional embeddings, scored by type, recency and utility.

4

Context injection

The right slice lands in your agent's prompt at the right time.

decision.json pitfall.json
{
  "type": "decision",
  "title": "Use repository classes for complex SQL",
  "body": "Keeps business logic out of controllers; easier perf tuning.",
  "scope": "project",
  "tags": ["architecture", "backend"],
  "created_at": "2026-04-25T12:04:11Z"
}

Your memory. Your machine. Your repo.

From npm to remembering, in four steps.

  1. Install

    npm install -g @lfrmonteiro99/memento-memory-mcp
  2. Wire your MCP client

    memento-mcp install

    Configures Claude Code, Codex, Cursor, or any other stdio-MCP client.

  3. Import existing project memory

    memento-mcp import claude-md --dry-run
    memento-mcp import claude-md --no-confirm
  4. Inspect & share

    memento-mcp ui              # local browser inspector
    memento-mcp sync init       # share team memory via git
    memento-mcp sync pull
" Stop pasting the same project explanation into every new chat like a medieval scribe with npm installed. "
— the README, unrepentantly