Skip to main content
Glama

NeuralMemory

GitHub stars PyPI Downloads CI Python 3.11+ License: MIT VS Code OpenClaw Plugin

Ваш ИИ-агент забывает всё между сессиями. Neural Memory даёт ему мозг.

Воспоминания хранятся как взаимосвязанные нейроны и извлекаются через распространяющуюся активацию — так же, как работает человеческий мозг. Никакой векторной базы данных. Никаких API-вызовов. Никакого ежемесячного счёта за эмбеддинги.

pip install neural-memory

Перезапустите ваш ИИ-инструмент. Ваш агент теперь помнит — init не нужен, MCP-сервер автоматически инициализируется при первом использовании.

Уже установлено? nmem update обновляет на месте и определяет, установили ли вы через pip или из исходников. nmem update --check только сообщает, что доступно.

CLI — это nmem (или более длинное neural-memory). Бинарника nm не существует.


3 инструмента. Вот и всё.

Доступно 63 MCP-инструмента, но вам нужны только три:

Инструмент

Что делает

nmem_remember

Сохраняет воспоминание — автоматически определяет тип, теги и связи

nmem_recall

Извлекает через распространяющуюся активацию — связанные воспоминания всплывают естественно

nmem_health

Оценка здоровья мозга (A–F) с практическими рекомендациями по исправлению

Всё остальное — сессии, загрузка контекста, отслеживание привычек, обслуживание — работает прозрачно в фоновом режиме.

Все 63 MCP-инструмента →


Related MCP server: dejaview-mcp

В чём отличие

Большинство инструментов памяти — это поисковые системы. Neural Memory — это граф, который думает.

Когда вы спрашиваете «Почему произошёл сбой во вторник?», векторная база данных возвращает наиболее похожее предложение. Neural Memory прослеживает цепочку:

outage ← CAUSED_BY ← JWT expiry ← SUGGESTED_BY ← Alice's review

Связи явные — CAUSED_BY, LEADS_TO, RESOLVED_BY, CONTRADICTS — поэтому ваш агент не просто находит воспоминания, а рассуждает через них.

Поисковый (RAG)

Neural Memory

Извлечение

Оценка сходства

Обход графа

Связи

Нет

24 явных типа

Требуется LLM

Да (эмбеддинги)

Нет — полностью офлайн

Многошаговые рассуждения

Несколько запросов

Один обход

Жизненный цикл памяти

Статичный

Затухание, подкрепление, консолидация

Стоимость на 1K запросов

~$0.02

$0.00


Облачная синхронизация — ваши данные, ваша инфраструктура

Синхронизируйте свой мозг на всех машинах. В отличие от других инструментов памяти, мы никогда не храним ваши данные.

Laptop ←→ Your Cloudflare Worker ←→ Desktop
                  ↕
              Your Phone

Вы разворачиваете синхронизационный хаб в своём аккаунте Cloudflare (бесплатный тариф). Ваша база данных D1, ваш ключ шифрования, ваши данные. Мы предоставляем код — вы владеете инфраструктурой.

nmem sync              # push/pull changes
nmem sync --auto       # auto-sync after every remember/recall

Синхронизация использует Merkle-дельту — передаются только различия, а не весь мозг. Быстро, эффективно, приватно.

Руководство по настройке облачной синхронизации →


Возможности

Память и извлечение

  • 14 типов памяти — факт, решение, ошибка, инсайт, предпочтение, рабочий процесс, инструкция и другие

  • Распространяющаяся активация — воспоминания всплывают по ассоциации, а не по совпадению ключевых слов

  • Когнитивные рассуждения — выдвигайте гипотезы, предоставляйте доказательства, делайте прогнозы, проверяйте с байесовской уверенностью

  • Пресеты нагрузки — nmem config preset {balanced,safe-cost,max-recall,chat-heavy} настраивают мозг для SaaS, экономного режима, глубокого удержания или разговорных агентов

  • Временное извлечение — nmem_causal предоставляет действия temporal_range и temporal_neighborhood; см. руководство по рецептам временного извлечения

Приём знаний

  • Обучение на документах — PDF, DOCX, PPTX, HTML, JSON, XLSX, CSV загружаются в постоянные знания мозга

  • Импортные адаптеры — миграция из ChromaDB, Mem0, Cognee, Graphiti, LlamaIndex одной командой

Жизненный цикл и хранение

  • Консолидация памяти — эпизодические воспоминания со временем превращаются в семантические знания

  • Уровни сжатия — полный → сводка → суть → призрак → метаданные (освободите хранилище, сохранив смысл)

  • Версионирование мозга — снимок, откат, diff, перенос воспоминаний между мозгами

Сообщество

  • Brain Store — просматривайте, импортируйте и публикуйте готовые мозги на маркетплейсе сообщества

  • 3 стартовых мозга — Python Best Practices, Git Workflows, Docker Essentials (готовы к импорту)

