Search memories
recallSearch stored memories by full text and get top matches ranked by relevance, with partial matches returned when no exact term matches.
Instructions
Search memories by full text and get the best matches first.
Punctuation and filler words ("when", "does", "the", "de", "que"...) are ignored and words also match by prefix, so plain questions work. With the default match="auto", memories containing every term come first; if none do, partial matches are returned instead, ranked by how many terms they contain, and the result carries a "note" saying so. Ranking uses SQLite FTS5 bm25 relevance with recency as tiebreaker.
Returns {"query", "terms", "search_mode", "match_mode", "count", "hits"} where each hit has id, content, snippet (matches in [brackets]), matched_terms, namespace, tags, source, created_at, updated_at and age. A "hint" explains what to try when nothing matched.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| tags | No | Only return memories carrying ALL of these tags (case-insensitive). | |
| limit | No | Maximum number of hits. | |
| match | No | "all" = every term must match; "any" = at least one, most terms first; "auto" = "all", falling back to "any" when nothing matches every term. | auto |
| query | Yes | What to look for: key nouns ("ACME deploy") or a plain question ("when does ACME deploy?"). | |
| namespace | No | Only search this namespace ("" = all namespaces). |