The core is a Supabase memory service, not a note editor
Open Brain puts 1,536-dimensional embeddings and personal context in PostgreSQL, then exposes the result to AI clients over MCP. The base server has tools for capture, semantic search, recent items, and statistics, plus read-only search and fetch aliases for ChatGPT. Its appeal is straightforward: Claude, ChatGPT, Cursor, and Codex can work from the same memory instead of building separate profiles inside each product.
The data model is intentionally narrow. One thoughts table holds text, an embedding, metadata, timestamps, and a content fingerprint used for deduplication. The setup adds an HNSW vector index and a search function with a similarity threshold. This works well for atomic facts and decisions. The FAQ says longer documents should be split into meaningful chunks, because one vector for a 4,000-word article tries to represent too many ideas.
Four core MCP tools make capture easier than editing
Four core tools handle capture, semantic search, recent items, and statistics inside an assistant. When you capture a thought, the Edge Function generates an embedding and extracts metadata through OpenRouter, then Supabase stores both in one row. Search embeds the query and ranks stored thoughts by meaning. That keeps capture friction low and lets several clients query the same store without a Zapier chain or a separate hosted memory product.
Editing is much less polished. The project FAQ describes Open Brain as a backend and says the visual writing experience people know from Obsidian does not exist. You can correct or delete rows in Supabase's Table Editor, or install one of the contributed dashboards, but the core path has no first-party document editor. If browsing, rearranging, and revising prose is your main habit, keep a notes app and treat this as an AI retrieval layer.
What happened when we ran it
We cloned commit 9543c29 and installed its server in our sandbox in 20 seconds. Npm added 108 packages and occupied 29 MB, a modest dependency footprint for this part of a 120.5 MB repository. The project had no build script or target, so there was nothing to compile. That skipped build is a repository fact, not a successful production deployment.
The test command completed successfully in 8 seconds, and npm audit found 0 known vulnerabilities across the installed packages. We ran this in a fresh Debian container with 3 CPUs, 8 GB of RAM, Node 22, no secrets, and no elevated privileges. The checkout contained 1,010 files and roughly 76,621 lines of source. Those results cover repository mechanics only; no Supabase project, OpenRouter request, MCP client, or semantic retrieval workload was exercised.
The passing test does not check the deployed server file
The 8-second test command does not exercise server/index.ts, according to issue 487 against the same commit. It says server/test-stateless.mjs builds an inline Hono application, so its authentication expectation can drift from the production code while the command stays green. The report points to a concrete mismatch: the copied test app expects an HTTP 401 response, while the server deliberately returns an HTTP 200 JSON-RPC error so strict MCP clients do not treat authentication failure as a broken transport.
The same issue says none of the 11 workflow files invoke that server test and that the documented query-parameter authentication route is uncovered. Our 8-second pass remains useful because it proves the command runs in a clean Node environment. It provides weak assurance about changes to the Edge Function itself. A team adopting OB1 should test the deployed URL through the clients it cares about, including missing credentials, a wrong access value, capture, and search.
Deployment needs two services and several credentials
The guide calls for a Supabase project and an OpenRouter account. Setup includes enabling pgvector, creating the table and SQL functions, granting the service role access, generating an MCP access credential, installing the Supabase CLI, setting remote secrets, and deploying the Edge Function. OpenRouter needs credit because it supplies embeddings and lightweight metadata extraction. Supabase hosts both the database and public MCP endpoint.
Client behavior adds another layer. ChatGPT custom MCP connections require a paid plan and Developer Mode on the web, and the guide warns that some sessions may show only read operations. Claude Desktop's official connector instructions cover macOS and Windows. Codex may need a 30-second startup timeout when a bridge performs OAuth discovery before reaching the Supabase function. The documentation covers these branches well, but calling this a simple npm project would misdescribe the work.
September activity is strong, while releases are absent
GitHub showed 4,555 stars and 211 combined issues and pull requests when fetched. The last push was September 4, 2026, and recently updated pull requests covered the README, model routing, schemas, and server fixes. That is current activity rather than a repository resting on old popularity. The count combines issues with pull requests, so it should not be read as 211 defects.
GitHub's latest-release endpoint returned no published release. That makes commit pinning and change review more important for anyone deploying the single-file Edge Function. The FSL-1.1-MIT license also deserves attention: internal use is permitted, while competing commercial services are restricted until each version receives the MIT license after 2 years. For a personal brain shared across several AI clients, OB1 is thoughtfully documented. For a product dependency, its test boundary and release practice need extra work from the adopter.

