Getting Started
Get your first memory stored and queried in 2 minutes.
1. Get Your API Key
Sign up at console.mnemoverse.com to get a free API key. Free tier: 1,000 queries/day, no credit card required.
Your API key starts with mk_ and looks like: mk_live_a1b2c3d4e5f6...
Check your API key
Before the key goes into a config, ask the API whether it accepts it. Both forms ask for the key at a masked prompt and never pass it as a command argument, so it lands neither in your shell history nor in the process list.
macOS, Linux, Git Bash:
printf 'Mnemoverse API key: '; read -rs KEY; echo
printf 'X-Api-Key: %s\n' "$KEY" | curl -s -H @- https://core.mnemoverse.com/api/v1/memory/stats; unset KEYWindows PowerShell 5.1 and PowerShell 7:
$k = [Net.NetworkCredential]::new('', (Read-Host 'Mnemoverse API key' -AsSecureString)).Password
try { (Invoke-WebRequest https://core.mnemoverse.com/api/v1/memory/stats -Headers @{ 'X-Api-Key' = $k } -UseBasicParsing).Content }
catch { if ($_.ErrorDetails.Message) { $_.ErrorDetails.Message } else { (New-Object IO.StreamReader($_.Exception.Response.GetResponseStream())).ReadToEnd() } }; Remove-Variable k| The output contains | What it means |
|---|---|
JSON that includes "total_atoms" | The key works. |
"code":"UNAUTHORIZED" with a "reason" | The API refused the key and says why: placeholder_key, malformed_key, invalid_key, revoked_key or missing_key. Reasons for a 401 says what each one means. |
In the JSON, reason sits inside the details object, next to details.keys_url, the console page where keys are created. The message is written for a person and its wording can change, so a script should branch on details.reason.
Connecting Claude, ChatGPT, or an editor instead?
Those tools have their own setup — see Agent Setup. If a tool asks for an MCP server URL, that URL is https://mcp.mnemoverse.com/mcp. The core.mnemoverse.com/api/v1 URLs below are the REST API for curl/SDK calls, not an MCP endpoint.
2. Store a Memory
curl -X POST https://core.mnemoverse.com/api/v1/memory/write \
-H "X-Api-Key: mk_live_YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{
"content": "Retry with exponential backoff fixed the timeout issue",
"concepts": ["retry", "backoff", "timeout"],
"domain": "engineering"
}'Response:
{
"stored": true,
"atom_id": "550e8400-e29b-41d4-a716-446655440000",
"importance": 0.85,
"reason": "novel insight — high knowledge delta"
}The write gate compares each write with the nearest existing memory in the same domain and refuses only a write the embedder cannot tell apart from one already stored: stored is then false. The number in importance is that novelty score; the gate does not judge how important or how true a memory is.
3. Query Memories
curl -X POST https://core.mnemoverse.com/api/v1/memory/read \
-H "X-Api-Key: mk_live_YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{
"query": "how to handle timeouts?",
"top_k": 5
}'Response:
{
"items": [
{
"atom_id": "550e8400-e29b-41d4-a716-446655440000",
"content": "Retry with exponential backoff fixed the timeout issue",
"relevance": 0.92,
"similarity": 0.87,
"valence": 0.0,
"importance": 0.85,
"source": "semantic",
"concepts": ["retry", "backoff", "timeout"],
"domain": "engineering",
"metadata": {}
}
],
"episodic_hit": false,
"query_concepts": ["timeout", "handling"],
"expanded_concepts": ["timeout", "handling", "retry", "backoff"],
"search_time_ms": 12.5
}Notice expanded_concepts — Hebbian associations automatically expanded "timeout" to include "retry" and "backoff" based on learned connections.
4. Report Outcomes
When a memory was useful (or not), report it:
curl -X POST https://core.mnemoverse.com/api/v1/memory/feedback \
-H "X-Api-Key: mk_live_YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{
"atom_ids": ["550e8400-e29b-41d4-a716-446655440000"],
"outcome": 1.0,
"query_concepts": ["timeout", "handling"]
}'This does three things:
- Updates the memory's valence (outcome polarity) — future queries rank it higher
- Strengthens Hebbian edges between concepts — "timeout" and "retry" become more associated
- Creates co-activation links between query concepts and result concepts
Over time, the system learns which memories are useful for which queries.
5. Check Stats
curl https://core.mnemoverse.com/api/v1/memory/stats \
-H "X-Api-Key: mk_live_YOUR_KEY"{
"total_atoms": 1,
"episodes": 1,
"prototypes": 0,
"singletons": 0,
"hebbian_edges": 3,
"episodic_fingerprints": 0,
"domains": ["engineering"],
"avg_valence": 0.8,
"avg_importance": 0.85
}Next Steps
- Agent Setup — connect any AI tool (local MCP with a key, or one-click OAuth connector)
- Make Your Agent Use Memory: the standing instruction that makes your agent read and write memory without being reminded, and how to confirm the tools work first
- Claude Code — give the Claude CLI persistent memory
- Claude Desktop, Web & Mobile — the Claude apps (Desktop / web / mobile)
- Cursor, VS Code & Devin Desktop (Windsurf) — editor integrations
- ChatGPT — the custom MCP server connector, or a Custom GPT in a workspace
- Python SDK —
pip install mnemoversefor scripts and backends - API Reference — full endpoint documentation
- Rooms — shared memory across accounts for agent teams (beta)
- Security — how we isolate and protect your data