Memorix

Local project memory shared by coding agents, kept per Git repository in SQLite

By Le_Ho (individual) TypeScript Local · stdio, Streamable HTTP Knowledge and memoryDeveloper tools

69 popularity score ★ 915 ↓ 1.1k/wk

Connect your client

Local (once it is running)

Add in one click

Opens the app, which asks before it adds the server.

Or add it by command or config

Claude CodeTerminal
claude mcp add --transport http memorix http://localhost:3211/mcp
Cursor~/.cursor/mcp.json
{
  "mcpServers": {
    "memorix": {
      "url": "http://localhost:3211/mcp"
    }
  }
}
VS Code.vscode/mcp.json
{
  "servers": {
    "memorix": {
      "type": "http",
      "url": "http://localhost:3211/mcp"
    }
  }
}
Codex~/.codex/config.toml
[mcp_servers.memorix]
url = "http://localhost:3211/mcp"
Gemini CLITerminal
gemini mcp add --scope user --transport http memorix http://localhost:3211/mcp
Local (npm)

Add in one click

Opens the app, which asks before it adds the server.

Or add it by command or config

Claude CodeTerminal
claude mcp add memorix -- npx -y memorix serve
Claude Desktopclaude_desktop_config.json
{
  "mcpServers": {
    "memorix": {
      "command": "npx",
      "args": [
        "-y",
        "memorix",
        "serve"
      ]
    }
  }
}
Cursor~/.cursor/mcp.json
{
  "mcpServers": {
    "memorix": {
      "command": "npx",
      "args": [
        "-y",
        "memorix",
        "serve"
      ]
    }
  }
}
VS Code.vscode/mcp.json
{
  "servers": {
    "memorix": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "memorix",
        "serve"
      ]
    }
  }
}
Codex~/.codex/config.toml
[mcp_servers.memorix]
command = "npx"
args = ["-y", "memorix", "serve"]
Gemini CLITerminal
gemini mcp add --scope user memorix npx -- -y memorix serve

Settings 6

MEMORIX_MODE Optional: Tool profile: micro (stdio default, 9 tools), lite, team or full.
MEMORIX_LLM_API_KEY Optional: Key for the optional LLM used in memory formation; ATLASCLOUD_API_KEY or REQUESTY_API_KEY also work for those providers.
MEMORIX_EMBEDDING_API_KEY Optional: Key for the optional embedding provider; OPENROUTER_API_KEY is accepted for OpenRouter.
MINIMAX_API_KEY Optional: MiniMax key for billed image and video generation (MINIMAX_CN_API_KEY for the China region).
MEMORIX_MCP_MEDIA_GENERATION Optional: Set to 1 to let MCP clients request MiniMax generation; off by default.
MEMORIX_SYNC_PROVIDER Optional: Turns on opt-in multi-device sync to GitHub JSONL, filesystem, S3 or Postgres.

What it does

Memorix keeps a searchable memory for a software project so that facts, fixes, design decisions and session summaries outlive a single chat. The memory belongs to the Git repository rather than to one agent, so Claude Code, Codex, Cursor and other MCP clients can all read and add to the same pool. Data is stored locally in SQLite; small projects are searched in process and larger ones through a SQLite full-text index, with an optional local semantic index.

The MCP server is started with `memorix serve` and speaks stdio. Beyond plain notes, the package can turn commits into searchable facts, record the reasoning behind decisions, and build a short task brief from current memory and code. The same npm package also ships a CLI, a local dashboard, an HTTP service and a bundled terminal coding agent (memcode).

The tool set is split into profiles. Per `src/server/tool-profile.ts` at v1.9.10, 48 tools are defined in all, but stdio starts in the `micro` profile with 9 of them (store, search, detail, project context, context pack, code-graph status, resolve, session start and media). `lite` has 21, `team` (the HTTP default) 29 with task, message and file-lock coordination, and `full` all 48, including nine knowledge-graph tools that mirror the reference MCP memory server. Pick the profile with `MEMORIX_MODE` or `--mode`.

What it needs

RuntimeNode.js 22+

