Install
$ agentstack add mcp-jsingletonai-dejavu ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ● Network access Used
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
Deja Vu
[](https://deja-vu.dev) [](LICENSE)
Local-first AI memory for agents and assistants.
Your AI tools forget everything between sessions. The ones that don't store your context on someone else's servers. Deja Vu is the third option — a memory layer that runs on your machine, in SQLite, and plugs into anything that speaks Python, REST, CLI, or MCP.
One memory store, every tool. Add a preference from the CLI, retrieve it in Claude Desktop, query it from a Python agent — same database, no sync, no account. Context built up in one tool is immediately available in the next.
Private by default. Memories live in ~/.dejavu on your machine. The only thing that leaves is the LLM call itself, routed through Venice's privacy-focused API. No telemetry, no hosted memory service, no vendor lock-in. Open the SQLite file with any client and inspect every byte.
Quick start
pip install dejavu-memory
dejavu init
dejavu add "I prefer concise technical explanations"
dejavu search "How should responses be written for me?"
That's it. Memories are saved to ~/.dejavu/ and searchable immediately.
Set your Venice API key
Deja Vu uses Venice for memory extraction and reasoning. Get a key at venice.ai and export it:
export VENICE_API_KEY="your-key"
Python
from dejavu import Memory
memory = Memory()
memory.add("I prefer local-first tools.", user_id="local_user")
results = memory.search("What tools do I prefer?", user_id="local_user")
print(results)
Local REST API
dejavu serve
curl http://127.0.0.1:8765/health
Runs on 127.0.0.1 by default — not exposed to your network.
How it works
Deja Vu is three layers: an interface layer (Python, CLI, REST, MCP), a memory engine that extracts and ranks what's worth remembering, and a local SQLite store. Venice handles the LLM calls for extraction and search — everything else runs on your machine.
When you add a memory, the engine asks Venice to pull out durable facts and preferences from the raw text, then writes them to SQLite with embeddings. When you search, it embeds the query, pulls the closest matches, and optionally re-ranks them through Venice for relevance.
Every interface hits the same engine and the same store. Add a memory through the CLI, retrieve it from Claude Desktop over MCP — same database, no sync.
MCP
Run Deja Vu as an MCP server so local agents and editors share the same memory store.
{
"mcpServers": {
"dejavu": {
"command": "dejavu",
"args": ["mcp"],
"env": {
"VENICE_API_KEY": "your-key"
}
}
}
}
Drop this into your Claude Desktop, Cursor, or any MCP-compatible client config.
Interfaces
| Interface | Use it for | | --- | --- | | Python SDK | Embedding memory directly into agents and scripts | | CLI (dejavu) | Quick adds, searches, and inspection from the terminal | | REST API | Language-agnostic access, local services, internal tools | | MCP server | Sharing one memory store across Claude Desktop, Cursor, and other MCP clients |
Privacy
- Memories stored locally under
~/.dejavu - No hosted memory account required
- Telemetry off by default
- LLM calls go through Venice only
Project structure
Deja Vu writes everything to ~/.dejavu/:
~/.dejavu/
├── config.json
dejavu/ <- core Python SDK and local memory engine cli/ <- Python and Node CLIs docs/ <- documentation examples/ <- demo apps and integration samples tests/ <- SDK and interface tests
## Background
Memory is the missing layer of the AI stack. Models get smarter every month and forget you every session. The few that remember keep your context on their servers, on their terms. Deja Vu builds the layer that should have existed from the start: a personal memory store you own, run locally, and carry into every tool that can talk to it. The long-term goal is a portable memory standard for AI, where your context is infrastructure you control rather than a feature locked inside someone else's product. This first release ships the foundation. Local storage, open interfaces, zero lock-in.
## Maintainer
- [JSingletonAI](https://github.com/JSingletonAI)
## Attribution
Deja Vu builds on the open-source work of [`mem0ai/mem0`](https://github.com/mem0ai/mem0), re-architected around a local-first, privacy-preserving design. Released under Apache-2.0.
## Source & license
This open-source MCP server is cataloged on AgentStack and links to its original source — we do not rehost the code.
- **Author:** [JSingletonAI](https://github.com/JSingletonAI)
- **Source:** [JSingletonAI/dejavu](https://github.com/JSingletonAI/dejavu)
- **License:** Apache-2.0
- **Homepage:** https://deja-vu.dev
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.