Open-source AI memory server — 100% on LongMemEval, knowledge graph + vector search, no LLM required
Dragon Brain has 32 tools with complete input schemas and descriptions, but quality is uneven. Naming is verb-forward and clear (create_entity, search_memory, semantic_radar). Descriptions range from adequate (194 chars avg) to excellent (search_associative at 280+ chars with algorithm details). However, 8 tools lack output schema documentation, and several descriptions omit critical context like return structure or when to use vs. similar tools. Parameters are well-typed with descriptions, but some lack constraints (e.g., search_memory's 'strategy' enum not enforced in description). Error handling is absent, no recovery guidance or actionable error messages visible. Security: no evidence of secret injection or permission gates despite destructive operations (delete_entity, prune_stale). Composition is strong, tools chain well (search_memory → get_neighbors → traverse_path). Overall: solid foundation, but gaps in output documentation, error guidance, and security patterns prevent higher scores.
Adds an observation node linked to an entity.
Analyze graph structure using specified algorithm.
Archive an entity (logical hide).
Create a new entity in the memory graph.
Registers a new memory type in the ontology.
Create a relationship between two entities. Weight (0-1) indicates strength.
Deletes (or soft deletes) an entity.
No output schema documentation for 8 tools (analyze_graph, run_librarian_cycle, system_diagnostics, graph_health, get_evolution, archive_entity, prune_stale, end_session). LLMs cannot plan downstream calls or extract required fields without knowing return structure.
Destructive operations (delete_entity, delete_relationship, prune_stale) lack error handling guidance and confirmation patterns. No recovery instructions if deletion fails or succeeds unexpectedly. Agents cannot self-correct.
No permission gates or audit trail visible for sensitive operations. Tools like delete_entity and prune_stale accept no authorization context. No evidence of secret injection for credentials.
Inferred effective spec: 2026-07-28+.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 63 | 2026-07-28+ | v2 |
Deletes a relationship.
Diff the knowledge graph between two points in time. Shows what was added, removed, or evolved between two timestamps. Uses ISO 8601 format for timestamps (e.g., '2026-01-15T00:00:00Z').
Ends a session and records summary.
Analyzes the graph for non-obvious connections between disparate domains.
Find structural gaps: clusters that are semantically similar but poorly connected.
Scan graph for entity pairs that should be connected. Batch analysis across all entities (or a single project). Surfaces pairs that are semantically close but structurally distant.
Query 'Message in a Bottle' entities — timestamped notes to your future self.
Retrieve the evolution (history/observations) of an entity.
Retrieve neighboring entities up to a certain depth.
Find entities connected by temporal edges (before/after/both).
Get graph health metrics: nodes, edges, density, orphans, communities, avg degree.
List graph nodes with zero relationships (orphans). Returns id, name, node_type, project_id, focus, labels, and created_at for each orphan so the caller can decide whether to reconnect or delete them.
Execute a search considering only knowledge known before `as_of`.
Hard delete archived entities older than N days.
Query entities within a time window, ordered chronologically.
Session reconnect — structured briefing for a returning agent. Returns recent entities (last 24h), graph health summary, and time window.
Record a learning breakthrough.
Triggers the Librarian Agent to cluster and consolidate memories.
Associative search using spreading activation through the knowledge graph. Combines vector similarity with graph-based energy propagation for richer, context-aware retrieval. Score weights default to env vars W_SIMILARITY, W_ACTIVATION, W_SALIENCE, W_RECENCY.
Search for entities. mmr=True for diverse results. strategy: 'semantic', 'associative', 'temporal', 'relational', or None (hybrid default). temporal_window_days: lookback window for temporal queries (default 7). include_meta: when True, wraps results with temporal exhaustion metadata.
Discover potential relationships for an entity. Compares vector similarity with graph distance to find entities that are semantically related but poorly connected in the graph. Returns suggestions only — does NOT create any edges.
Starts a new session context.
Unified system diagnostics — graph stats, vector stats, and split-brain check.
Find the shortest path between two entities.
Updates properties of an existing entity.
Several descriptions lack context on when to use vs. similar tools. E.g., search_memory vs. search_associative vs. find_cross_domain_patterns, no guidance on which to call for different intents.
analyze_graph description omits what algorithms are available and what each returns. 'Analyze graph structure using specified algorithm' is vague, LLMs cannot infer valid algorithm names.