Экосистема

  • Веб-панель — 7-страничный React UI с визуализацией графа, радаром здоровья, таймлайном, ментальной картой и Brain Store

  • Расширение VS Code — дерево памяти, обозреватель графа, CodeLens, синхронизация через WebSocket (Marketplace →)

  • Безопасность — шифрование Fernet, автоматическое обнаружение конфиденциального содержимого, параметризованный SQL, проверка путей

  • Резервное копирование в Telegram — отправляйте файлы мозга .db в Telegram для внешнего резервного копирования


Быстрые примеры

# Store memories (type auto-detected)
nmem remember "Fixed auth bug with null check in login.py:42"
nmem remember "We decided to use PostgreSQL" --type decision
nmem todo "Review PR #123" --priority 7

# Recall
nmem recall "auth bug"
nmem recall "database decision" --depth 2

# Brain management
nmem brain list && nmem brain health
nmem brain export -o backup.json

# Sync across devices
nmem sync --full

# Web dashboard
nmem serve    # http://localhost:8000/dashboard
import asyncio
from neural_memory import Brain
from neural_memory.storage import InMemoryStorage
from neural_memory.engine.encoder import MemoryEncoder
from neural_memory.engine.retrieval import ReflexPipeline

async def main():
    storage = InMemoryStorage()
    brain = Brain.create("my_brain")
    await storage.save_brain(brain)
    storage.set_brain(brain.id)

    encoder = MemoryEncoder(storage, brain.config)
    await encoder.encode("Met Alice to discuss API design")
    await encoder.encode("Decided to use FastAPI for backend")

    pipeline = ReflexPipeline(storage, brain.config)
    result = await pipeline.query("What did we decide about backend?")
    print(result.context)  # "Decided to use FastAPI for backend"

asyncio.run(main())

Neural Memory Pro

Бесплатная Neural Memory полна — 63 инструмента, безлимитные воспоминания, полностью офлайн. Вам никогда не придётся платить.

Но после 10K воспоминаний всё меняется. Сопоставление по ключевым словам упускает семантически связанное содержимое. Консолидация замедляется до минут. Хранилище растёт без ограничений. Если мозг вашего агента становится большим, Pro делает его умным.

Бесплатная версия извлекает по ключевым словам. Pro извлекает по смыслу.

Query: "authentication improvements"

Free (FTS5):  2 results — exact matches only
Pro  (HNSW):  7 results — includes "JWT rotation", "session hardening", "OAuth migration"

Что добавляет Pro

Бесплатная (SQLite)

Pro (InfinityDB)

Извлечение

Сопоставление по ключевым словам (FTS5)

Семантическое сходство (HNSW)

Скорость на 1M нейронов

~500ms

<5ms

Протестированный масштаб

~50K нейронов

2M+ нейронов

Сжатие

Обрезка на уровне текста

5-уровневое векторное сжатие (экономия 97%)

Консолидация

O(N²) полный перебор

O(N×k) кластеризация HNSW

Хранилище на 1M

~5 ГБ

~1 ГБ

Облачная синхронизация

Ручной push/pull

Merkle-дельта (авто, только различия)

Эксклюзивные функции Pro

  • Cone Queries — настраиваемое семантическое извлечение. Сузьте конус для точности, расширьте для исследования

  • Smart Merge — консолидация, масштабирующаяся до 1M+ нейронов с помощью кластеризации соседей HNSW

  • Directional Compression — сжатие по нескольким семантическим осям с сохранением смысла

  • 5-уровневый автоматический жизненный цикл — воспоминания переходят от float32 → float16 → int8 → binary → metadata. Автоповышение при доступе

Получить Pro

pip install neural-memory                 # Pro features included
nmem shared activate --key NM-PRO-XXXX-XXXX-XXXX   # activate license
nmem shared status                                 # verify: Pro: Active

$9/мес — 30-дневная гарантия возврата денег. Все бесплатные инструменты продолжают работать. Понижайте тариф в любое время, сохраняя свои данные.

Быстрый старт Pro → · Полное сравнение → · Цены →


Настройка по инструменту

/plugin marketplace add nhadaututtheky/neural-memory
/plugin install neural-memory@neural-memory-marketplace
pip install neural-memory

Добавьте в MCP-конфигурацию вашего редактора:

{
  "mcpServers": {
    "neural-memory": { "command": "nmem-mcp" }
  }
}

Навык — один клик через ClawHub. Публикуется при каждом релизе:

clawhub.ai/skills/neural-memory

Плагин — замена слота памяти. Используйте это, если хотите, чтобы NeuralMemory была провайдером памяти OpenClaw, а не навыком, который он вызывает:

pip install neural-memory && npm install -g neuralmemory

