# open-memex [Health: Active]

**Category:** 🗄️ Databases  
**Repository:** https://github.com/stoneskin/open-memex  
**GitHub Stars:** 5  
**Views:** 0  
**Installs:** 0  
**Upvotes:** 0  
**Directory Page:** https://allmcps.com/mcp/open-memex

## Description
Local-first memory for AI coding agents — Markdown + SQLite FTS5, shared across editors via MCP.

## Tools
Capabilities this server exposes over MCP:

- **memory_status** — Show the sync queue: outbox drafts, repo review states, uncommitted files
- **memory_submit** — Move named drafts into the repo memory dir (local branch + commit)
- **memory_propose** — Copy personal memories into the project scope as review candidates
- **memory_promote** — Advance `proposed → approved → published` (or reject / resubmit)
- **memory_resolve** — List conflicted memory files / 3-way-merge one of them
- **memory_pr_status** — Map the branch PR's GitHub state onto each memory's review state

## Claude Desktop Quick Installation
No confirmed install details yet, so no config is published. Follow the setup steps in the repository above.

## Documentation

## What open-memex does

The open-memex MCP server provides persistent, local-first memory for AI coding agents. It stores individual memories as plain Markdown files and maintains a rebuildable SQLite FTS5 index for keyword retrieval. The Markdown files remain the source of truth, so developers can inspect, edit, delete, or search them directly.

Memories use two scopes. Project memories describe a repository’s decisions, constraints, and lessons. Personal memories describe an individual’s preferences or habits and remain on the local machine. Project memories can move through a review workflow before they are shared through Git; personal memories cannot be shared into a repository.

This places open-memex in the 🧠 Knowledge & Memory category. It is intended for coding environments where context should persist between sessions and remain available to several editors on the same machine.

## How it works

The open-memex MCP server runs locally and communicates with MCP-capable editors. Editors can use the same memory store, so a memory captured in one supported environment can be available to another on that machine. MCP does not provide a universal session-start hook, so MCP clients receive usage guidance through the handshake and editor instruction files; the native opencode plugin has built-in first-turn recall instead.

New memories are written as Markdown and indexed for keyword search. The SQLite index is an accelerator rather than the canonical store and can be rebuilt with the CLI. The project-sharing workflow uses local branches, commits, review states, and pull requests rather than automatic publication.

## Setup and configuration

Install Node.js 22.14 or newer, then install the package globally with npm:

```sh
npm install -g open-memex
open-memex init
```

The `init` command detects supported editors and connects them to open-memex. It can also be run for a specific client, such as Cursor or VS Code. Claude Code can register the server with `claude mcp add open-memex -- open-memex mcp`, while other MCP clients can use the configuration printed by `open-memex mcp --print-config`. Restart the editor after setup. `open-memex doctor` checks the installation and wiring.

## Tools and capabilities

The provided MCP tools support these operations:

- `memory_status` reports queued drafts, repository review states, and uncommitted files.
- `memory_submit` moves named drafts into the repository memory directory through a local branch and commit.
- `memory_propose` copies personal memories into project scope as review candidates.
- `memory_promote` advances a memory through proposed, approved, and published states, or rejects and resubmits it.
- `memory_resolve` lists conflicted memory files and performs a three-way merge for a selected file.
- `memory_pr_status` maps the branch pull request’s GitHub state to each memory’s review state.

Together, these tools support controlled movement from local capture to reviewed project knowledge.

## Limitations and notes

Memory is shared automatically only between editors using the same machine and local store. Different machines do not synchronize automatically. The MCP path does not have a hard session-start hook, and agents must follow the guidance supplied through MCP and editor instructions. The opencode native plugin is the exception described in the project documentation.

The local design means data stays on the machine unless a developer explicitly shares project files. Team sharing follows Git review rather than automatic synchronization. Node.js 22.14 or newer is required because of the SQLite driver requirement.

_Full upstream README: https://allmcps.com/mcp/open-memex/readme_

