Membase
One memory. Every AI.
Teach it once. Every AI remembers.
Website · Docs · Web app · Discord · X
Membase keeps one memory for everything you and your agents know, and every AI you use reads it. You stop re-explaining yourself each time you switch models or tools.
- Add. Facts, documents, web pages and chat exports from Claude or ChatGPT go into one memory.
- Manage. Containers keep projects apart; search it, ask it questions, forget what should go.
- Use. Your code, Claude Code, Cursor, Codex and ChatGPT read the same memory through the SDK or MCP.
This repository is the developer side: Python and TypeScript clients, the membase command line
and an MCP server. The memory lives in your Membase account, which the
web app and browser extension also fill, or on your machine with
unibaseio-membase[local].
Write once, read from any AI
Recordings: Python SDK (57 s) · Claude Code (1 min 33 s). The answer above is illustrative.
Accuracy
On three public long-term memory benchmarks, with a few thousand tokens of context per question.
Quickstart
pip install unibaseio-membase # hosted · Python 3.10+ · needs MEMBASE_API_KEY
pip install 'unibaseio-membase[local]' # local · Python 3.12 or 3.13 · needs OPENAI_API_KEY
npm install @unibaseio/membase # TypeScript · Node 18+
npm install -g @unibaseio/membase-cli # the `membase` command (hosted) without Python
from membase import Membase
m = Membase() # hosted
# m = Membase(local=True) # local, in ~/.membase
m.memories.add("We picked Postgres for the ledger service.", container="Engineering")
m.search("what database is the ledger on?")
m.add("Design notes …", container="Engineering", custom_id="design-1") # a document
m.ask("Which database did we choose for the ledger?")
Every method, its REST route and MCP tool, and the access it needs: SDK reference.
The Python package is unibaseio-membase (import membase); membase on PyPI is unrelated.
Command line
membase --local add "We picked Postgres for the ledger" --container Engineering
membase --local search "what did we pick for the ledger?"
membase --local ask "Which database is the ledger on?"
membase --local import ~/Downloads/claude-export.json # Claude, ChatGPT, markdown or JSON chats
membase --local agent ingest trace.json --agent coder
membase --local agent search "fix flaky deploy" --agent coder
Without --local (or --store DIR, both before the command) commands use the hosted API; agent,
import and serve need unibaseio-membase[local].
MCP
claude mcp add membase -- membase --local mcp # local
claude mcp add --transport http membase https://api.app.membase.io/mcp-http \
--header "Authorization: Bearer $MEMBASE_API_KEY" # hosted
Hosted without the header, the connection signs you in and is read-only. Setup for Claude, ChatGPT, Cursor, Codex and other clients: Connect your AI.
Docs
- SDK reference: methods, REST routes, MCP tools, access levels
- Memory operations: containers, documents, memories, profile, ask
- Authentication: keys and what each one can reach
- Connect your AI: per-client MCP setup
- Local engine: what it stores,
membase serve, settings
License
Copyright © 2026 Unibase. All rights reserved. Proprietary; see
LICENSE. unibaseio-membase[local] also
installs unibaseio-membase-core, the compiled engine, under its own Unibase license.
Metadata
Release files for unibaseio-membase 0.3.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| unibaseio_membase-0.3.0.tar.gz | 24.5 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| unibaseio_membase-0.3.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 55.4 kB
Release files / unibaseio_membase-0.3.0.tar.gz
| Download URL | unibaseio_membase-0.3.0.tar.gz |
|---|---|
| Size | 24.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
4dead31bb203d90d595488c0d8cd0da3aaebee425df884727f47ce8ddfb5e5bc
|
|
BLAKE2b-256 checksum How to use checksums |
5285f37800d9affc083a94548a9d00b4a951f3e042d47e3e87f63c0389b01b4c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.12
|
Release files / unibaseio_membase-0.3.0-py3-none-any.whl
| Download URL | unibaseio_membase-0.3.0-py3-none-any.whl |
|---|---|
| Size | 30.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
82c41c6107205df9cc5054b86dd804e70df8a358726a95ca5eab2b1c5a21b770
|
|
BLAKE2b-256 checksum How to use checksums |
fd7e2f4095b42b5bc40abacbe3c2781610c89bad43884f045ddf83685c861bdc
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.12
|