memory-mesh has 5 tools with basic descriptions and visible schemas via FastMCP decorators. However, descriptions are minimal (10-60 chars, well below the 194-char baseline), parameter descriptions are sparse or missing, and output schemas are not formally documented. No error handling guidance, no enum constraints on status parameters, and no security considerations for destructive operations. Tool naming is reasonable (verb_noun pattern), but parameter documentation is insufficient for LLM reasoning.
Delete a memory entry by ID.
List memory conflicts. status: 'pending' or 'resolved'.
Resolve a conflict by choosing the winning memory entry.
Save a memory entry. Returns the saved entry and any detected conflicts.
Search memory entries by semantic similarity.
Descriptions are too short (10-60 chars vs 194-char baseline). 'Delete a memory entry by ID' and 'Search memory entries by semantic similarity' lack context on when to use, what happens, and recovery guidance.
Parameter descriptions are missing or minimal. 'status' in list_conflicts lacks enum constraint (should be 'pending'|'resolved'). 'limit' in search_context has no range (should be 1-100 or similar). 'agent_id' defaults to 'claude' but no description explains why or when to override.
Output schemas are not documented. Tools return dicts (e.g. {'memory': ..., 'conflicts': [...]}) but LLMs cannot see the structure of nested fields. No documentation of what fields are in a conflict object or memory entry.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 42 | 2026-07-28+ | v2 |
No error handling guidance. delete_context returns {'success': false} on failure but does not explain why (not found? permission denied?) or what the LLM should do next. resolve_conflict may raise ValueError but no recovery hint is provided.
Destructive operations (delete_context, resolve_conflict) lack confirmation or dry-run support. An agent could accidentally delete all memories without a safety gate. No audit trail or permission checks visible.