Make0 Brain

Registre officiel Outils de développement

One shared, versioned memory for Claude Code, Cursor, Codex and every MCP agent. Local and offline.

Installation

Ajoutez ceci à la configuration MCP de votre client (Claude Desktop : claude_desktop_config.json ; Cursor : .cursor/mcp.json ; VS Code et les autres utilisent la même forme « mcpServers »).

NPM package @make0-ai/brain
Claude Code
claude mcp add make0-brain -e 'MAKE0_BRAIN_HOME=<MAKE0_BRAIN_HOME>' -e 'OPENAI_API_KEY=<your openai_api_key>' -- npx -y @make0-ai/brain@0.1.2
Configuration JSON (Claude Desktop, Cursor, VS Code)
{
    "mcpServers": {
        "make0-brain": {
            "command": "npx",
            "args": [
                "-y",
                "@make0-ai/brain@0.1.2"
            ],
            "env": {
                "MAKE0_BRAIN_HOME": "<MAKE0_BRAIN_HOME>",
                "OPENAI_API_KEY": "<your openai_api_key>"
            }
        }
    }
}

Variables d'environnement

  • MAKE0_BRAIN_HOME Data folder for the database, local models and .env (default ~/.make0)
  • OPENAI_API_KEY secret Optional. Turns on LLM features; Make0 Brain runs fully offline without it

Documentation

Tirée du README du projet sur GitHub, actualisée chaque semaine. Les liens ouvrent GitHub.

Sommaire
  1. Make0 Brain
  2. Why
  3. Quick start
  4. One context across all agents
  5. Memory versioning
  6. Search quality
  7. Import and export
  8. Optional API key
  9. Local or cloud
  10. Reference
  11. Develop
  12. License

Make0 Brain

One context for every AI agent you use. Claude Code, Claude Desktop, Cursor, Codex, Windsurf, VS Code, and Gemini CLI all read and write the same memory, and every change is versioned.

A local-first, open-source MCP memory server. It runs offline with no API key, keeps everything in one SQLite file, and speaks the same 7 tools as the hosted Make0 Brain.

Make0 · SWE-ContextBench results

npx @make0-ai/brain init

Why

Every agent keeps its own memory. Claude has CLAUDE.md, Cursor has rules, Codex has AGENTS.md, ChatGPT has its memory page. You end up explaining your stack, your preferences, and last week's decisions again in each one, and the copies drift apart.

Make0 Brain is one memory that all of them share:

  • Tell one agent, every agent knows. A fact saved from Cursor is found by Claude Code in the next session.
  • Nothing is overwritten silently. Every edit, from any agent, is kept as a version with who wrote it and when.
  • It stays yours. One SQLite file on your machine, MIT licensed, exportable to plain Markdown.

Quick start

1. Connect your agents.

npx @make0-ai/brain init

init finds Claude Code, Claude Desktop, Cursor, Windsurf, VS Code, Codex CLI, and Gemini CLI. When more than one is installed, it asks which to configure. Press Enter for all of them, or pass --clients to choose up front. init --yes configures every detected agent without asking. It then shows what it will change, asks once, keeps a .make0-backup of each config file, and adds Make0 Brain to each chosen app. It downloads the two local models (about 50 MB, once) with a progress bar, so your first question to an agent doesn't wait on a download. Restart the apps afterwards.

Connecting the server is not enough. The agent also needs a custom instruction so it searches Brain before answering and saves lasting facts there. init writes this into the global rules file for Claude Code (~/.claude/CLAUDE.md), Codex (~/.codex/AGENTS.md), Gemini (~/.gemini/GEMINI.md), and Windsurf. Cursor, Claude Desktop, and VS Code keep rules in settings, so init prints the same text for you to paste:

Make0 Brain is my source of truth for durable memory. Always search it before answering about me, my work, people, preferences, or past decisions. Save lasting facts and decisions to Brain. Never guess or invent memories. Use Brain exclusively for durable memory.
AppWhere it goes
Claude Code~/.claude/CLAUDE.md, written by init
Codex CLI~/.codex/AGENTS.md, written by init
Gemini CLI~/.gemini/GEMINI.md, written by init
WindsurfGlobal rules, written by init
CursorSettings → Rules → User Rules. Paste it.
Claude DesktopSettings → Profile → personal preferences. Paste it.
VS Code.github/copilot-instructions.md in the repo. Paste it.