Установите слот памяти в ~/.openclaw/openclaw.json:

{ "plugins": { "slots": { "memory": "neuralmemory" } } }

Уже используете Neural Memory? Просто активируйте свой ключ:

nmem shared activate --key NM-PRO-XXXX-XXXX-XXXX   # activate license

Затем включите InfinityDB (семантический поисковый движок):

# ~/.neuralmemory/config.toml
storage_backend = "infinitydb"

Перезапустите ваш MCP-сервер. Существующие воспоминания автоматически мигрируют из SQLite в InfinityDB при первом запуске.

Получить лицензию → · Быстрый старт Pro →

pip install neural-memory[server]              # FastAPI server + dashboard
pip install neural-memory[extract]             # PDF/DOCX/PPTX/HTML/XLSX extraction
pip install neural-memory[nlp-vi]              # Vietnamese NLP
pip install neural-memory[embeddings]          # Local embedding models
pip install neural-memory[embeddings-openai]   # OpenAI embeddings
pip install neural-memory[all]                 # Everything

Метрика

NeuralMemory

Mem0

Cognee

Запись 50 воспоминаний

1.2s

148.2s (в 121 раз медленнее)

290.6s (в 80 раз медленнее)

Чтение 20 запросов

1.8s

2.9s

34.6s

API-вызовы

0

70

149

Ноль LLM-вызовов, нулевая стоимость API. Полные бенчмарки → · Доказательства релиза Cognitive Efficiency →


Документация

Руководство

Описание

Руководство по быстрому старту

Интерактивное руководство с анимированными демонстрациями

Быстрый старт Pro

Начните работу с функциями Pro

Справочник CLI

Все 82 команды CLI

Справочник MCP-инструментов

Все 63 MCP-инструмента с параметрами

Облачная синхронизация

Настройка синхронизации на нескольких устройствах

Руководство по здоровью мозга

Понимание и улучшение здоровья мозга

Настройка эмбеддингов

Настройка провайдеров эмбеддингов

Архитектура

Глубокое погружение в технический дизайн

Разработка

git clone https://github.com/nhadaututtheky/neural-memory
cd neural-memory && pip install -e ".[dev]"
nmem doctor --dev        # Verify contributor setup
pytest tests/ -v          # 7800+ tests
ruff check src/ tests/    # Lint

См. CONTRIBUTING.md для получения рекомендаций.

Поддержка

Если Neural Memory помогает вашему ИИ-агенту помнить, пожалуйста, подумайте о том, чтобы поставить звезду — это помогает другим узнать о проекте и поддерживает разработку.

Вы также можете спонсировать проект.

Лицензия

MIT — см. LICENSE.

Available Tools

10 tools
nmem_autoA

Auto-extract memories from text. 'process'=analyze+save, 'flush'=emergency capture before compaction. Use at session end or when processing large text blocks.

ParametersJSON Schema
NameRequiredDescriptionDefault
saveNoForce save even if auto-capture disabled (for 'analyze')
textNoText to analyze (required for 'analyze' and 'process')
actionYesAction: 'process' analyzes and saves, 'analyze' only detects, 'flush' emergency capture before compaction (skips dedup, lower threshold)
compactNoReturn compact response (strip metadata hints, truncate lists). Saves 60-80% tokens.
token_budgetNoMax tokens for response. Progressively strips content to fit budget.

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full disclosure burden. It does reveal that 'process' saves (mutation) and that 'flush' is an emergency capture skipping dedup with a lower threshold, but says nothing about what gets overwritten, idempotency, or permission requirements for a write-capable tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two tight sentences, action semantics front-loaded before the usage note. Minor redundancy with the action enum descriptions, but no filler or preamble.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a mutation-capable tool with no annotations and no output schema, the description covers triggers and the two key actions but omits what the caller gets back and the safety profile. Adequate as a minimum viable entry point, with clear gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so all five parameters including the action enum are already documented in the schema, and the description's enum glosses largely restate it. Baseline 3 applies; the description adds little parameter meaning beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource: auto-extract memories from text, and sketches the two most consequential actions ('process'=analyze+save, 'flush'=emergency capture). It does not differentiate itself from close siblings like nmem_remember or nmem_remember_batch, so the agent cannot fully tell which entry point to prefer.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives concrete context: 'Use at session end or when processing large text blocks,' and ties 'flush' to the pre-compaction emergency case. It offers no explicit exclusions (e.g., when to fall back to nmem_remember instead), so the routing is implied rather than closed.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

nmem_contextA

Get recent memories as auto-injected context. Use for broad task context. For specific queries use nmem_recall. For project-level context use nmem_recap.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoNumber of recent memories (default: 10)
compactNoReturn compact response (strip metadata hints, truncate lists). Saves 60-80% tokens.
fresh_onlyNoOnly include memories < 30 days old
token_budgetNoMax tokens for response. Progressively strips content to fit budget.
include_ghostsNoInclude faded ghost memories at bottom of context with recall keys (default: true). Set false to suppress.
warn_expiry_daysNoIf set, warn about memories expiring within this many days. Adds expiry_warnings to response.

