
brain-core
io.github.xy-claudePublished by GitHub account xy-claudev0.4.8Updated Nov 6, 2026
Memory for a Claude Code agent that survives the session: five tools, a markdown vault, all local.
The publisher's own server: core.blue
Overview
Local MCP server giving a Claude Code agent persistent memory in a markdown vault plus SQLite and an optional self-hosted vector store.
- What you can do
- Open and close sessions with a start block (daily brief, state, mental models, per-mission recall) and an end-of-day archive
- Recall across the vault, SQLite index, vector store and past Claude Code transcripts, deduplicated and ranked, capped at 6k tokens
- Write facts, patterns, decisions and corrections to markdown, skipping duplicates and flagging changed values
- Distill a URL, GitHub repo, YouTube video, PDF, file or pasted text into an immutable raw folder for the agent to compile
- Report store health, loaded-context cost, open session and pending decisions in one status call
- When to use it
- For a solo developer or founder running one or more Claude Code agents on their own machine who is tired of re-explaining the project, past decisions and corrections at the start of every session. It is a personal tool, not a hosted or team service.
- Requirements
- Runs as a local Python 3.12 process (PyPI package brain-core-mcp, started with uvx); the installer targets macOS or Linux with systemd and needs Claude Code. Full mode needs about 2 GB of disk and an LLM key such as ANTHROPIC_API_KEY, or a Claude Code login, for the Hindsight vector store; --lite skips it.
Installation
In SourceWeft
- Open brain-core in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Other MCP clients
Follow the launch instructions in the repository.
README
[CI] [License: MIT] [Python 3.12+] [Glama score]
brain-core
A memory for your Claude Code agent that survives the session. One local MCP server, five tools, a markdown vault you can read, an eval that proves recall. Installs with one command.
brain-core gives a Claude Code agent a long-term memory that lives on your disk. You name the agent, you tell it who you are, and from then on every session opens with yesterday's brief, the decisions you made, the facts that changed and the corrections you gave. It remembers by writing markdown files you can open in any editor, and it finds things again through a local SQLite index plus Hindsight, a self-hosted vector memory. Nothing leaves your machine except the LLM calls you already make.
It is for one person running one or more agents on their own computer: a solo developer, a founder, anyone tired of re-explaining their project every morning. It is not a hosted service and not a team product.
Is it an MCP server or a tool?
Both. One Python package, three ways in:
To a Claude Code user: an MCP server with five memory tools and a one-line installer. To a Python developer: a memory library with an MCP front end.
[brain init, brain doctor, then a real session: remember, a changed fact with its banner, recall]The problem
Every session with a coding agent starts from zero. You explain the project again, the decision you made last week again, the thing it got wrong on Tuesday again. Memory add-ons exist, but they put your notes in someone's cloud, expose 30 tools the agent cannot choose between, and nobody shows you an eval.
brain-core is the opposite: local, five tools, markdown files you own, and a test suite that reports hit rates.
How it works
brain initscaffolds an agent folder. It writes aCLAUDE.mdwith the agent's name and yours, five rule files (identity, doctrine, authority, memory, system), three skills, a safety hook, an.mcp.jsonand an empty vault. Claude Code reads that folder as a project, so the agent knows how to use its memory from the first message.brain serveruns as an MCP server inside Claude Code. It exposes exactly five tools. The agent calls them the way it calls any other tool; you never run them by hand.- Every session has a shape. The agent opens with
brain_session('start'), which returns one block: today's brief, the executive state, the mental models, a recall per active mission, and a flag if the previous session crashed. It closes withbrain_session('end'), which files the day's archive and rewrites state for tomorrow. - Memory is written, not inferred. When you say something worth keeping, the agent calls
brain_remember(text, kind). The text goes to the vault first, then the SQLite index, then Hindsight, then the relations table, and the reply says what each layer did. A duplicate is skipped. A fact whose value changed gets a⚠ Fact changedbanner and the old line stays, so the history is visible. - Recall is one query across every store.
brain_recall(query)searches the vault, the index and Hindsight at once, deduplicates, ranks by relevance and recency, and caps the reply at 6k tokens so it never floods the context. - Two cron jobs do the housekeeping.
brain dailywrites the next morning's brief and backs up Hindsight.brain weeklyarchives sessions older than 30 days into a monthly summary and refreshes the mental models.
The five tools
Plus brain_status() for health in one call: which stores are up, how many tokens the always-loaded context costs, whether a session is open, and which decisions are waiting on you.
Install
Before you start
Pick two names before you run the command: the agent's name (--agent), which becomes its folder and identity, and your own (--user), which is how the agent addresses you. Both can be changed later by editing CLAUDE.md.
macOS, one line
[install.sh transcript]In a hurry, or no 2 GB to spare? Add --lite: vault plus SQLite full-text search, no Hindsight, installed in about a minute. Everything in the five tools works; what you give up is semantic recall over paraphrases, mental models and the weekly reflection. The recall numbers in Does it work? are measured on exactly this configuration. Upgrade any time with brain hindsight install, then uncomment the hindsight: block in brain.yaml.
What it does, in order. Re-running skips what is already there, so after a failure you fix the cause and run the same line again.
After the installer
Two things the installer cannot do for you:
The installer prints a note if the key was not in your shell when it ran. If you would rather not use an API key, pass --provider claude-code and Hindsight uses your Claude Code login instead. That mode is for personal use only.
Already have an agent?
Adds brain.yaml, the brain MCP server, the four hooks and the memory rule to an existing Claude Code folder, then indexes its facts. CLAUDE.md, skills and the vault are left alone; omit --bank to run lite.
Linux
The same one line. It needs git and curl already present. It then installs uv from astral.sh, installs Claude Code with npm when node is present, runs Hindsight as a systemd --user service, and writes the two jobs into your user crontab as tagged lines it can find and replace on re-run.
Manual, any platform
Check it worked
It prints the agent name, the config path, row counts per table, and Health check: OK. Store health shows up in the first brain_session('start') reply and in brain_status(). The common problems:
First session
[first session transcript]The agent's CLAUDE.md tells it to open with brain_session('start'). What comes back:
On day one the brief is empty and the executive state is the template. That is expected. Spend the first session telling the agent what you are working on: the project, the stack, the decisions already made, how you like to work. Each statement that matters becomes a brain_remember call, and the reply shows what every layer did:
Things to try in that first session:
- State a fact, then change it. "The API listens on 8887." Later: "Correction, it is 8888." The second write returns a
⚠ Fact changedbanner andvault/facts.mdkeeps both lines. - Give it a source. Paste a URL or a GitHub repo and ask it to distill it. The page lands in
vault/raw/untouched, and the agent compiles a page invault/knowledge/. - Ask about something from earlier. "What did we decide about the database?" is one
brain_recallcall, and each hit names the file it came from. - Open the vault in your editor. Every write you just saw is a line in a markdown file. Edit it if the agent got it wrong.
Say "thanks, we're done" and it runs brain_session('end'). Tomorrow at 06:07 brain daily writes the next brief from what you did today, and the next claude session opens with it.
What is in the agent folder
Everything is markdown or SQLite. Open the vault in Obsidian, grep it, commit it, delete a line. The agent will not mind.
Does it work?
The eval is part of the test suite and runs in CI.
The slices are the ones the memory benchmarks (LoCoMo, LongMemEval) say a single hit-rate hides: a changed value must outrank the stale one, an unanswerable question must return nothing, a question about a day must surface that day's archive. Recall takes about 1.7 s per query with Hindsight; a full start block is about 4 s and under 6k tokens.
Twelve traits, innate and grown
A brain-core agent is born with twelve traits and grows them with experience. Innate is what brain init ships and what survives a cold start with the vault wiped; grown is what accumulates in the vault. brain_status() scores each from evidence on disk, and brain daily logs one line a day so the curve shows over weeks.
A trait never gets one number. It gets signals, each with a sample size and a verdict: defensible when the answer key comes from a file the agent did not write that session, cost when it is a size or an age, pending when the evidence does not exist yet. Artefact counts and self-written scores are not signals. The list and the research behind it: docs/TRAITS.md.
How memory is organised
Rules: idempotent by content hash, append-only, nothing deleted, secrets refused before any store sees them. Details in docs/VAULT_SCHEMA.md.
Requirements
- macOS or Linux for the installer; the library and MCP run anywhere Python 3.12 does
- optional: Hindsight (MIT) as the vector store, installed for you unless
--lite. Postgres is embedded; embeddings run on CPU - with Hindsight: an LLM key for its reasoning, or a Claude Code login for personal use
On PyPI the package is brain-core-mcp (the plain name collides with an unrelated project); the command is still brain and the import is still brain_core.
Roadmap
- an
importfor existing notes folders - a recall-miss log that grows the eval set from real misses
How it compares to claude-mem, mem0 OpenMemory and a plain CLAUDE.md: docs/COMPARISON.md. Shipped milestones: docs/MILESTONES.md. Design: docs/SPEC_v0.2.md. Threat model for a memory that reads untrusted text: docs/THREAT_MODEL.md.
Contributing
Issues and pull requests welcome. uv sync --all-extras --all-groups, then ruff check, mypy, pytest. See CONTRIBUTING.md.
License
MIT.
Source: README.md at commit 67a07c0
Tools
0Version history
2- v0.4.8LatestNov 6, 2026
- v0.4.6Nov 3, 2026
Score
50% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 days25 pts
Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.
- Auth declared10 pts
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts
Other Core integrations
core.blue
blue.coreOfficial publisher
Remote MCP endpoint for core.blue's private per-customer agent memory "houses": read its manual, try a sandbox, get pricing and recommendations, and request a…

Scovant Core
Published by GitHub account Scovant
Passive AI-agent readiness scan of a website: robots, llms.txt, JSON-LD, MCP discovery, security.

ProofCore
Published by GitHub account ProofCore-Protocol
Zero-Auth Cryptographic Notarization & Evidence Layer on TON Blockchain for AI Agents.

GSC MCP Core
Published by GitHub account glq0546
Remote, OAuth-secured MCP endpoint that lets an AI assistant fetch Google Search Console data for multiple tenants.

Guestit
Published by GitHub account guestitab
Lets an assistant find Guestit destinations in Sweden, search and price managed stays, and compare listings before booking on guestit.se.