Getting Started
Quick Start
Five lines. One artifact. Significance retrieval that raw vectors cannot match.
Install
Memory Platform Adapter
Enrich Mem0, Zep, or LangChain
npm install deepadata-mem0-adapterMCP Server
For Claude Desktop and AI agents
npx -y deepadata-edm-mcp-serverAuthenticate
Add your API key to your environment.
DEEPADATA_API_KEY=dda_live_your_keyGet your API key at deepadata.com/platform/api-access-keys
For scopes and key management, see Authentication →
First call
One function. Returns a structured significance artifact.
Set DEEPADATA_API_KEY in your .env file before running.
import { enrichWithEDM } from 'deepadata-mem0-adapter'
// DEEPADATA_API_KEY is read automatically from your environment variables
const { edmArtifact } = await enrichWithEDM(
"Had a long call with mum today. She remembered the kookaburra joke from my childhood.",
{ profile: 'extended' }
)Extended profile (50 fields) is the recommended default. Essential for lightweight capture. Full for clinical/regulated contexts. Set default per API key at /platform/api-access-keys.
Building for a specific vertical? Partner profiles let you select exactly the fields your use case needs. See the Profiles documentation.
What came back
The artifact encodes what mattered — not just what was said.
{
"constellation": {
"emotion_primary": "warmth",
"arc_type": "bond",
"narrative_arc": "reconnection"
},
"gravity": {
"emotional_weight": 0.82,
"recall_triggers": ["kookaburra", "childhood", "mum's voice"],
"identity_thread": "relationship with mother"
},
"milky_way": {
"associated_people": ["mum"],
"tether_type": "familial"
}
}Significance retrieval
Without EDM, the query "when was I happiest with mum" returns nothing — zero lexical overlap with the stored text. With EDM significance fields, it finds the right artifact.
Raw vector similarity
- Matches: what was said
- Miss rate on significance queries: 66.7%
EDM significance fields
- Matches: what mattered
- Hit rate on significance queries: 83.3% (15/18)
From a controlled comparison on the live /v1/activate endpoint. WhatMattered benchmark, 2026.
Query by significance
Call /v1/activate to translate a natural language query into significance field filters. Your memory system applies these alongside its existing semantic search.
// Step 1: Get significance field filters from /v1/activate
const { data } = await fetch(
'https://deepadata.com/api/v1/activate',
{
method: 'POST',
headers: {
'Authorization': 'Bearer dda_live_...',
'Content-Type': 'application/json',
},
body: JSON.stringify({
query: 'when was I happiest with mum',
subject_vp_id: 'user_123', // Replace with your user ID
}),
}
).then(r => r.json())
// data.field_filters contains:
// [
// { field: 'emotional_weight',
// operator: 'gte', value: 0.6,
// weight: 0.82 },
// { field: 'tether_type',
// operator: 'not_null',
// weight: 0.74 },
// { field: 'identity_thread',
// operator: 'not_null',
// weight: 0.69 }
// ]
// Step 2: Apply filters to your
// memory system query alongside
// semantic searchThe significance channel runs alongside your existing semantic search — it finds what similarity misses.