TDQS

A4.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full behavioral burden. 'Get' plus 'auto-injected context' implies a read-only, non-mutating operation and hints that the content feeds automatic injection, but it says nothing about ordering, freshness defaults, or what happens when the token budget is exceeded. The richer behavioral details (token stripping, compact mode, ghost memories, expiry warnings) live only in the parameter descriptions, not the tool description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three short sentences, zero filler, and the core scoping statement is front-loaded ahead of the alternative routing. Every sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a six-parameter read tool with no output schema and no annotations, the description plus the rich parameter descriptions cover enough to invoke it correctly. The only remaining gap is the shape of the returned context, which is partly compensated by parameters like compact, token_budget, and warn_expiry_days that describe response behavior.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% and all six parameters carry clear, substantive descriptions (defaults, ranges, and effects like 'strip metadata hints' or 'calls_expiry_warnings'). The tool description adds no parameter-level meaning at all, so the baseline 3 for full schema coverage is correct.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Get recent memories') and immediately frames the output as 'auto-injected context', which tells the agent what kind of payload to expect. It explicitly distinguishes itself from two siblings (nmem_recall, nmem_recap), so the agent can select it without opening any other schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives an explicit use case ('broad task context') and routes two alternatives by condition: specific queries to nmem_recall, project-level context to nmem_recap. This is a clean when-to-use / which-alternative mapping with nothing left to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

nmem_eternalA

SAVE project context, decisions, instructions that persist across sessions. Pair with nmem_recap to LOAD. Use for project-level facts, not task-specific memories.

ParametersJSON Schema
NameRequiredDescriptionDefault
actionYesstatus=view memory counts and session state, save=store project context/decisions/instructions
reasonNoReason for the decision
compactNoReturn compact response (strip metadata hints, truncate lists). Saves 60-80% tokens.
decisionNoAdd a key decision (saved as DECISION)
tech_stackNoSet tech stack (saved as FACT)
instructionNoAdd a persistent instruction (saved as INSTRUCTION)
project_nameNoSet project name (saved as FACT)
token_budgetNoMax tokens for response. Progressively strips content to fit budget.

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must carry the full behavioral burden. It mentions persistence across sessions, which is a key behavioral trait, but doesn't describe whether saving is reversible, what permissions are required, or what happens to existing memories when new ones are added. For a mutation tool with zero annotation coverage, this is a notable gap.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise sentences that are front-loaded with the core action and purpose. Every sentence adds value without redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity (8 parameters, mutation operation, no annotations, no output schema), the description covers the basic purpose and a key usage distinction, but leaves significant gaps regarding behavioral traits like reversibility, permissions, and interaction with existing memories. It is adequate but not complete for a tool of this complexity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all 8 parameters thoroughly. The description doesn't add any parameter-specific meaning beyond what the schema provides. Baseline 3 is appropriate when the schema does all the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb and resource: it SAVES project context, decisions, and instructions that persist across sessions. It distinguishes itself somewhat from siblings by scoping to project-level facts rather than task-specific memories, which helps differentiate it from nmem_remember.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly says to use for project-level facts, not task-specific memories, and pairs it with nmem_recap for loading. It doesn't name all relevant alternatives like nmem_remember, but the primary when-to-use condition is clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

nmem_recallA

Query memories via spreading activation. Use when you need past context, decisions, or knowledge. Depth: 0=instant lookup, 1=context (default), 2=cross-time patterns, 3=deep graph. Add tags for precision. Use nmem_context instead for broad recent context.

