Second Brain for AI - Persistent memory for Claude, ChatGPT & Cursor. Free.

by
Every AI conversation starts from zero. Your projects, decisions, and preferences disappear as soon as you close the chat. Second Brain fixes that. It is a self-hosted memory layer that works with Claude, ChatGPT, Cursor, and any MCP client. You can store context once and recall it by meaning instead of keywords. It includes duplicate detection, semantic search, and a web UI. Built on Cloudflare, it offers a free tier and your data remains yours. MIT licensed.

Add a comment

Replies

Best

Second question! ( I separate it so you get more engagement! haha)

Could I connect this to a Raspberry Pi voice "flat mate" and use it as a shared memory layer?

So I can access to all my ChatGPT memory with that home device too?

Haha love the engagement strategy, it’s working! Yes! Second Brain exposes both MCP and REST endpoints, so anything can connect including a Pi voice assistant like Flat Mate. Same memory your ChatGPT uses, accessible from any device or client.

The maker already shipped a CLI since launch — that’s useful signal. What’s the upgrade path for that CLI in terms of keeping it in sync with the web UI? Does it write to the same memory store, or does it maintain a separate local cache that could drift?

Same brain. The CLI talks directly to your Cloudflare Worker endpoint, so anything you store shows up in the web UI instantly and vice versa. No separate cache, no drift. It also has offline support built in… if you’re without a connection, writes get queued locally and sync automatically once you’re back online.

This is a very helpful product.

 thanks for the support!!!

Two things shipped this week worth flagging.

@phillipadsmith opened a PR adding OAuth 2.0 support to the /mcp endpoint... that's now merged.

And , you flagged during launch that importance score should factor into merge and delete decisions, not just similarity. That's in too. Smart merge now uses importance as part of the signal, so high-value memories don't get quietly overwritten by a slightly similar throwaway entry.

Both came directly from this community. Appreciate it.

If you want these now, clone or fork main. Otherwise they'll be packaged in v1.7 next week.

The 'every conversation starts from zero' problem is real — I waste so much time re-explaining project context to Claude Code every new session. Self-hosted is a big plus for me. Curious about the MCP integration — does it expose memory as a tool that the LLM can call dynamically, or is it more of a pre-prompt injection layer?

Dynamic tool calls – fully. Second Brain exposes MCP tools (remember, recall, append, update, forget) that the LLM calls on its own during a session. You do add a short system prompt in your llm profile to tell it when and how to use them, but after that Claude Code handles the rest for all future sessions, recalling context mid-conversation, storing new decisions, appending updates automatically. No manual context files. No re-explaining your project every session

Semantic search over a personal memory layer is the right primitive here. Building on Cloudflare Workers keeps data distributed with low latency globally. With the self-hosted model and MIT license, is the vectorization step handled via Cloudflare AI bindings, or does it call out to an external embedding API?

 Vectorization is handled entirely via Cloudflare Workers AI bindings, no external embedding API calls. When you store a note, the Worker calls the /baai/bge-base-en-v1.5 model through Workers AI to generate the embedding, then writes it to Cloudflare Vectorize for semantic search. D1 stores the raw text alongside it.

The whole stack: Workers (runtime), D1 (persistence), Vectorize (vector search), Workers AI (embeddings + LLM inference). Zero external dependencies. Everything runs inside your own Cloudflare account on the free tier.