Skip the rule with init --no-rules.

2. Bring in the context you already have.

npx @make0-ai/brain import --detect             # CLAUDE.md, AGENTS.md, Cursor/Windsurf/Copilot rules
npx @make0-ai/brain import ~/Documents/MyVault  # an Obsidian vault or any Markdown folder
pbpaste | npx @make0-ai/brain import -          # e.g. a memory dump copied from ChatGPT

3. Look at it.

npx @make0-ai/brain view

Models live in ~/.make0/models and data in ~/.make0/brain.db. If you skip init (or pass --no-models), the first save or search downloads the models instead.

One context across all agents

Same tools in every app

After init, every connected agent gets the same 7 tools:

ToolWhat the agent uses it for
list_brainsGet the brain id. The local server has one brain, personal.
search_brainFind memories for a focused query before answering.
get_memoryRead one memory in full.
get_memory_versionsRead every saved version of a memory, newest first.
add_memorySave a fact or a short Markdown note when you ask it to.
update_memoryChange a memory. The previous text is kept as a version.
delete_memoryArchive a memory. Its versions are kept and you can restore it.

The names and schemas match the hosted Make0 Brain, so a prompt or agent setup works against either one.

Every memory knows who wrote it

Make0 Brain reads the client name each app sends when it connects and records it as the writer: claude, chatgpt, or cursor. Any other app is recorded as mcp, with its own client name kept too. Search results show addedBy for each memory, and every version records who wrote it. You can see which agent learned what.

Context stays consistent
  • Contradictions replace older facts. If Cursor saves "I don't like dark mode in my editor" after Claude saved "I like dark mode in my editor", the newer memory wins and the older one is archived, with its history intact.
  • Duplicates merge (with an API key). An LLM judge compares close matches and merges restatements into one memory. The merged text may only use words from the two originals, so it cannot invent facts. Without a key, duplicates are kept rather than guessed at.
  • Related memories are linked. Similar memories get links automatically, and search follows them up to two hops, so asking about a project also surfaces the decisions tied to it.
Your existing agent rules become shared memory

import --detect reads the rule files you already wrote for one agent and makes them available to all of them. Make0 Brain's own "search Brain first" block is stripped out so it is never imported as a memory.

Memory versioning

Every write to a memory creates a version, whether it comes from an agent, an import, or you in the viewer. Nothing is overwritten in place.

What a version records
FieldMeaning
versionNumber1, 2, 3… per memory.
currentThe version agents read now. Exactly one per memory.
content, category, kind, entityType, confidenceThe memory as it was at that point.
writtenByuser, make0, claude, chatgpt, cursor, or mcp.
writerNameThe app's own client name when writtenBy is the generic mcp.
embeddingModelThe embedder that indexed the text while this version was current.
createdAtWhen the version was written.

A version is written when the content, category, kind, or entity type changes. A confidence-only change does not add one.

Agents can read the history

Search results include versionCount. When it is greater than 1, an agent can call get_memory_versions to see how a fact changed and who changed it: for example, that you switched from npm to pnpm last month and which agent recorded it.

Nothing is lost
ActionWhat happens
update_memory or an edit in the viewerA new current version. Older versions stay.
A contradicting or merged memoryThe older memory is archived with all its versions.
delete_memoryArchived: hidden from search and reads, versions kept.
Re-import of an edited noteA new version of that memory, not a duplicate.
Re-import of a note you deletedSkipped. Deleted stays deleted.
make0-brain purge <id> --yesThe only permanent delete. Agents cannot do it.
Browse and restore
npx @make0-ai/brain history <id>               # every version, current one marked *
npx @make0-ai/brain restore <id> --version 2   # make version 2 current again
npx @make0-ai/brain restore <id>               # bring back an archived memory
* v3  2026-10-27T09:14:02.118Z  claude
    The project uses pnpm and Node 22.
  v2  2026-10-20T16:40:51.502Z  cursor
    The project uses pnpm.
  v1  2026-10-02T11:05:33.910Z  user
    The project uses npm.

Restoring makes an older version current again and re-indexes it. No version is deleted.