ParametersJSON Schema
NameRequiredDescriptionDefault
modeNoRecall mode: 'associative' (default) returns formatted context, 'exact' returns raw neuron contents verbatim without truncation or summarization.
tagsNoFilter by tags. Checks tags, auto_tags, and agent_tags columns.
tierNoFilter results by memory tier. Only return memories matching this tier.
as_ofNoISO datetime for time-travel recall. Returns only memories that existed at that point in time (created_at <= as_of) and reconstructs their maturation stage. Example: '2026-03-01T00:00:00' recalls memory state as of March 1st.
depthNoSearch depth: 0=instant (direct lookup, 1 hop), 1=context (spreading activation, 3 hops), 2=habit (cross-time patterns, 4 hops), 3=deep (full graph traversal). Auto-detected if unset.
layerNoLayer scope: 'auto' (default) merges project + global brains, 'project' restricts to current brain only, 'global' queries only the global brain.
queryYesThe query to search memories
brainsNoOptional list of brain names to query across (max 5). When provided, runs parallel recall across all specified brains and merges results.
domainNoDomain scope filter. When set, HOT context injection only includes boundaries tagged with this domain (plus unscoped global boundaries). Example: domain='financial' filters out security boundaries from context.
compactNoCompact mode: return only core answer + confidence, skip all optional metadata (thought_chains, sources, cognitive_chunks, etc). Saves 200-800 tokens. Default: true. Set false for full metadata.
valenceNoFilter: only return memories with this emotional valence. Valence is detected at encoding via sentiment analysis. Use to find e.g. only frustrations (negative) or breakthroughs (positive).
tag_modeNoTag matching mode: 'and' (default, all tags must match) or 'or' (any tag matches).
valid_atNoISO datetime string to filter memories valid at that point in time (e.g. '2026-02-01T12:00:00')
min_trustNoFilter: only return memories with trust_score >= this value. Unscored memories (NULL) are always included.
max_tokensNoMaximum tokens in response (default: 500)
min_arousalNoFilter: only return memories with arousal (emotional intensity) >= this value. Arousal is detected at encoding time (0.0=neutral, 1.0=maximum intensity). Use to find emotionally significant memories (e.g. incidents, breakthroughs).
token_budgetNoMax tokens for response. Progressively strips content to fit budget.
include_pathsNoInclude activation paths (thought chains) showing how each neuron was reached. Returns top-5 paths with neuron content and hop distance. Default: false.
prefer_recentNoRe-rank matched fibers newest-first (by time_end, fallback created_at). Use for queries about current state ('what's the current version', 'today's status'). Do NOT use for historical questions ('how did we design X') — recency bias will mislead. Default: false.
include_statusNoLifecycle status filter. Default surfaces only 'active' neurons. Pass ['active', 'superseded'] to also see auto-superseded memories (Reflex Arc winners), or ['expired'] for past-validity-window history queries.
min_confidenceNoMinimum confidence threshold
permanent_onlyNoExclude ephemeral (session-scoped) memories from results. Default: false (include all).
show_provenanceNoAppend a one-line provenance footer (`[src=… · YYYY-MM-DD · conf=…]`) to each related neuron in recall output. Default: true. Set false to save ~5-8% tokens when caller does not need attribution.
clean_for_promptNoReturn clean bullet-point text without section headers or neuron-type tags. Default: true.
exclude_reflexesNoExclude reflex (always-on) neurons from this recall. Default: false.
warn_expiry_daysNoIf set, warn about memories expiring within this many days. Adds expiry_warnings to response.
include_citationsNoInclude citation and audit trail in exact recall results (default: true).
include_conflictsNoInclude full conflict details in response (default: false). When false, only has_conflicts flag and conflict_count are returned.
simhash_thresholdNoSimHash pre-filter Hamming distance cutoff. Neurons with content_hash farther than this threshold from the query hash are excluded before spreading activation. 0 = disabled (default). Lower values = stricter filtering. Overrides brain config for this query.
recall_token_budgetNoWhen set, activates budget-aware fiber selection: ranks fibers by value-per-token and selects the most efficient ones to fit within this budget. Adds budget_stats to the response. Default: not set (uses standard sequential truncation).

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full behavioral burden. It discloses the retrieval mechanism (spreading activation) and the depth ladder, but says nothing about cost (token budgets, compact default), the read-only nature, or what the response looks like. The depth explanation largely duplicates the schema rather than adding behavioral context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Five short, front-loaded sentences with the core purpose first and the sibling redirect last; nothing is padded. The depth enumeration is the only segment that restates structured data rather than adding new information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 30-parameter tool with no output schema and no annotations, the description is thin: it never mentions the rich filter surface (tier, as_of, valence, trust/arousal thresholds) or the shape of what comes back, even though the absent output schema means the description could reasonably carry some of that. The schema's 100% coverage keeps this from being inadequate, but it is only minimally sufficient.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so all 30 parameters are already documented in the schema, and the description's depth ladder repeats what the schema's depth property already says. It adds no syntax, defaults, or interactions beyond the structured fields, so the baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Query memories') and the mechanism ('spreading activation'), then explicitly distinguishes itself from the sibling nmem_context for broad recent context. An agent can pick this tool over its 9 siblings without opening any schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives an explicit trigger ('when you need past context, decisions, or knowledge'), a refinement hint ('Add tags for precision'), and names the alternative tool with the condition that selects it ('Use nmem_context instead for broad recent context'). This is when-to-use plus when-to-use-something-else.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

nmem_recapA

LOAD project context saved by nmem_eternal. Call at SESSION START to restore cross-session state. Level 1=quick (~500 tokens), 2=detailed, 3=full.

