Skip to content
FunCoding

Search

Search docs, Skills and MCP

ZenBrain Memory

Seven-layer agent memory: episodic, semantic, procedural and core. Local SQLite, no account.

数据库与数据26In the official Registryv0.1.9

Install

Add --scope user to use it in every project.

npm package @zensation/mcp (0.1.9)

claude mcp add --env ZENBRAIN_DB=<ZENBRAIN_DB> --env ZENBRAIN_CONTEXTS=<ZENBRAIN_CONTEXTS> zenbrain-memory -- npx -y @zensation/[email protected]

README

@zensation/mcp

Status: early release. The tool surface is small on purpose and may still change before 1.0. The memory layers underneath it are the same ones the ZenBrain paper describes and the benchmarks measure.

An MCP server that gives any MCP client — Claude Desktop, Claude Code, Cursor, or your own — a memory that survives the conversation.

Four tools, one local SQLite file, no account and no network call.

ToolWhat it does
zenbrain_storeWrite something into long-term memory. Routing is automatic: steps or instructions become a procedure, content with an emotional weight above 0.5 an episode, a confidence above 0.9 a pinned core memory, anything else a semantic fact. Each call adds a memory; the same core memory stored again is updated.
zenbrain_recallSearch the episodic, semantic, procedural and core layers for what is relevant to a query; working memory only when you name it. Results come back ranked, each tagged with the layer it came from.
zenbrain_consolidateOne sleep-like maintenance pass: episodes with an emotional weight above 0.5 become semantic facts, each only once, and stale working-memory slots decay. Deletes nothing from long-term memory.
zenbrain_healthHow full each layer is: slots in use, episodes, facts and how many are due for review, procedures, core blocks.

Install

Requires Node.js 22 or newer.

npm install -g @zensation/mcp

Configure your client

{
  "mcpServers": {
    "zenbrain": {
      "command": "npx",
      "args": ["-y", "@zensation/mcp"],
      "env": {
        "ZENBRAIN_DB": "~/.zenbrain/memory.db"
      }
    }
  }
}
VariableDefaultMeaning
ZENBRAIN_DB./zenbrain.dbPath to the SQLite file. A leading ~/ means your home directory. A relative path is relative to the directory your client starts the server in — some clients, Claude Desktop among them, may start it in /, where nothing can be written — so give an absolute or ~/ path. :memory: gives a store that is discarded when the process exits.
ZENBRAIN_CONTEXTSpersonal,work,learning,creativeComma-separated context domains for cross-context memory.

The server speaks MCP over stdio. Stdout carries protocol traffic only; diagnostics go to stderr.

The seven layers

Storing is not filing. Which layer a memory lands in decides how it decays, how it is retrieved, and whether it survives consolidation.

LayerHolds
7Cross-Context MemoryShared knowledge across domains
6Core MemoryPinned facts
5Procedural Memory"How to do X" — skills and workflows
4Long-Term SemanticFacts, with FSRS scheduling
3Episodic MemoryConcrete experiences and events
2Short-Term / SessionCurrent conversation context
1Working MemoryActive task focus, 7±2 items

Each layer has its own retention, consolidation and retrieval rules. Review scheduling follows a forgetting curve rather than a fixed timer, and emotionally weighted content consolidates more strongly; both are implemented in @zensation/algorithms and can be read line by line.

This server configures no LLM provider, so nothing in it calls a model: routing on store is a content heuristic, and consolidation runs without generated summaries.

What this release does not do

Worth knowing before you wire it in:

  • No embedding provider is configured by default, so recall is lexical, not semantic. Without vectors, recall ranks by folded token overlap — umlauts and accents are folded, rarer words weigh more, and an adjacent phrase beats the same words scattered. It will find "Kieler Foerde" in a note about the "Kieler Förde"; it will not connect "car" to "automobile". Ranking runs over the most recent 500 entries per layer, and a query that matches nothing falls back to recency with score: 0. Pass an EmbeddingProvider through the library for true semantic matching — that is the configuration the published benchmarks were measured with.
  • SQLite similarity search is a full scan. Fine for one person's memory; use @zensation/adapter-postgres for larger volumes.
  • Consolidation is a tool call, not a schedule. Nothing runs it for you.
  • The store is a plain file. It is not encrypted. Put it somewhere you would put a notebook.

Using it as a library

The server factory is exported, so you can mount ZenBrain's tools on a server of your own or drive them in tests. The package is ESM; require() loads it on Node 22.12 and later (on 22.0–22.11, use import).

import { createZenBrainServer } from '@zensation/mcp/server';
import { MemoryCoordinator } from '@zensation/core';
import { SqliteAdapter } from '@zensation/adapter-sqlite';

const coordinator = new MemoryCoordinator({
  storage: new SqliteAdapter({ filename: './memory.db' }),
});

const server = createZenBrainServer(coordinator);
// connect it to any transport you like — the caller owns the coordinator's lifecycle

Zero-dependency, and where that stops

@zensation/algorithms and @zensation/core pull nothing but each other. That claim is checked in CI on every push against the packed tarballs, not against the source tree.

This package is deliberately outside that boundary. An MCP server needs the protocol SDK, so it carries one. Keeping it in its own package is what lets the core stay clean: installing @zensation/core never pulls the MCP SDK, and installing this never weakens the claim the core makes.

About ZenBrain

ZenBrain is a seven-layer, neuroscience-derived memory architecture for LLM agents, built as zero-dependency TypeScript and published under Apache-2.0. The benchmark results, and the configuration they were measured in, are reported in the paper; the reproduction packages are on Zenodo.

Works out of the box without an embedding provider — lexical ranking, zero dependencies. The paper's measurements used nomic-embed-text as the embedding provider.

License: Apache-2.0

Similar MCP servers

DeusData/codebase-memory-mcp46k

codebase-memory-mcp

High-performance code intelligence MCP server. Indexes codebases into a persistent knowledge graph — average repo in milliseconds. 158 languages, sub-ms queries, 99% fewer tokens. Single static binary, zero dependencies.

Databases & data

TabularisDB/tabularis5.1k

tabularis

Open-source desktop SQL workspace with 3 built-in database drivers and 16 shipped plugins, including SQL Server, DuckDB, ClickHouse and Redis. Built-in MCP server for Claude, Cursor and Devin, SQL notebooks and visual EXPLAIN.

Databases & data

prest/prest4.6k

prest

PostgreSQL ➕ REST, low-code, simplify and accelerate development, ⚡ instant, realtime, high-performance on any Postgres application, existing or new, MCP server

Databases & data

antvis/mcp-server-chart4.4k

mcp-server-chart

🤖 A visualization mcp & skills contains 25+ visual charts using @antvis. Using for chart generation and data analysis.

Databases & data

irinabuht12-oss/google-ads-meta-ads-mcp4.3k

google-ads-meta-ads-mcp

Google Ads MCP server + Meta Ads MCP (Facebook Ads MCP) + GA4 + Search Console in one hosted remote MCP for Claude, ChatGPT, Cursor & n8n: 250+ tools, OAuth login, no API keys, approval-gated writes, free. By Ryze AI.

Databases & data

bytebase/dbhub3.6k

dbhub

Token conscious database MCP server for Postgres, MySQL, SQL Server, Oracle, MariaDB, SQLite.

Databases & data