Persistent semantic memory layer for Claude Code with ONNX embeddings, HNSW vector search, and knowledge graph traversal
Mnemo MCP Server demonstrates solid definition quality across 9 well-named semantic memory tools. All tools have descriptions (ranging 40-90 chars, within baseline of 34-392), explicitly defined JSON schemas with zod validation, and clear input parameters with types and descriptions. Naming is consistent (verb_noun: recall, remember, forget, list, stats, suggest, run, context, depends_on) and self-documenting. However, there are notable gaps: (1) Output schemas are not documented, the code shows tool implementations but no explicit output type declarations visible in the server registration; (2) Error handling strategies are not visible, no recovery guidance, categorization, or actionable error messages in the source; (3) No pagination parameters despite tools like mnemo_list and mnemo_recall returning multiple results; (4) Parameter interdependencies underdocumented (e.g., project_hash behavior when scope varies); (5) No dry-run or confirmation pattern for the destructive mnemo_forget tool. The server follows good naming convention (all action verbs) and parameter typing is comprehensive, placing it solidly in the B - C range rather than A.
Everything known about an entity (a named service/module/concept): its memories and directly-related entities
Delete a memory by id (full or 8-char prefix)
List recent memories
Retrieve a named procedure as a checklist (use before executing the workflow)
Find a procedural workflow that matches a task description, if one exists
Semantic recall of stored memories
Capture a memory
Output schemas not documented. Tools return results but response structure/fields are not explicitly defined in MCP schema. LLMs cannot plan downstream chaining or extract fields safely.
Destructive tool (mnemo_forget) lacks confirmation or dry-run support. No recovery guidance in error handling. Agents can permanently delete memories without checkpoints.
Pagination not visible. mnemo_list and mnemo_recall accept limit/k but no offset, cursor, or total_count return documented. Large result sets risk context window exhaustion.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 58 | 2026-07-28+ | v2 |
Show memory engine stats
Graph traversal: which entities transitively require or use the named entity
Parameter interdependencies under-documented. project_hash behavior differs by scope; agent parameter scope is unclear across tools; min_score constraints (0 - 1) not universally applied.
Descriptions under 100 chars for mnemo_stats and mnemo_entity_context lack context on when/why to use them vs alternatives. No discovery guidance for multi-step workflows.