ParametersJSON Schema
NameRequiredDescriptionDefault
levelNoDetail level: 1=quick (~500 tokens), 2=detailed (~1300 tokens), 3=full (~3300 tokens). Default: 1
topicNoSearch for a specific topic in context (e.g., 'auth', 'database')
compactNoReturn compact response (strip metadata hints, truncate lists). Saves 60-80% tokens.
token_budgetNoMax tokens for response. Progressively strips content to fit budget.

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations exist, so the description carries the full behavioral burden. It usefully discloses per-level token costs and that it restores cross-session state, but never states read-only semantics, what happens when no saved context exists, or whether the level/token_budget interplay can drop content.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three short sentences, imperative verb front-loaded, and the highest-value instruction (session-start trigger) immediately follows the purpose. Every sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Covers purpose, timing, and the primary level parameter for a 4-parameter tool with no output schema and no annotations. It is slightly thin on the interaction between level, compact, and token_budget and on the empty-context case, but the essentials for correct invocation are present.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so each parameter (level, topic, compact, token_budget) is already documented in the schema, including level's token estimates. The description's level restatement adds nothing beyond that, so the baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource ('LOAD project context') and names the upstream writer (nmem_eternal), so an agent can tell it restores rather than saves. However, it does not distinguish itself from close siblings like nmem_recall, nmem_context, or nmem_situation, all of which plausibly read stored state.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives an explicit trigger: 'Call at SESSION START to restore cross-session state.' That is a clear when-to-use condition. It stops short of naming alternatives or exclusions (e.g., when to prefer nmem_recall or nmem_context instead), so it lacks the full when/when-not guidance a 5 requires.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

nmem_rememberA

Store a memory. Auto-detects type, auto-resolves contradicted errors (RESOLVED_BY synapse). Use after completing a task, fixing a bug, or making a decision. Don't use for temporary notes (use ephemeral=true) or project context (use nmem_eternal).

ParametersJSON Schema
NameRequiredDescriptionDefault
tagsNoTags for categorization
tierNoMemory tier: hot (always in context, slow decay), warm (default, semantic match), cold (explicit recall only, fast decay). Boundary type auto-promotes to hot.
typeNoMemory type (auto-detected if not specified)
domainNoDomain scope for boundary memories (e.g. 'financial', 'security', 'code-review'). Adds a domain:{value} tag. Boundaries without domain are global (apply everywhere). Only meaningful for type=boundary; ignored for other types.
compactNoCompact response: return only success + fiber_id + memory_type, skip verbose metadata. Saves 200-400 tokens. Default: true. Set false for full response.
contentYesThe content to remember
contextNoStructured context dict merged into content server-side using type-specific templates. Keys like 'reason', 'alternatives', 'cause', 'fix', 'steps' are auto-expanded. For type='decision': 'chosen', 'alternatives'/'rejected', 'confidence' enable decision intelligence (overlap detection, evolution tracking). Any agent can send structured data instead of crafting perfect prose.
event_atNoISO datetime of when the event originally occurred (e.g. '2026-03-02T08:00:00'). Defaults to current time if not provided. Useful for batch-importing past events with correct timestamps.
priorityNoPriority 0-10 (5=normal, 10=critical)
encryptedNoForce encrypt this memory's neuron content (default: false). When true, content is encrypted with the brain's Fernet key regardless of sensitive content detection.
ephemeralNoSession-scoped memory: auto-expires after TTL (default 24h), never synced to cloud, excluded from consolidation. Use for scratch notes, debugging context, temporary reasoning.
source_idNoLink this memory to a registered source. Creates a SOURCE_OF synapse for provenance tracking.
valid_fromNoInclusive lower bound of the memory's validity window (ISO 8601). Recall before this moment heavily penalizes the score. Use for scheduled rules, sprint goals, time-bounded API keys, etc.
trust_scoreNoTrust level 0.0-1.0. Capped by source ceiling (user_input max 0.9, ai_inference max 0.7). NULL = unscored.
valid_untilNoInclusive upper bound of the memory's validity window (ISO 8601). After this cliff, recall scores drop 10x and the lifecycle sweep eventually flips status to 'expired'. Complements gradual decay.
expires_daysNoDays until memory expires
token_budgetNoMax tokens for response. Progressively strips content to fit budget.
verbose_extractionNoSurface concept-extraction observability stats (dropped_short, dropped_noise, dropped_duplicate_entity). Default: false. Useful for debugging noise filter or measuring memory hygiene.

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full disclosure burden. It usefully reveals automatic behaviors (type auto-detection, automatic contradiction resolution creating a RESOLVED_BY synapse), but says nothing about idempotency, dedup, permissions, or what a call returns.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three short sentences, front-loaded with the core action, then behavior, then usage. Every clause earns its place with no redundancy or filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For an 18-parameter mutation tool with no annotations and no output schema, the description covers intent and routing well but omits the return shape (e.g., fiber_id) and mutations side-effects, leaving the agent to infer output from parameter docs like 'compact'.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% across 18 parameters, so the schema already documents tier, domain, trust_score, validity windows, encryption, etc. The description only echoes 'ephemeral' and the auto-detected 'type' without adding syntax or defaults beyond the schema, so the baseline of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Store a memory') and adds distinguishing behaviors (auto-detects type, auto-resolves contradicted errors via RESOLVED_BY synapse). It names the sibling it is not for project context (nmem_eternal), though it does not distinguish itself from nmem_remember_batch.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives explicit triggering conditions ('after completing a task, fixing a bug, or making a decision') and explicit exclusions with remedies ('temporary notes -> ephemeral=true', 'project context -> nmem_eternal'). Clear when/when-not guidance; the batch sibling is not addressed.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

