recall_memory
What it does
Returns memories ranked by importance (desc) then recency. Bumps last_accessed_at on every returned row so a cleanup job can spot stale rules.
Best practice: agents call this at the start of any creative or compliance task so brand rules they didn't personally save still apply.
Input schema
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
| query | string | optional | — |
Case-insensitive substring matched against content + topic. |
| type | string | optional | "any" |
Filter to a single memory type, or "any". |
| min_importance | number | optional | 0 |
Use 8 to fetch only hard rules. |
| limit | number | optional | 20 |
Hard cap 100. |
Example call
json{ "jsonrpc": "2.0", "id": 1, "method": "tools/call", "params": { "name": "recall_memory", "arguments": { "type": "rule", "min_importance": 7 } } }
Response shape
json{ "ok": true, "count": 2, "filters": { "query": null, "type": "rule", "min_importance": 7, "limit": 20 }, "memories": [ { "id": "mem_4f2a...", "type": "rule", "topic": "brand-corposost-no-scale-closeups", "content": "CorpoSostenibile NEVER wants...", "importance": 9, "source": "claude", "created_at": 1747830000, "updated_at": 1747830000, "last_accessed_at": 1747890000 } ] }
Usage from Claude Desktop
prompt"What hard rules do we have for CorpoSostenibile? I'm about to suggest cuts."
Usage from Python
pythonimport requests LUMIQA = "https://lumiqa.io/mcp/your-slug" HEADERS = {"Authorization": "Bearer lk_live_xxxxxxxxxxxx"} r = requests.post(LUMIQA, headers=HEADERS, json={ "jsonrpc": "2.0", "id": 1, "method": "tools/call", "params": { "name": "recall_memory", "arguments": {"query": "corposost", "min_importance": 7} }, }) print(r.json())
Usage from Node
javascriptconst r = await fetch("https://lumiqa.io/mcp/your-slug", { method: "POST", headers: { "Authorization": "Bearer lk_live_xxxxxxxxxxxx", "Content-Type": "application/json", }, body: JSON.stringify({ jsonrpc: "2.0", id: 1, method: "tools/call", params: { name: "recall_memory", arguments: { query: "corposost", min_importance: 7 }, }, }), }); const data = await r.json(); console.log(data);
Required env vars / integrations
- D1 table
workspace_memories.
Known limitations
- Substring search only — no full-text / embeddings yet.
- Returns up to
100rows; iterate by topic or type for larger pulls. - Bumping
last_accessed_atmutates state on every call — cache locally if you're fanning out hundreds of recalls.