MCP server for Naeth, a personal memory system with hybrid search (semantic + lexical), relations graph, and OAuth 2.1 authorization. Provides tools for memory management, search, relations, and system status.
Naeth provides 10 tools with complete input schemas and descriptions in Spanish. Naming follows verb_noun convention (memory_add, memory_search, relation_add). Descriptions are moderately detailed (avg ~120 chars) but lack explicit guidance on when to use each tool vs. alternatives. Parameters are typed and described, but output schemas are not documented in the visible code. Error handling and recovery guidance are absent. The server implements a sophisticated memory/graph system but tool definitions do not expose enough structure for LLMs to reason about chaining or error recovery.
Alta de memoria (sincrona). Encola el embedding. Idempotente: si ya existe una fila vigente con el mismo content_hash, la devuelve sin duplicar.
Obtiene una memoria específica por ID, incluyendo su historial de versiones (supersessions).
Búsqueda híbrida RRF (semántica + léxica) sobre memory_current. Devuelve resumen corto (digest) si existe.
Estadísticas del sistema de memoria: conteo de memorias, relaciones, versiones y tombstones.
Nueva versión que reemplaza a parent_id. La vieja permanece (is_current=false). El digest no se hereda del padre.
Borrado lógico: INSERT en tombstone. La fila permanece pero se marca como eliminada.
Output schemas not documented. Tool descriptions state what is returned (e.g., 'Devuelve resumen corto (digest)') but do not specify the JSON structure, field types, or pagination. LLMs cannot plan downstream tool calls without knowing response shape.
No error handling or recovery guidance. Descriptions do not explain what errors are possible, whether they are retryable, or what the LLM should do next. E.g., memory_search does not document what happens if the query is malformed or if no results are found.
Descriptions lack context on tool selection. 'memory_supersede' vs 'memory_add' distinction is unclear from descriptions alone. No guidance on when to use memory_tombstone (logical delete) vs. alternatives, or whether tombstones are reversible.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 59 | <=2025-11-25 | v2 |
Inserta una arista explícita entre dos memorias en el grafo de relaciones.
Lista todas las relaciones explícitas del grafo, opcionalmente filtradas por memoria.
Borrado lógico de una relación: INSERT en tombstone. La fila permanece.
Estado del sistema: disponibilidad de base de datos, modelo de embeddings, y versión del servidor.
Idempotency not explicitly declared. memory_add claims idempotency ('Idempotente: si ya existe...') in description text, but tool annotations (idempotentHint) are not used. Other tools do not declare idempotency status, risking duplicate side effects on retry.
Descriptions in Spanish only. While technically complete, descriptions should be in English for maximum LLM compatibility. Spanish descriptions may reduce model performance on tool selection and parameter reasoning.