nmem_remember_batchA

Store multiple memories at once (max 20). Use when saving 3+ memories together. Partial success — one bad item won't block the rest.

ParametersJSON Schema
NameRequiredDescriptionDefault
compactNoReturn compact response (strip metadata hints, truncate lists). Saves 60-80% tokens.
memoriesYesArray of memories to store (max 20)
token_budgetNoMax tokens for response. Progressively strips content to fit budget.

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full behavioral burden and delivers a genuinely non-obvious trait: partial success, where one bad item won't block the rest. It also notes the max-20 cap, though it says nothing about persistence, permissions, or response shape.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three compact sentences, each carrying a distinct fact (scope, threshold, failure mode), with the core capability front-loaded. No filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a batch write tool with no annotations and no output schema, the description covers purpose, when-to-use, and failure semantics well. It lacks any mention of what a successful call returns or its persistence guarantees, which would round out the picture.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so all three top-level parameters and nested memory fields are documented in the schema itself. The description's 'max 20' merely repeats maxItems already present, adding no new parameter meaning. Baseline 3 is correct.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Store multiple memories at once') plus a hard constraint (max 20). The plural scope implicitly contrasts with the singular nmem_remember sibling, though it never names it.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives an explicit trigger condition: 'Use when saving 3+ memories together.' This routes the agent away from the single-item tool, but it does not name nmem_remember directly nor state when to prefer it explicitly.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

nmem_sessionA

Track current session state (task, feature, progress). Single-session only. For cross-session persistence use nmem_eternal.

ParametersJSON Schema
NameRequiredDescriptionDefault
taskNoCurrent specific task
notesNoAdditional context notes
actionYesget=load current session, set=update session state, end=close session
compactNoReturn compact response (strip metadata hints, truncate lists). Saves 60-80% tokens.
featureNoCurrent feature being worked on
progressNoProgress 0.0 to 1.0
token_budgetNoMax tokens for response. Progressively strips content to fit budget.

TDQS

A4.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full behavioral burden; it does disclose the important scope trait that state lives only for the current session and is not persisted across sessions. However, it says nothing about mutation semantics — whether 'set' replaces or merges existing state, or whether 'end' destroys it — which matters for a stateful tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three short sentences, zero waste, with the core purpose front-loaded ahead of the scoping caveat and the alternative routing. Nothing needs to be trimmed and nothing is buried.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 7-parameter stateful tool with no annotations and no output schema, the description covers scope and routing but omits what a call actually returns (e.g., what 'get' yields, what 'end' reports) and the interaction between compact/token_budget and the response. Adequate but with real gaps given there is no output schema to lean on.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so all seven parameters (including action enums and token_budget/compact behavior) are already documented in the schema, making 3 the correct baseline. The description's parenthetical '(task, feature, progress)' merely echoes a subset of fields and adds no syntax or format detail beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb+resource ('Track current session state') and immediately scopes it with the listed fields (task, feature, progress). It also distinguishes itself from the sibling nmem_eternal by naming what it is not (cross-session persistence), so an agent can pick it without opening either schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It gives an explicit when-not ('Single-session only') paired with a named alternative ('For cross-session persistence use nmem_eternal'), which is exactly the routing signal an agent needs against a crowded sibling set. The condition that selects the alternative is stated, not inferred.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

nmem_situationA

One-shot snapshot of the current working situation: active session task, top 3 recent decisions, open blockers, gap detection. Replaces nmem_recap + multiple nmem_recall calls when resuming a session. Pure read — never mutates state.