Node.js 22.18.0 or newer and Git: project identity comes from the Git root, so it should be started inside a repository or bound to one with memorix_session_start. An LLM or embedding provider key (OpenAI, OpenRouter, Atlas Cloud, Requesty) is optional and only improves memory formation and retrieval. MiniMax media generation needs MINIMAX_API_KEY, which is billed by MiniMax. The shared HTTP endpoint at http://localhost:3211/mcp needs `memorix background start` (after npm install -g memorix) or the repository's Docker Compose file.

Limits

By default the stdio server shows only 9 of its 48 tools. Reasoning, timeline, team coordination and knowledge-graph tools need MEMORIX_MODE set to lite, team or full. Search covers the current project by default. Code memory builds source-backed symbols only for TypeScript and JavaScript; other languages get a lighter structural index. Imported media may be up to 100 MiB by default, and automatic image analysis is capped at 20 MiB. Generating images or video over MCP is off unless MEMORIX_MCP_MEDIA_GENERATION=1. Running `memorix` with no argument opens the memcode terminal agent rather than the server, so clients must pass `serve`.

Who it suits

It suits developers who switch between several coding agents on the same repository and want them to share notes, decisions and commit history without a hosted service: everything sits in local SQLite unless you choose sync. It is a large package that also installs plugins, hooks and rule files into agents through `memorix setup`. If you only need a small key-value or knowledge-graph memory and no Git-scoped project features, a lighter memory server may fit better. Teams who want one shared endpoint can run its HTTP service or Docker image instead of stdio.

Tools 48

memorix_store
Save a fact, fix, gotcha or note to the project memory
memorix_search
Search project memory, or across projects with a global scope
memorix_detail
Fetch the full record for search hits
memorix_project_context
Build a short task brief from memory, code and workflows
memorix_context_pack
Assemble a bounded context pack for a task
memorix_codegraph_status
Report the state of the local code index
memorix_resolve
Mark memories as resolved so they drop out of results
memorix_session_start
Start a session and bind it to a project root
memorix_media
Import, attach, list and derive media assets; generation is opt-in
memorix_evidence
Inspect the evidence behind retrieved memories
memorix_feedback
Record whether a retrieved memory was useful
memorix_continuity
Recover context saved across context compaction
memorix_graph_context
Return graph context linked to memories
memorix_timeline
Show memories before and after a given record
memorix_suggest_topic_key
Suggest a stable topic key for a memory
memorix_session_end
Close a session with a summary
memorix_session_context
Load context from earlier sessions
memorix_store_reasoning
Record a design decision with alternatives and trade-offs
memorix_search_reasoning
Search stored design reasoning
memorix_transfer
Export or import project memory
memorix_retention
Review and apply retention to stale memories
memorix_dashboard
Open the local web dashboard
memorix_knowledge
Review claims and compile Knowledge Workspace pages and workflows
memorix_handoff
Hand a task over to another agent with context
memorix_poll
Check for new tasks, messages and handoffs
team_manage
Join, leave or list agents on a team
team_message
Send and read messages between agents
team_task
Create, claim and complete shared tasks
team_file_lock
Take or release a lock on a file
memorix_audit_project
Audit the project's memory for problems
memorix_deduplicate
Find and merge duplicate memories
memorix_consolidate
Merge related memories into fewer records
memorix_formation_metrics
Report memory formation statistics
memorix_skills
List or generate project skills from memory
memorix_promote
Promote durable knowledge into a skill or rule
memorix_rules_sync
Sync rule files between agents
memorix_workspace_sync
Sync MCP and workspace configs between agents
memorix_ingest_image
Legacy tool to analyse an image into memory
memorix_compaction_checkpoint
List, show or archive compaction checkpoints
create_entities
Knowledge-graph compatibility: create entities
create_relations
Knowledge-graph compatibility: create relations
add_observations
Knowledge-graph compatibility: add observations to entities
delete_entities
Knowledge-graph compatibility: delete entities
delete_observations
Knowledge-graph compatibility: delete observations
delete_relations
Knowledge-graph compatibility: delete relations
read_graph
Knowledge-graph compatibility: read the whole graph
search_nodes
Knowledge-graph compatibility: search nodes
open_nodes
Knowledge-graph compatibility: open nodes by name

Similar servers