One memory across every AI.
Transparent, scoped, and yours — Memora follows you from ChatGPT to Claude to your coding agents.
Plugs into any MCP client
Tell one AI.
They all remember.
Say it once.
Mention it in any conversation: a Claude chat, a Cursor session, a coding agent. No forms, no manual notes.
Memora distills it.
The fact is extracted, classified as episodic or semantic, scoped to the project it came from, and embedded for recall.
Prefers short answers with runnable commands. Deploys with Docker Compose on a Hetzner VPS.
Every AI remembers.
Any MCP client recalls the same memory. Edit it, export it, or delete it whenever you want.
“You deploy with Docker Compose on a Hetzner VPS, so here is the compose file first.”
“You deploy with Docker Compose on a Hetzner VPS, so here is the compose file first.”
“You deploy with Docker Compose on a Hetzner VPS, so here is the compose file first.”
Memory you can actually trust.
Not a black box. Every memory is scoped, inspectable, and stored where you decide.
Scoped to the project
Scope a conversation once and its memories stay in that lane. Nothing from project-x surfaces while you work on project-y.
project-x
project-y
Yours to inspect
Every memory is visible in the browser. Edit it, export the whole store as JSON, or delete it for good.
Prefers concise API examples with runnable commands.
Local-first, your keys
Data lives on your machine. Bring your own keys, or run fully offline in degraded mode.
~/.memora/ on your machine
No keys set: local embeddings, keyword recall, zero cloud calls.
Three kinds of memory
Retrieval blends all three with recency, so answers reflect both what you said and how you work.
Installed in under a minute.
One local server. Point your clients at it and they share the same memory from the next message on.
Run the server
Memora stores everything in ~/.memora/ by default. Add your own keys for hosted models, or skip them and stay fully local.
$ uvx memora-mcpClient configuration
claude_desktop_config.json / .mcp.json
{
"mcpServers": {
"memora": {
"command": "uvx",
"args": ["memora-mcp"],
"env": {
"GEMINI_API_KEY": "<optional>"
}
}
}
}Free to remember.
Start on the free plan. Upgrade only when your memory outgrows it.
Free
- 10,000 memories stored
- 1,000 retrievals a month
- Every MCP client
- Edit, export, and delete controls
- Local-first degraded mode
The MCP server is open to run locally on both plans, with your own keys or none at all.
Questions,
answered.
Where is my data stored?
In ~/.memora/ on your machine by default. Set MEMORA_DATA_DIR to move it. Nothing leaves your device unless you configure a hosted model.
What happens without API keys?
Memora drops into degraded mode: deterministic local embeddings and keyword recall, with zero cloud calls. Add a key later and it picks up hosted models.
Which clients can use it?
Anything that speaks MCP: Claude Desktop, Claude Code, Cursor, and coding agents. They all read and write the same store.
What exactly is a scope?
A label a conversation carries, usually a project name. Retrieval only surfaces memories from the active scope, so projects never bleed into each other.
Can I see what it remembers?
Yes. The memory browser lists every fact with its type and scope. Edit anything, delete it for good, or export the whole store as JSON.
Can two clients run at once?
The embedded store is single-writer. Give each client its own data directory, or run a shared Qdrant server and point QDRANT_URL at it.