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 3300:3300 \
-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_URL": "http://localhost:3300",
"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_URL | Dakera server address | http://localhost:3300 |
| 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.