Institutional memory for AI agent teams. Record, search, and share knowledge across projects.
Two tools with complete input schemas and detailed descriptions. memory_record has strong domain-specific guidance (authoritative policies, model auto-detection, JSON context). memory_search includes ranking logic and project_path rerank boost. However, output schemas are not documented in the source code, LLMs cannot see what fields to expect from responses. Parameter descriptions are good but lack explicit constraints (e.g., limit max=200 is mentioned in description but not in schema). No error handling guidance visible. No tool annotations (readOnlyHint/destructiveHint). Naming is clear (verb_noun pattern) but generic relative to domain.
Records a new memory in the organizational knowledge base. Types: pattern, decision, anti_pattern, lesson, observation. Tags are comma-separated. Context is JSON string with extra metadata. Model is auto-detected if not provided. Set ``is_authoritative=True`` for policies, personas, or hard constraints that the router's Layer 0.5 surfaces in every briefing whose tags overlap, regardless of similarity score. Suitable for capturing a learning from the current task that could inform future projects.
Searches organizational memory using natural language. Returns memories ranked by relevance (BM25 + tag overlap + confidence). Suitable for finding existing knowledge that may be relevant to a problem. R13 ``project_path``: when set, memories validated in the named project receive a small rerank boost so in-stack proven patterns surface ahead of equivalents from elsewhere. The response includes a ``query_event_id`` — passing it to ``search_feedback`` after picking a result lets Memee track hit@k.
Output schemas not documented. LLMs cannot see what fields memory_record and memory_search return, forcing them to guess downstream field names and risk broken tool chains.
No tool annotations (readOnlyHint, destructiveHint, idempotentHint). memory_record is a WRITE operation but lacks destructiveHint; memory_search is READ_ONLY but lacks readOnlyHint. Agents cannot infer safety/retry semantics.
No error handling guidance. Descriptions do not explain what to do if a search returns no results, if a record fails dedup, or if project_path is invalid. Agents have no recovery path.
Parameter constraints not formalized in schema. 'limit' description says 'max 200' but schema has no maximum constraint. 'type' enum is documented in description but not enforced in schema. LLMs may pass invalid values.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 59 | 2026-07-28+ | v2 |
No pagination guidance for memory_search. If a query matches 1000+ memories, response could explode context. No mention of next_cursor or offset handling.