Claude Desktop Integration
Give Claude Desktop persistent memory that survives across conversations. Dakera's MCP server connects directly — Claude remembers your preferences, project context, and past interactions without re-explaining every session.
claude_desktop_config.json and you're set. All memory stays on your infrastructure.Quick Start
Start Dakera
docker run -d --name dakera \
-p 3000:3000 \
-e DAKERA_API_KEY=dk-your-key-here \
-v dakera-data:/data \
ghcr.io/dakera-ai/dakera:latest
Configure Claude Desktop
Edit claude_desktop_config.json:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"dakera": {
"command": "docker",
"args": ["run", "--rm", "-i",
"--network", "host",
"ghcr.io/dakera-ai/dakera-mcp:latest"],
"env": {
"DAKERA_API_URL": "http://localhost:3000",
"DAKERA_API_KEY": "dk-your-key-here",
"DAKERA_AGENT_ID": "claude-desktop",
"DAKERA_MCP_PROFILE": "core"
}
}
}
}
Restart Claude Desktop
Quit and reopen Claude Desktop. You'll see a hammer icon indicating MCP tools are available. Claude now has access to 14 core memory tools (86+ available via profiles).
What Claude Can Do with Memory
| Capability | What It Means |
|---|---|
| Store memories | Save facts, preferences, and context with importance scores |
| Recall by meaning | Hybrid vector + keyword search finds relevant past context |
| Session tracking | Group related memories by conversation session |
| Knowledge graphs | Build entity relationships from conversations (people, projects, decisions) |
| Memory decay | Old, unaccessed memories fade naturally — keeping recall sharp |
| Namespace isolation | Separate work memory from personal memory |
Example Interactions
Personal Preferences
Claude automatically stores preferences you mention:
You: "I prefer TypeScript over JavaScript and always use strict mode"
Claude: [stores with importance 0.8, tags: preferences, coding]
// Next session:
You: "Help me set up a new project"
Claude: [recalls preference] "I'll set this up with TypeScript in strict mode,
since that's your preference."
Project Context
You: "We're building a SaaS with Next.js, Prisma, and Stripe"
Claude: [stores project architecture context]
// Days later:
You: "Add a webhook handler for subscription changes"
Claude: [recalls Stripe + Next.js context] "I'll create a Next.js API route
at /api/webhooks/stripe that handles subscription.updated events using
your Prisma schema..."
Research & Notes
You: "I've been researching RAG approaches. Key finding: hybrid retrieval
outperforms pure vector by 15-20% on factual recall tasks."
Claude: [stores as high-importance research finding]
// Later:
You: "Should we use pure vector search for our docs chatbot?"
Claude: [recalls research] "Based on your earlier research, hybrid retrieval
outperforms pure vector by 15-20% on factual recall. I'd recommend combining
vector with BM25..."
Privacy & Data Control
- Self-hosted: All memory data stays on your machine or server. Nothing leaves your infrastructure.
- Encrypted: AES-256-GCM encryption at rest. Even if someone accesses the data files, they can't read your memories.
- You own the data: Export, backup, or delete any time. No lock-in.
- Per-namespace control: Create separate namespaces for work, personal, or different projects.
Configuration Options
| Variable | Description | Default |
|---|---|---|
| DAKERA_API_URL | Dakera server address | http://localhost:3000 |
| DAKERA_API_KEY | Authentication key | Required |
| DAKERA_AGENT_ID | Unique identifier for this agent | "default" |
| DAKERA_NAMESPACE | Memory namespace for isolation | "default" |
| DAKERA_MCP_PROFILE | Tool profile: core, power, admin, or all | "core" |
Profile Selection (DAKERA_MCP_PROFILE)
The DAKERA_MCP_PROFILE environment variable controls which tools appear when Claude lists available tools. Profiles let you balance capability vs. context window usage:
| Profile | Tools | Tokens | Best For |
|---|---|---|---|
| core | 14 | ~2,964 | Most users — store, recall, search, sessions, knowledge graphs |
| admin | 32 | ~5,975 | Operators — adds namespaces, API keys, policies, decay config |
| power | 68 | ~13,014 | Advanced agents — adds entity extraction, graph traversal, agent stats, feedback |
| all | 86 | ~16,026 | Full API surface — vectors, bulk ops, export/import, encryption |
# Set in your claude_desktop_config.json env block:
"DAKERA_MCP_PROFILE": "power" # Options: core, power, admin, all
core (default). Use the built-in dakera_discover_tools and dakera_load_tools meta-tools to pull in additional capabilities on demand without switching profiles.Next Steps
- Full MCP Server documentation — all 14 core tools (86+ available via profiles) explained
- Quick Start guide — detailed server setup
- Cursor integration — same memory for AI coding
- Memory Patterns — common use cases and architectures
Frequently Asked Questions
How do I add persistent memory to Claude Desktop?
Run the Dakera server via Docker, then add the dakera-mcp server block to your claude_desktop_config.json with your Dakera URL and API key. Restart Claude Desktop and the memory tools become available automatically.
Does Dakera work with Claude Desktop?
Yes, via the official dakera-mcp MCP server. Claude Desktop supports MCP natively, so no additional plugins or code changes are needed — just one config block.
What does Dakera add to Claude Desktop?
Dakera gives Claude persistent memory across conversations, hybrid BM25 + vector semantic search over past interactions, knowledge graph construction for entities and relationships, session tracking, namespace isolation, and memory decay. All data stays self-hosted on your infrastructure.
Further reading: MCP Protocol Explained · Dakera MCP: Real-World Use Cases · MCP Memory Server Setup Guide
Add persistent memory to your framework.
One Docker command starts the server. One pip or npm install gives your agents memory that survives the session.
Prefer managed hosting? Join the Dakera Cloud waitlist →