npx @make0-ai/brain view opens a local page (on 127.0.0.1 only) where you can browse, search, add, and edit memories, read each memory's version timeline, restore a version, bring back archived memories, inspect the stored embedding, and permanently delete.

Search quality

Measured on SWE-ContextBench Lite, the same comparison as the Make0 benchmark page: 300 earlier coding sessions and 99 related issues. The score is how often search returns the gold past session. The local install uses the offline MiniLM embedder and the ms-marco MiniLM reranker, with a mean retrieval time of 0.44s per query on CPU once the models are loaded.

Rank 1, the gold session is the first result:

Make0 Brain (cloud)   █████████████████████████████░░░░░░░░░░░  71.7%
Make0 Brain (local)   █████████████████████████░░░░░░░░░░░░░░░  62.6%  0.44s
LangMem               ██████████████████████░░░░░░░░░░░░░░░░░░  55.6%
OpenViking            ███████████████░░░░░░░░░░░░░░░░░░░░░░░░░  38.4%
Free summary search   ██████████████░░░░░░░░░░░░░░░░░░░░░░░░░░  34.3%
Mem0                  ██████████░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  25.3%
Supermemory           █████████░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  23.2%

Overall, the gold session appears anywhere in the results:

Make0 Brain (cloud)   ██████████████████████████████████████░░  93.9%  top 10
Make0 Brain (local)   █████████████████████████████████████░░░  92.9%  top 10   0.44s
LangMem               █████████████████████████████░░░░░░░░░░░  73.3%  top 10
Supermemory           ████████████████████████░░░░░░░░░░░░░░░░  59.6%  top 15
OpenViking            █████████████████████░░░░░░░░░░░░░░░░░░░  51.5%  top 3
Mem0                  ████████████████░░░░░░░░░░░░░░░░░░░░░░░░  39.4%  top 3
Free summary search   ███████████████░░░░░░░░░░░░░░░░░░░░░░░░░  36.4%  agent chooses

LangMem, OpenViking, Mem0, Supermemory, and free summary search are from Table 5 of that paper. "Overall" counts a hit anywhere in each system's own result list; Make0 cloud, Make0 Brain, and LangMem each return 10. On the full benchmark (1,007 past tasks, 357 related issues), hosted Make0 scores 71.4% at rank 1 and 88.2% overall. A stronger embedder and reranker raise accuracy.

How search works: MiniLM embeddings and BM25 keyword scores are blended, a cross-encoder reranks the shortlist (or an LLM filter, with a key), weak results are pruned, and the top results are expanded two hops along memory links.

Import and export

Import
  • Folders and vaults. Each note becomes one memory. Long notes split by heading, and each part keeps the note title. Frontmatter tags or the folder name become the category. Obsidian [[wikilinks]] become links between memories. .obsidian/ and .trash/ are skipped.
  • Agent rule files. --detect finds global rules under your home folder and project rules in the current folder.
  • Re-runs are safe. Unchanged sections are skipped, edited ones get a new version, and memories you deleted stay deleted.
  • --extract (needs an API key) turns files into one-fact memories instead of note-sized ones.
  • --dry-run shows what would change. Imports over 200 memories ask first; --yes skips the question.
Export
npx @make0-ai/brain export ./my-brain          # one Markdown file per memory, opens as an Obsidian vault
npx @make0-ai/brain export --json brain.json   # every memory, version, and link (the Make0 port format)

The Markdown export imports back in. The JSON bundle includes archived memories and the full version history. It does not include embeddings; whoever reads it re-embeds with their own model.

Optional API key

Everything works offline. With a key, Make0 Brain also merges duplicate memories, picks better categories, filters search results with an LLM, and can import --extract.

Copy .env.example to .env in this folder, or to ~/.make0/.env so every app shares one file:

cp .env.example ~/.make0/.env
OPENAI_API_KEY=sk-...            # or OPENROUTER_API_KEY, or MAKE0_BRAIN_API_KEY
MAKE0_BRAIN_BASE_URL=            # any OpenAI-compatible endpoint (optional)
MAKE0_BRAIN_LLM_MODEL=           # default gpt-6-luna
MAKE0_BRAIN_EMBEDDINGS=api       # API embeddings instead of local MiniLM
MAKE0_BRAIN_LLM_SEARCH=0         # keep search on the local reranker

