Persistent memory graph for AI coding agents — semantic search, knowledge graph, and time-based decay over MCP
Synapto has well-structured tool definitions with consistent naming (verb_noun pattern) and comprehensive parameter schemas. All 11 tools have descriptions and typed input parameters. However, descriptions are often generic and lack actionable guidance for LLM selection. Output schemas are not documented, LLMs cannot predict response structure. Error handling is absent from tool definitions. Parameter descriptions lack constraints (enums, ranges, formats). No tool annotations (readOnlyHint, destructiveHint, idempotentHint) despite clear risk classifications. Security-sensitive operations (delete, update) lack confirmation patterns.
Soft-delete ephemeral memories older than specified age
Count memories matching optional filters without retrieving full results
Create or retrieve an entity in the knowledge graph
Create a relation between two entities in the knowledge graph
Soft-delete a memory (marks as deleted but preserves data for recovery)
Retrieve a specific memory by ID with full details including entities and relations
Search and retrieve memories using hybrid semantic and full-text search with optional filtering
Store a new memory in the graph with semantic embeddings, optional entities/relations, and decay tracking
No output schemas documented. LLMs cannot predict response structure, forcing them to guess what fields are returned and how to chain tools. E.g., does recall_memories return memory_id, content, and entities? Does get_memory include relations?
Descriptions lack actionable guidance for LLM selection. E.g., 'Store a new memory' does not explain WHEN to use store_memory vs update_memory, or what happens to decay tracking. Descriptions average ~60 chars; baseline is 194 chars.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 51 | 2026-07-28+ | v2 |
Traverse the knowledge graph from an entity to discover related entities and memories
Recalculate decay scores for all active memories based on access patterns and time
Update an existing memory's content, metadata, and decay properties
No tool annotations despite clear risk classifications. delete_memory, update_memory, update_decay_scores, and cleanup_ephemeral are destructive/reversible but lack destructiveHint or idempotentHint. read_only tools lack readOnlyHint. Agents cannot reason about retry safety.
Parameter descriptions lack constraints. E.g., depth_layer accepts 'working, recent, longterm, archive' but no enum is declared. trust_score accepts 0-1 but no min/max constraint. LLMs hallucinate invalid values.
No error handling guidance in tool definitions. Destructive operations (delete_memory, cleanup_ephemeral) do not document recovery paths or confirmation patterns. Agents cannot distinguish retryable from fatal errors.