{"_id":"@dakera-ai/dakera-mcp","_rev":"8-a38d6924bd03b899da6c3652ce1244f3","name":"@dakera-ai/dakera-mcp","dist-tags":{"latest":"0.11.0"},"versions":{"0.10.6":{"name":"@dakera-ai/dakera-mcp","version":"0.10.6","keywords":["mcp","ai","memory","agent","dakera"],"license":"MIT","_id":"@dakera-ai/dakera-mcp@0.10.6","maintainers":[{"name":"ferhimedamine","email":"ferhi.med.amine@gmail.com"}],"homepage":"https://dakera.ai","bugs":{"url":"https://github.com/dakera-ai/dakera-mcp/issues"},"bin":{"dakera-mcp":"bin/dakera-mcp"},"dist":{"shasum":"deb2be69f4b3357117f89bab2ccbce5a908d1f68","tarball":"https://registry.npmjs.org/@dakera-ai/dakera-mcp/-/dakera-mcp-0.10.6.tgz","fileCount":2,"integrity":"sha512-YC/p3tctDsLP8J4NTx4zGxsZlUgioxo8Bm/3DWW5Dp7NdsZ1hNz/7v60R+fjxEMpmuqeN4kdVedlCWBsF0GU9w==","signatures":[{"sig":"MEYCIQDzYFScfLS/wyXLVf5HJNMGnmgYOkIyUN3Bip96x1pt4gIhANuzc/z7cr9d/9wbPnwFy2jbzI5p01kKIt78oUT8rBtc","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2031},"engines":{"node":">=16"},"gitHead":"b528b42cc2048b0efc2b81b463695a33bc4274e8","_npmUser":{"name":"ferhimedamine","email":"ferhi.med.amine@gmail.com"},"repository":{"url":"git+https://github.com/dakera-ai/dakera-mcp.git","type":"git"},"_npmVersion":"10.8.2","description":"Dakera MCP Server — Model Context Protocol server for AI agent memory","directories":{},"_nodeVersion":"20.20.2","_hasShrinkwrap":false,"optionalDependencies":{"@dakera-ai/dakera-mcp-linux-x64":"0.10.6","@dakera-ai/dakera-mcp-darwin-x64":"0.10.6","@dakera-ai/dakera-mcp-darwin-arm64":"0.10.6"},"_npmOperationalInternal":{"tmp":"tmp/dakera-mcp_0.10.6_1779369146836_0.6210864902275668","host":"s3://npm-registry-packages-npm-production"}},"0.10.7":{"name":"@dakera-ai/dakera-mcp","version":"0.10.7","keywords":["mcp","ai","memory","agent","dakera"],"license":"MIT","_id":"@dakera-ai/dakera-mcp@0.10.7","maintainers":[{"name":"ferhimedamine","email":"ferhi.med.amine@gmail.com"}],"homepage":"https://dakera.ai","bugs":{"url":"https://github.com/dakera-ai/dakera-mcp/issues"},"bin":{"dakera-mcp":"bin/dakera-mcp"},"dist":{"shasum":"7886ba25933e50d0798509677664b63f05feacc5","tarball":"https://registry.npmjs.org/@dakera-ai/dakera-mcp/-/dakera-mcp-0.10.7.tgz","fileCount":3,"integrity":"sha512-WtdREAkVGPuQaa4M48Um4saCWkEHmXKCH1olkDpXs+Vxd3LMHf8fWxXhviF8bglzaUGoXHLQcUhXyfybL9pwNw==","signatures":[{"sig":"MEQCIEohRQb8r+L57FRqbB22iKT/UiwBZiKLWHRbSmDONM6RAiB8oeio8EY9t4xPWeShz/Rx02G9RwLKEIIcFGLbUnTQdw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8426},"engines":{"node":">=16"},"gitHead":"a9426b622e77acb0421f0225b0f80fe81229eb6b","_npmUser":{"name":"ferhimedamine","email":"ferhi.med.amine@gmail.com"},"repository":{"url":"git+https://github.com/dakera-ai/dakera-mcp.git","type":"git"},"_npmVersion":"10.8.2","description":"Dakera MCP Server — Model Context Protocol server for AI agent memory","directories":{},"_nodeVersion":"20.20.2","_hasShrinkwrap":false,"optionalDependencies":{"@dakera-ai/dakera-mcp-linux-x64":"0.10.7","@dakera-ai/dakera-mcp-darwin-x64":"0.10.7","@dakera-ai/dakera-mcp-darwin-arm64":"0.10.7"},"_npmOperationalInternal":{"tmp":"tmp/dakera-mcp_0.10.7_1779369956117_0.8173927197156623","host":"s3://npm-registry-packages-npm-production"}},"0.10.8":{"name":"@dakera-ai/dakera-mcp","version":"0.10.8","keywords":["mcp","ai","memory","agent","dakera"],"license":"MIT","_id":"@dakera-ai/dakera-mcp@0.10.8","maintainers":[{"name":"ferhimedamine","email":"ferhi.med.amine@gmail.com"}],"homepage":"https://dakera.ai","bugs":{"url":"https://github.com/dakera-ai/dakera-mcp/issues"},"bin":{"dakera-mcp":"bin/dakera-mcp"},"dist":{"shasum":"7b58f976f4654eefc12c94b94f83ffefa9e2d964","tarball":"https://registry.npmjs.org/@dakera-ai/dakera-mcp/-/dakera-mcp-0.10.8.tgz","fileCount":3,"integrity":"sha512-7V7h8Etk5cCV58jrDaFEni9kmz+aQKGJJAN68mcBGxKvHQ1Iq6laRpAY9tqWSIIzA2lASujGrSCRpeJNRWu91A==","signatures":[{"sig":"MEQCIB3NI4mLHH3b0xaqRTe2mYup52/UcIemAtGKBolyF93vAiBTS7SeMKgiFN7yko4m0pSVil9mHDhXbMGLXI6LMrzEOg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8426},"engines":{"node":">=16"},"gitHead":"899820ad08406123160b33d0d8e7cc3370a65446","_npmUser":{"name":"ferhimedamine","email":"ferhi.med.amine@gmail.com"},"repository":{"url":"git+https://github.com/dakera-ai/dakera-mcp.git","type":"git"},"_npmVersion":"10.8.2","description":"Dakera MCP Server — Model Context Protocol server for AI agent memory","directories":{},"_nodeVersion":"20.20.2","_hasShrinkwrap":false,"optionalDependencies":{"@dakera-ai/dakera-mcp-linux-x64":"0.10.8","@dakera-ai/dakera-mcp-darwin-x64":"0.10.8","@dakera-ai/dakera-mcp-darwin-arm64":"0.10.8"},"_npmOperationalInternal":{"tmp":"tmp/dakera-mcp_0.10.8_1779372173836_0.07571022760481716","host":"s3://npm-registry-packages-npm-production"}},"0.10.9":{"name":"@dakera-ai/dakera-mcp","version":"0.10.9","keywords":["mcp","ai","memory","agent","dakera"],"license":"MIT","_id":"@dakera-ai/dakera-mcp@0.10.9","maintainers":[{"name":"ferhimedamine","email":"ferhi.med.amine@gmail.com"}],"homepage":"https://dakera.ai","bugs":{"url":"https://github.com/dakera-ai/dakera-mcp/issues"},"bin":{"dakera-mcp":"bin/dakera-mcp"},"dist":{"shasum":"45cdd341c6da1f65c0f6daa919c38e9f1a70f974","tarball":"https://registry.npmjs.org/@dakera-ai/dakera-mcp/-/dakera-mcp-0.10.9.tgz","fileCount":3,"integrity":"sha512-Oj/MqpRIn2W0rN/MKp7dEBlqy209zA5AdZ+qzq2AUVVRAv9HTRMhAFh0yg08hgnQ8WduymM9RGcj81Nc/nT9mA==","signatures":[{"sig":"MEUCIG5C7kLDEzpq+5VsSpofrvr9PcCYzv74gPrLZoVwjoUgAiEAlMCMzvp4jrXD1EfOcTtRb+YZIXbdNR7MpkfmoT3bj6o=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9292},"engines":{"node":">=16"},"gitHead":"5a23d79d1132105830c631b2c96bd37791dc2dd7","_npmUser":{"name":"ferhimedamine","email":"ferhi.med.amine@gmail.com"},"repository":{"url":"git+https://github.com/dakera-ai/dakera-mcp.git","type":"git"},"_npmVersion":"10.8.2","description":"Dakera MCP Server — Model Context Protocol server for AI agent memory","directories":{},"_nodeVersion":"20.20.2","_hasShrinkwrap":false,"optionalDependencies":{"@dakera-ai/dakera-mcp-linux-x64":"0.10.9","@dakera-ai/dakera-mcp-darwin-x64":"0.10.9","@dakera-ai/dakera-mcp-darwin-arm64":"0.10.9"},"_npmOperationalInternal":{"tmp":"tmp/dakera-mcp_0.10.9_1781341196071_0.7363899562327356","host":"s3://npm-registry-packages-npm-production"}},"0.10.10":{"name":"@dakera-ai/dakera-mcp","version":"0.10.10","keywords":["mcp","ai","memory","agent","dakera"],"license":"MIT","_id":"@dakera-ai/dakera-mcp@0.10.10","maintainers":[{"name":"ferhimedamine","email":"ferhi.med.amine@gmail.com"}],"homepage":"https://dakera.ai","bugs":{"url":"https://github.com/dakera-ai/dakera-mcp/issues"},"bin":{"dakera-mcp":"bin/dakera-mcp"},"dist":{"shasum":"f4befa2a11cf3e0ac771ca1afd32576b70b3854b","tarball":"https://registry.npmjs.org/@dakera-ai/dakera-mcp/-/dakera-mcp-0.10.10.tgz","fileCount":3,"integrity":"sha512-gQu2rQzHOSXbBcNBe5qGuf+Yeh1BRbyIBU3XytDbOltrIyRsKzqNYiKXot/AfXgJdXM3xZ1SKVjlysL8KTyKKg==","signatures":[{"sig":"MEUCIQD8Yeiuxjv0IAA/Jbm1TzFQy6/uN2mvOpfOATM6XHPbJgIgfP9RoTU5k+FyczV1592HZyOJdVRjRT22ND/QGb67yLI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9417},"engines":{"node":">=16"},"gitHead":"e2635b01c4478876862bbc72304f0d69320d5aab","_npmUser":{"name":"ferhimedamine","email":"ferhi.med.amine@gmail.com"},"repository":{"url":"git+https://github.com/dakera-ai/dakera-mcp.git","type":"git"},"_npmVersion":"10.8.2","description":"Dakera MCP Server — Model Context Protocol server for AI agent memory","directories":{},"_nodeVersion":"20.20.2","_hasShrinkwrap":false,"optionalDependencies":{"@dakera-ai/dakera-mcp-linux-x64":"0.10.10","@dakera-ai/dakera-mcp-darwin-x64":"0.10.10","@dakera-ai/dakera-mcp-darwin-arm64":"0.10.10"},"_npmOperationalInternal":{"tmp":"tmp/dakera-mcp_0.10.10_1783097802064_0.7106284943752919","host":"s3://npm-registry-packages-npm-production"}},"0.10.11":{"name":"@dakera-ai/dakera-mcp","version":"0.10.11","keywords":["mcp","ai","memory","agent","dakera"],"license":"MIT","_id":"@dakera-ai/dakera-mcp@0.10.11","maintainers":[{"name":"ferhimedamine","email":"ferhi.med.amine@gmail.com"}],"homepage":"https://dakera.ai","bugs":{"url":"https://github.com/dakera-ai/dakera-mcp/issues"},"bin":{"dakera-mcp":"bin/dakera-mcp"},"dist":{"shasum":"5c99885e4d17954d9881fe15cd517693d7760744","tarball":"https://registry.npmjs.org/@dakera-ai/dakera-mcp/-/dakera-mcp-0.10.11.tgz","fileCount":3,"integrity":"sha512-MbK+UHPKTvDp3P6qEwDXV7S+efO7hwddEwhNmvoLFlTT5ow90Gbyeb8CozTmuYox2gKGvPF/tPWbOYq+V2bqJQ==","signatures":[{"sig":"MEYCIQDtB9XobSW3rKpBjc/dSGET15MVgnIVi/RsB4xGdDMwvwIhAMdD/BOxKPgYYDptT6nr+ZRQqWoHj7KB9j4w1rLQmlT5","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9417},"engines":{"node":">=16"},"gitHead":"62317790bc8751ae7d08975874fc101a225a8e00","_npmUser":{"name":"ferhimedamine","email":"ferhi.med.amine@gmail.com"},"repository":{"url":"git+https://github.com/dakera-ai/dakera-mcp.git","type":"git"},"_npmVersion":"10.8.2","description":"Dakera MCP Server — Model Context Protocol server for AI agent memory","directories":{},"_nodeVersion":"20.20.2","_hasShrinkwrap":false,"optionalDependencies":{"@dakera-ai/dakera-mcp-linux-x64":"0.10.11","@dakera-ai/dakera-mcp-darwin-x64":"0.10.11","@dakera-ai/dakera-mcp-darwin-arm64":"0.10.11"},"_npmOperationalInternal":{"tmp":"tmp/dakera-mcp_0.10.11_1784193442175_0.16444670726409605","host":"s3://npm-registry-packages-npm-production"}},"0.10.12":{"name":"@dakera-ai/dakera-mcp","version":"0.10.12","keywords":["mcp","ai","memory","agent","dakera"],"license":"MIT","_id":"@dakera-ai/dakera-mcp@0.10.12","maintainers":[{"name":"ferhimedamine","email":"ferhi.med.amine@gmail.com"}],"homepage":"https://dakera.ai","bugs":{"url":"https://github.com/dakera-ai/dakera-mcp/issues"},"bin":{"dakera-mcp":"bin/dakera-mcp"},"dist":{"shasum":"5ba779439d08d3fa4affd282729a11f9c96b60ad","tarball":"https://registry.npmjs.org/@dakera-ai/dakera-mcp/-/dakera-mcp-0.10.12.tgz","fileCount":3,"integrity":"sha512-ALBdiwn22p+Apa2oIzWinf5ctmxx1KTcftLGdTSE7fqZR5WT+AuGihpOIqdhdfGlWLSMTL1OyYdUS/FHLnNgbQ==","signatures":[{"sig":"MEUCIQCkiiyjdWKa5KW9FDAKOPpKnn07xR7Q02sZuNxzvxq0ogIgFVtYBch2nz9WqRI8eIaRG+a6jWW7WAch1KTRiSxZDBM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9430},"engines":{"node":">=16"},"gitHead":"9522f1b12482a9bfeb9f7d716d28ca512112a57d","_npmUser":{"name":"ferhimedamine","email":"ferhi.med.amine@gmail.com"},"repository":{"url":"git+https://github.com/dakera-ai/dakera-mcp.git","type":"git"},"_npmVersion":"10.8.2","description":"Dakera MCP Server — Model Context Protocol server for AI agent memory","directories":{},"_nodeVersion":"20.20.2","_hasShrinkwrap":false,"optionalDependencies":{"@dakera-ai/dakera-mcp-linux-x64":"0.10.12","@dakera-ai/dakera-mcp-darwin-x64":"0.10.12","@dakera-ai/dakera-mcp-darwin-arm64":"0.10.12"},"_npmOperationalInternal":{"tmp":"tmp/dakera-mcp_0.10.12_1788454634490_0.6164216783760703","host":"s3://npm-registry-packages-npm-production"}},"0.11.0":{"_id":"@dakera-ai/dakera-mcp@0.11.0","bin":{"dakera-mcp":"bin/dakera-mcp"},"bugs":{"url":"https://github.com/dakera-ai/dakera-mcp/issues"},"dist":{"shasum":"8de84feb9a04344d760b4357e4a0c0630db4d5ae","tarball":"https://registry.npmjs.org/@dakera-ai/dakera-mcp/-/dakera-mcp-0.11.0.tgz","fileCount":3,"integrity":"sha512-/nWfoHc3/fmaoH5S/SBOdXiWsSFXJvyhlpLdxfUTibLoWDziaZedicsnVPL/A5/7tJcIrAV6Xd7BFjtJkTZT2w==","signatures":[{"sig":"MEUCICfo+hIQ4KoEJ1a47uRtgh89BDkrVFED0A9URD2SPzT/AiEAuZxSmeZhCC2g2tgI9YwF0IfycabRVHWGOQMY1uR0hqM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIHbNeDGdzTR/vr8pCN6/18INgMt1wXPJtdGf721sGT8IAiBCwoxcRhuYu/YrIxQvulB+/YXKPn0FYnNpfdymIptPEg=="}],"unpackedSize":14574},"name":"@dakera-ai/dakera-mcp","engines":{"node":">=16"},"gitHead":"6bcea48b5d95856f89c15827c267eb152a40773f","license":"MIT","version":"0.11.0","_npmUser":{"name":"ferhimedamine","email":"ferhi.med.amine@gmail.com"},"homepage":"https://dakera.ai","keywords":["mcp","ai","memory","agent","dakera"],"repository":{"url":"git+https://github.com/dakera-ai/dakera-mcp.git","type":"git"},"_npmVersion":"10.8.2","description":"Dakera MCP Server — Model Context Protocol server for AI agent memory","directories":{},"maintainers":[{"name":"ferhimedamine","email":"ferhi.med.amine@gmail.com"}],"_nodeVersion":"20.20.2","_hasShrinkwrap":false,"optionalDependencies":{"@dakera-ai/dakera-mcp-linux-x64":"0.11.0","@dakera-ai/dakera-mcp-darwin-x64":"0.11.0","@dakera-ai/dakera-mcp-darwin-arm64":"0.11.0"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/dakera-mcp_0.11.0_1790881097009_0.38336702433887604"}}},"time":{"created":"2026-05-21T13:12:26.552Z","modified":"2026-10-01T18:58:17.405Z","0.10.6":"2026-05-21T13:12:27.881Z","0.10.7":"2026-05-21T13:25:56.265Z","0.10.8":"2026-05-21T14:02:53.961Z","0.10.9":"2026-06-13T08:59:56.198Z","0.10.10":"2026-07-03T16:56:42.199Z","0.10.11":"2026-07-16T09:17:22.344Z","0.10.12":"2026-09-03T16:57:14.632Z","0.11.0":"2026-10-01T18:58:17.100Z"},"bugs":{"url":"https://github.com/dakera-ai/dakera-mcp/issues"},"license":"MIT","homepage":"https://dakera.ai","keywords":["mcp","ai","memory","agent","dakera"],"repository":{"url":"git+https://github.com/dakera-ai/dakera-mcp.git","type":"git"},"description":"Dakera MCP Server — Model Context Protocol server for AI agent memory","maintainers":[{"name":"ferhimedamine","email":"ferhi.med.amine@gmail.com"}],"readme":"# ⚡ dakera-mcp\n\n[![CI](https://github.com/Dakera-AI/dakera-mcp/actions/workflows/ci.yml/badge.svg)](https://github.com/Dakera-AI/dakera-mcp/actions/workflows/ci.yml) [![Crate](https://img.shields.io/crates/v/dakera-mcp?logo=rust)](https://crates.io/crates/dakera-mcp) [![npm](https://img.shields.io/npm/v/%40dakera-ai%2Fdakera-mcp?logo=npm)](https://www.npmjs.com/package/@dakera-ai/dakera-mcp) [![Downloads](https://img.shields.io/crates/d/dakera-mcp)](https://crates.io/crates/dakera-mcp) [![License: MIT](https://img.shields.io/github/license/Dakera-AI/dakera-mcp)](LICENSE) [![LoCoMo 88.2%](https://img.shields.io/badge/LoCoMo-88.2%25-22c55e?style=flat-square)](https://dakera.ai/benchmark) [![Glama](https://glama.ai/mcp/servers/Dakera-AI/dakera-mcp/badge)](https://glama.ai/mcp/servers/Dakera-AI/dakera-mcp) [![Docs](https://img.shields.io/badge/docs-dakera.ai%2Fdocs-3b82f6?style=flat-square)](https://dakera.ai/docs) [![dakera.ai](https://img.shields.io/badge/dakera.ai-website-22c55e?style=flat-square)](https://dakera.ai) [![Playground](https://img.shields.io/badge/playground-try%20it-ff6b35?style=flat-square)](https://dakera.ai/playground)\n\nMCP server for Dakera AI. Gives any MCP-compatible AI agent persistent, queryable memory — with smart token management built in.\n\nWorks with Claude, Claude Code, and any MCP-compatible framework.\n\nPart of [Dakera AI](https://dakera.ai) — the memory engine for AI agents.\n\n> The Dakera memory engine scores **88.2% Recall@20 on LoCoMo** (1,536 evaluated questions · LLM-judged retrieval recall) — [benchmark details](https://dakera.ai/benchmark)\n\n---\n\n## Architecture: 14 core tools + on-demand discovery\n\nStarting every agent session with 60+ tool schemas wastes ~15K tokens before you write a single message. dakera-mcp solves this with **hybrid tool exposure**:\n\n- **14 tools loaded by default** — the 12 highest-frequency memory operations + 2 meta-discovery tools\n- **On-demand expansion** — use `dakera_discover_tools` and `dakera_load_tools` to fetch additional tool schemas only when you need them\n\n### Default tool set (core profile)\n\n| Tool | Purpose |\n|---|---|\n| `dakera_store` | Store a memory with importance, tags, and type |\n| `dakera_recall` | Semantic recall by query text |\n| `dakera_search` | Advanced memory search with tag/type filters |\n| `dakera_session_start` | Start a session to group related memories |\n| `dakera_session_end` | End a session with optional summary |\n| `dakera_batch_recall` | Bulk filter-based recall (by tags, importance, time) |\n| `dakera_forget` | Delete specific memories by ID |\n| `dakera_hybrid_search` | Combined vector + BM25 search |\n| `dakera_fulltext_search` | BM25 full-text search |\n| `dakera_knowledge_graph` | Build a knowledge graph from a seed memory |\n| `dakera_extract` | Extract entities and structure from free-form text |\n| `dakera_batch_forget` | Bulk delete by tags, type, or time range |\n| `dakera_discover_tools` | Search the full tool catalog by keyword or tier |\n| `dakera_load_tools` | Load full schemas for specific tools on demand |\n\n### Profiles & token cost\n\n| Profile | Tools | ~Tokens | How to enable |\n|---|---|---|---|\n| **core** | 14 | ~3,350 | Default — always loaded |\n| **admin** | 34 | ~6,700 | `DAKERA_MCP_PROFILE=admin` |\n| **power** | 79 | ~16,600 | `DAKERA_MCP_PROFILE=power` |\n| **all** | 99 | ~19,950 | `DAKERA_MCP_PROFILE=all` |\n\nToken figures are estimates (JSON bytes / 3). The attachment tools below count in `power` and `all`,\nbut only appear while the connected server has the feature on (see [Dakera v0.12](#dakera-v012)).\n\n### Accessing additional tools\n\n```\n# In your agent: discover what's available\ndakera_discover_tools(tier=\"power\")\n→ returns names + descriptions, no schemas loaded\n\n# Load schemas for the tools you want\ndakera_load_tools(tools=[\"dakera_consolidate\", \"dakera_agent_stats\"])\n→ returns full inputSchema for each tool\n```\n\n### Profile selection\n\nThe profile controls which tools appear in `tools/list`. Three ways to set it:\n\n**1. Per-request** (in `tools/list` params):\n```json\n{\"profile\": \"power\"}\n```\n\n**2. Environment variable** (applies to all requests):\n```bash\nDAKERA_MCP_PROFILE=power\n```\n\n**3. Default**: `core` (14 tools, ~3,350 tokens)\n\n---\n\n## Dakera v0.12\n\ndakera-mcp 0.11 works against **Dakera v0.11.108 and v0.12.0** servers. Every v0.11 tool keeps\nits name and arguments; the v0.12 additions are optional arguments that are sent only when you\nsupply them, and tools that call v0.12 routes.\n\n| Dakera server | dakera-mcp 0.11 |\n|---|---|\n| v0.12.0 | every tool; the attachment tools while `DAKERA_ATTACHMENTS` (and `DAKERA_VISION` for images) is on |\n| v0.11.108 | every v0.11 tool unchanged; the attachment tools, `dakera_encryption_status` and `dakera_embed_migration_status` are not listed (a direct call says they need v0.12); `dakera_encryption_rotate_key` needs `new_key` |\n| older | not tested |\n\n### What is new\n\n| Tool | Tier | Needs | What it does |\n|---|---|---|---|\n| `dakera_capabilities` | power | v0.12 | `GET /v1/capabilities`: active model, search mode, scoring strategy, accepted `lang` values, which opt-in features are on. On a v0.11 server it answers `capabilities_available: false` |\n| `dakera_health` | power | any | `GET /health`: status and version; on v0.12 also `degraded`, `config_warnings`, `embed_migration` |\n| `dakera_wake_up` | power | any | an agent's startup context in one call: its top memories by importance x recency, no query, no embedding |\n| `dakera_embed_migration_status` | admin | v0.12 | progress of the one-time background re-embed after the upgrade |\n| `dakera_encryption_status` | admin | v0.12 | the encryption keyring and the background re-seal (never key material) |\n| `dakera_encryption_rotate_key` | admin | v0.11+ | `new_key` is optional on v0.12 once encryption is on (the server generates a key; with encryption off, `new_key` turns it on); `wait_secs` (at most 20); `namespace` rotates one namespace |\n| `dakera_attachment_upload` / `_list` / `_download` / `_delete` | power | v0.12 + `DAKERA_ATTACHMENTS` | files (or text) a memory can reference with `dakera_store` `attachment_ref` |\n| `dakera_attachment_transcribe` | power | v0.12 + `DAKERA_ATTACHMENTS` | WAV speech to text in any language the model knows (`lang` forces one) into a memory; a background job, `wait_seconds` (at most 45) waits for it |\n| `dakera_attachment_index_image` | power | v0.12 + `DAKERA_ATTACHMENTS` + `DAKERA_VISION` | PNG page as a visual memory (use an agent dedicated to images: the visual lane stores page vectors) |\n| `dakera_attachment_job` | power | v0.12 + `DAKERA_ATTACHMENTS` | status of a transcription / index job |\n\nPer-request **`lang`** (`en`, `de`, `fr`, `es`, `it`, `pt`, `nl`; v0.12) is accepted by `dakera_store`,\n`dakera_recall`, `dakera_recall_associated`, `dakera_search`, `dakera_memory_update`, `dakera_extract`,\n`dakera_auto_tag` and the attachment jobs;\n`dakera_store` also takes `attachment_ref` (`sha256:<hex>` of an attachment in the agent's own namespace,\n`_dakera_agent_<agent_id>`). Neither is sent unless given, so the same calls work on a v0.11.108 server.\n\nOther optional arguments (all servers): `ttl_seconds` and `metadata` on `dakera_store`; `tags`,\n`memory_type` and `session_id` filters on `dakera_recall`; `limit` on `dakera_batch_recall`;\n`limit` / `offset` on `dakera_session_list`, `dakera_session_memories` and `dakera_agent_sessions`\n(the server pages at 50); `memory_type` on `dakera_knowledge_deduplicate`; `dedup_on_store` /\n`dedup_threshold` on `dakera_memory_policy_set`.\n\n### Features the server has off are left out\n\nThe opt-in features (attachments, speech to text, image indexing) are off by default on the server.\ndakera-mcp asks `GET /v1/capabilities` (once a minute, 3 s timeout) before it lists tools:\n\n* `attachments` off, or a server without `/v1/capabilities` (v0.11): the `dakera_attachment_*` tools are not\n  listed and not returned by `dakera_discover_tools`; a direct call answers with the variable to set\n  (`DAKERA_ATTACHMENTS=1`) and makes no request.\n* `vision` off: `dakera_attachment_index_image` is left out (`DAKERA_VISION=1` turns it on).\n* A server without `/v1/capabilities` (v0.11) also hides `dakera_encryption_status` and\n  `dakera_embed_migration_status`, whose routes are new in v0.12.\n* The server cannot be asked (down, starting, key refused): nothing is hidden (asked again after 10 s).\n\nThe default `core` profile has no opt-in tools, so it never makes that request.\n\n### Errors\n\nError answers keep the server's text and add a `Hint:` line for the v0.12 cases: a key **pinned to\nnamespaces** gets `403` on node-wide `/admin` routes (backups, encryption, quotas, config); backup\ndownload, upload and restore need `super_admin`; `413` (body over a limit, or a hard quota), `501`\n(feature off), `503` (`Retry-After`, which the retry logic now honours, up to 8 s) and `429` (rate\nlimit). A route the server lacks (an older server) and a v0.11 rotation without `new_key` get a hint\ntoo. A request that timed out is retried only when it is safe to repeat (GET, PUT, DELETE): a store,\nan import or a key rotation is never sent twice.\n\n---\n\n## Run Dakera\n\nThe MCP server connects to a Dakera memory server. You need one running first:\n\n```bash\ndocker run -d \\\n  --name dakera \\\n  -p 3000:3000 \\\n  -e DAKERA_ROOT_API_KEY=dk-mykey \\\n  ghcr.io/dakera-ai/dakera:latest\n```\n\nFor persistent storage (recommended):\n\n```bash\ncurl -sSfL https://raw.githubusercontent.com/Dakera-AI/dakera-deploy/main/docker-compose.yml \\\n  -o docker-compose.yml\nDAKERA_API_KEY=dk-mykey docker compose up -d\n\ncurl http://localhost:3000/health  # → {\"status\":\"ok\"}\n```\n\nFull deployment guide (Docker Compose, Kubernetes, Helm): [dakera-deploy](https://github.com/Dakera-AI/dakera-deploy)\n\n---\n\n## Install\n\n### npm / npx (Node.js 18+)\n\n```bash\n# Global install\nnpm install -g @dakera-ai/dakera-mcp\n\n# Or run directly without installing\nnpx @dakera-ai/dakera-mcp\n```\n\n### Homebrew (macOS / Linux)\n\n```bash\nbrew install dakera-ai/tap/dakera-mcp\n```\n\n### Cargo\n\n```bash\ncargo install dakera-mcp\n```\n\n### Docker\n\n```bash\ndocker pull ghcr.io/dakera-ai/dakera-mcp:latest\n```\n\n### Binary download\n\nPre-built binaries for macOS, Linux, and Windows are available on the [releases page](https://github.com/Dakera-AI/dakera-mcp/releases).\n\n| Platform | File |\n|---|---|\n| macOS (Apple Silicon) | `dakera-mcp-aarch64-apple-darwin.tar.gz` |\n| macOS (Intel) | `dakera-mcp-x86_64-apple-darwin.tar.gz` |\n| Linux x64 | `dakera-mcp-x86_64-unknown-linux-musl.tar.gz` |\n| Linux arm64 | `dakera-mcp-aarch64-unknown-linux-musl.tar.gz` |\n| Windows x64 | `dakera-mcp-x86_64-pc-windows-msvc.zip` |\n\n---\n\n## Connect\n\nAdd to `.mcp.json` (Claude Code) or `claude_desktop_config.json` (Claude Desktop):\n\n```json\n{\n  \"mcpServers\": {\n    \"dakera\": {\n      \"command\": \"dakera-mcp\",\n      \"env\": {\n        \"DAKERA_API_URL\": \"http://localhost:3000\",\n        \"DAKERA_API_KEY\": \"your-key\"\n      }\n    }\n  }\n}\n```\n\nTo start with the power profile (exposes up to 79 tools):\n\n```json\n{\n  \"mcpServers\": {\n    \"dakera\": {\n      \"command\": \"dakera-mcp\",\n      \"env\": {\n        \"DAKERA_API_URL\": \"http://localhost:3000\",\n        \"DAKERA_API_KEY\": \"your-key\",\n        \"DAKERA_MCP_PROFILE\": \"power\"\n      }\n    }\n  }\n}\n```\n\n## Why This Exists\n\nAI agents forget everything when the session ends. Dakera fixes that. This MCP server gives your agent a persistent memory layer with zero infrastructure overhead — point it at a Dakera instance and it works.\n\nThe 14-tool default keeps your context window lean. The meta-tools let you expand on demand when you need advanced operations like bulk vector upsert, knowledge graph traversal, or memory federation.\n\n→ [dakera.ai](https://dakera.ai) for hosted instance  \n→ Self-host with [dakera-deploy](https://github.com/dakera-ai/dakera-deploy)\n\n## Documentation\n\n→ [Full docs](https://dakera.ai/docs)  \n→ [MCP reference](https://dakera.ai/docs/mcp)\n\n## Related\n\n| Repo | What it is |\n|---|---|\n| [dakera-py](https://github.com/dakera-ai/dakera-py) | Python SDK |\n| [dakera-js](https://github.com/dakera-ai/dakera-js) | TypeScript SDK |\n| [dakera-cli](https://github.com/dakera-ai/dakera-cli) | CLI |\n| [dakera-deploy](https://github.com/dakera-ai/dakera-deploy) | Self-host Dakera |\n\n---\n\n**[dakera.ai](https://dakera.ai)** · [Documentation](https://dakera.ai/docs) · [Request Early Access](https://dakera.ai#cta)\n\n<sub>Part of the Dakera AI open-core ecosystem. Built with Rust. Self-hosted. Zero dependencies.</sub>\n","readmeFilename":"README.md"}