Make0 Brain reads ./.env, then .env in the data folder (MAKE0_BRAIN_HOME, default ~/.make0). A variable already set in the environment, including in an MCP client's env block, wins. Switching embedders is safe: memories indexed by another model are re-embedded on the next search.

Local or cloud

This repoMake0 cloud
Best forLocal agents, offline, on your machineEvery device and web app, including ChatGPT and Claude on the web
Setupnpx @make0-ai/brain initSign in at make0.ai
API keyNone requiredMake0 account
BrainsOnePersonal, project, and custom brains
Storage~/.make0/brain.dbHosted
SearchMiniLM + BM25 + cross-encoder, 0.44sStronger embedder and reranker

A one-command port from local to Make0 cloud is coming. The export --json bundle is the format it will use, with history and attribution included.

Reference

CLI
make0-brain                      Run the MCP server over stdio
make0-brain init                 Add Make0 Brain to your AI apps and download the models (--dry-run, --yes, --clients, --no-rules, --no-models)
make0-brain import <path…>       Import files, folders, or a vault (--detect, -, --extract, --dry-run, --yes)
make0-brain export [dir]         Markdown export (--json [file] for the bundle)
make0-brain view                 Open the memory viewer in a browser (--port, --no-open)
make0-brain stats                Show memory and link counts
make0-brain history <id>         List saved versions of a memory
make0-brain restore <id>         Restore an archived memory (--version <n> for an older version)
make0-brain purge <id> --yes     Permanently delete a memory and its versions

On a terminal, init lists the agents it found and asks which to configure. Press Enter for all of them, or enter numbers (1,3 or 1-3) or ids. init --yes configures every detected agent without asking. init --clients skips the prompt and takes a comma-separated list of claude-code, claude-desktop, cursor, windsurf, vscode, codex, gemini.

Manual setup

If init doesn't cover your app, add a stdio server and paste the custom instruction from the quick start into that app's rules:

{
  "mcpServers": {
    "make0-brain": { "command": "npx", "args": ["-y", "@make0-ai/brain"] }
  }
}
Environment
VariableDefaultPurpose
MAKE0_BRAIN_HOME~/.make0Data folder: database, models, .env.
MAKE0_BRAIN_DB$MAKE0_BRAIN_HOME/brain.dbDatabase file.
OPENAI_API_KEY / OPENROUTER_API_KEY / MAKE0_BRAIN_API_KEYunsetTurns on the optional LLM features.
MAKE0_BRAIN_BASE_URLOpenAI, or OpenRouter for an OpenRouter keyOpenAI-compatible endpoint.
MAKE0_BRAIN_LLM_MODELgpt-6-lunaChat model.
MAKE0_BRAIN_EMBEDDINGSlocallocal (MiniLM) or api.
MAKE0_BRAIN_EMBEDDING_MODELtext-embedding-3-smallEmbedding model when api.
MAKE0_BRAIN_LLM_SEARCHon with a key0 keeps search on the local reranker.

Develop

npm install
npm test            # fast suite, no model downloads
npm run test:models # real local models
npm run test:e2e    # build, then drive the stdio server

License

MIT

Questions fréquentes

Qu'est-ce que Make0 Brain ?

One shared, versioned memory for Claude Code, Cursor, Codex and every MCP agent. Local and offline.

Comment installer Make0 Brain ?

Il s'exécute sur votre machine. Dans Claude Code : claude mcp add make0-brain -e 'MAKE0_BRAIN_HOME=<MAKE0_BRAIN_HOME>' -e 'OPENAI_API_KEY=<your openai_api_key>' -- npx -y @make0-ai/brain@0.1.2. Pour les autres clients, collez la configuration JSON de cette page dans leurs réglages MCP.

Faut-il une clé API pour Make0 Brain ?

Oui. Il attend OPENAI_API_KEY, à renseigner dans sa configuration.

Make0 Brain est-il open source ?

Oui. Son code est sur GitHub sous licence MIT.

Qui maintient Make0 Brain ?

Il est publié par make0-official. AI.tn le référence sans le maintenir ni le recommander.

Issu du registre MCP officiel. Être listé n'est pas une recommandation : vérifiez le code et les permissions d'un serveur avant de lui donner accès à vos données.