ParametersJSON Schema
NameRequiredDescriptionDefault
compactNoReturn compact response (strip metadata hints, truncate lists). Saves 60-80% tokens.
token_budgetNoMax tokens for response. Progressively strips content to fit budget.

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden and does disclose the safety profile ('Pure read — never mutates state') plus the bounded output shape (top 3 decisions, active task, blockers). It stops short of explaining what 'gap detection' actually surfaces or whether results are scoped to a session/user, which would be useful for a read tool with no output schema.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two tightly packed sentences with zero filler; the content enumeration is front-loaded and the behavioral guarantee comes last as a natural closing caveat.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a read-only snapshot tool with no output schema, the description adequately covers what is returned, how it relates to sibling tools, and its non-mutating nature. Minor gaps remain around the semantics of 'gap detection' and result scoping, but nothing blocks correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so both parameters (compact, token_budget) are already documented with their token-saving behavior. The description adds no parameter-level detail beyond that, so the baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource ('one-shot snapshot of the current working situation') and enumerates exactly what it returns: active session task, top 3 recent decisions, open blockers, gap detection. It explicitly distinguishes itself from siblings nmem_recap and nmem_recall, so an agent can route correctly without opening a schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Names the alternatives it supersedes (nmem_recap + multiple nmem_recall calls) and the condition that selects it ('when resuming a session'). It is a clear when-to-use with alternatives, but omits any when-not guidance (e.g. for narrow single-topic lookups where nmem_recall is cheaper).

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

nmem_todoA

Quick TODO memory (auto-expires in 30 days). Use nmem_forget to close when done.

ParametersJSON Schema
NameRequiredDescriptionDefault
taskYesThe task to remember
compactNoReturn compact response (strip metadata hints, truncate lists). Saves 60-80% tokens.
priorityNoPriority 0-10 (default: 5)
token_budgetNoMax tokens for response. Progressively strips content to fit budget.

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations present, the description carries the full burden, and it does disclose the key behavioral trait: automatic 30-day expiration. It also names the disposal path (nmem_forget). It omits other relevant behavior such as what the call returns (an ID is presumably needed to later forget the item) and whether the write is idempotent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two short sentences with no filler; the defining trait (quick, auto-expiring) is front-loaded before the disposal instruction. Every clause earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a single-required-parameter write tool with no output schema and no annotations, the description covers lifetime and teardown adequately. It falls short on the return/identifier behavior needed to actually invoke nmem_forget later, and on how it differs from the other memory-writing siblings.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so task, compact, priority, and token_budget are all already documented in the schema, including the 0-10 range and default. The description adds no parameter-level meaning beyond that, so the baseline of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States the resource ('TODO memory') and its transient nature ('auto-expires in 30 days'), which implicitly distinguishes it from the persistent siblings nmem_eternal and nmem_remember. However, it never uses an explicit verb like 'create' or 'store', so the write action must be inferred from the required 'task' parameter. Clear but no direct sibling comparison.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives one lifecycle instruction — 'Use nmem_forget to close when done' — which tells the agent how to dispose of the item. It does not say when to prefer nmem_todo over nmem_remember or nmem_eternal (e.g., 'for short-lived tasks only'), so the selection guidance against alternatives is left to inference from the 30-day expiry.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 10 tool updatesv4.62.0
    • First observednmem_auto
    • First observednmem_context
    • First observednmem_eternal
    • First observednmem_recall
    • First observednmem_recap
    • First observednmem_remember
    • First observednmem_remember_batch
    • First observednmem_session
    • First observednmem_situation
    • First observednmem_todo

TDQS

A3.6/5.0

Scored across 10 tools

Disambiguation3/5

The retrieval tools (nmem_situation, nmem_recap, nmem_recall, nmem_context) and the storage tools (nmem_remember, nmem_remember_batch, nmem_todo, nmem_auto, nmem_eternal) heavily overlap, and the descriptions spend significant effort cross-referencing each other ('use nmem_context instead', 'for specific queries use nmem_recall') to compensate. The guidance is helpful but signals genuine boundary blur, so an agent can still misselect among the four recall-style tools.

Naming Consistency4/5

All names share a uniform nmem_ prefix with lowercase snake_case, which is highly predictable. The only minor deviation is mixing action verbs (remember, recall) with noun-style names (situation, context, eternal, session), but the conventions themselves are consistent.

Tool Count4/5

Ten tools is a reasonable scope for a memory server with distinct storage and retrieval concerns. It is slightly on the heavy side given the functional overlap between recall/situation/context/recap, but each still earns a roughly distinct place.

Completeness2/5

nmem_todo's description instructs the agent to 'use nmem_forget to close when done,' but no nmem_forget tool exists, creating a real dead end. There is also no delete or update/contradict-resolution tool exposed despite the surface emphasizing memory lifecycle management.

Maintenance

ActivityNo data
ResponsivenessResponsive

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    Provides persistent knowledge graph memory for AI agents, enabling them to store, recall, and query facts about people, projects, and relationships across sessions.
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables AI agents to maintain persistent, local memory with retrieval-augmented search, knowledge graphs, and context surfacing, without any cloud dependencies.
    1,027 npm
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables persistent, graph-based memory for AI agents, allowing them to store, traverse, and recall relationships between facts, decisions, and context across sessions for efficient reasoning and reduced token usage.
    MIT