memstate-ai/memstate-mcp

memstate-ai/memstate-mcp

от memstate-ai
Сервер версионированной памяти для AI-агентов — хранит факты, отслеживает их изменения и автоматически обнаруживает конфликты. В отличие от RAG, использует точное key-value хранение вместо эмбеддин...

Memstate AI - MCP

npm version License: MIT MCP Node memstate-mcp MCP server

Versioned memory for AI agents. Store facts, detect conflicts, and track how decisions change over time — exposed as a hosted MCP server.

Dashboard · Docs · Pricing


Why Memstate?

RAG (most other memory systems) Memstate AI
Token usage per conversation ~7,500 ~1,500
Agent visibility Black box Full transparency
Memory versioning None Full history
Token growth as memories scale O(n) O(1)
Infrastructure required Yes None — hosted SaaS

Other memory systems dump everything into your context window and hope for the best. Memstate gives your agent a structured, versioned knowledge base it navigates precisely — load only what you need, know what changed, know when facts conflict.


Benchmarks

We built an open-source benchmark suite that tests what actually matters for agent memory: can your system store facts, recall them accurately across sessions, detect conflicts when things change, and maintain context as a project evolves?

Head-to-Head: Memstate AI vs Mem0

Both systems were tested under identical conditions using the same agent (Claude Sonnet 4.6, temperature 0), the same scenarios, and the same scoring rubric.

Инструменты были проиндексированы:
memstate_delete

Выполняет мягкое удаление памяти по keypath. Создаёт tombstone-версию с сохранением полной истории. Память можно восстановить, записав новое значение по тому же keypath. ИСПОЛЬЗУЙ ЭТО КОГДА: нужно удалить устаревшие или некорректные записи, очистить поддерево keypath или пометить память как больше неактуальную. НЕ ДЛЯ: обновления содержимого (используй memstate_set или memstate_remember, чтобы перезаписать новыми данными). memstate_delete(project_id="myapp", keypath="config.old_setting") memstate_delete(project_id="myapp", keypath="config", recursive=true) → удаляет config и все дочерние записи История сохраняется. Чтобы увидеть удаление в цепочке версий, используй memstate_history. Keypath добавляется с префиксом автоматически.

Параметры
  • keypathstringобязательный

    Required. Keypath to delete (auto-prefixed with 'project.{project_id}.').

  • project_idstringобязательный

    Required. Project containing the memory.

  • recursiveboolean

    If true, delete the entire keypath subtree. Default: false.

memstate_delete_project

Мягко удаляет проект целиком и все его воспоминания. Создаёт tombstone-версии для каждого воспоминания, сохраняя полную историю. Проект скрывается из списков, но его можно восстановить, создав новый проект с тем же ID. ИСПОЛЬЗУЙТЕ ЭТО, КОГДА: нужно удалить все воспоминания для проекта, например, для очистки тестовых данных или вывода проекта из эксплуатации. memstate_delete_project(project_id="old-project") Все воспоминания получают отдельные tombstone-версии. История сохраняется через memstate_history.

Параметры
  • project_idstringобязательный

    Required. Project ID to soft-delete.

memstate_get

Просматривать и извлекать воспоминания. Используйте ДО начала задач, чтобы получить существующие знания. ИСПОЛЬЗУЙТЕ ЭТО, КОГДА: нужно прочитать то, что уже сохранено - список проектов, просмотреть дерево проекта или получить содержимое по keypath. НЕ ДЛЯ: сохранения нового содержимого (используйте memstate_remember для markdown/сводок, memstate_set для одного значения keypath). memstate_get() → список всех проектов memstate_get(project_id="myapp") → полное дерево проекта memstate_get(project_id="myapp", keypath="database") → поддерево memstate_get(project_id="myapp", keypath="db", include_content=true) → с полным содержимым memstate_get(project_id="myapp", keypath="config", at_revision=2) → переход к версии 2 Keypath автоматически дополняется префиксом. По умолчанию recursive=true. Используйте at_revision с номерами версий из memstate_history.

Параметры
  • at_revisionnull | integer

    Optional revision number for time-travel queries. Use version numbers from memstate_history.

  • content_limitinteger

    Max memories to hydrate when include_content=true (default: 200, max: 1000)

  • include_contentboolean

    If true, include full memory content in response (not just keypaths)

  • keypathstring

    Subkeypath within project. If omitted with project_id, returns the full project tree.

  • project_idstring

    Project to retrieve from. If omitted, lists all projects.

  • recursivenull | boolean

    Include subtree (default: true)

memstate_history

Просмотр истории версий для keypath или цепочки памяти. Используйте, когда нужно увидеть, как значение менялось со временем. ИСПОЛЬЗУЙТЕ ЭТО ДЛЯ: отладки прошлого состояния, аудита изменений или восстановления предыдущего значения. НЕ ДЛЯ: чтения текущего содержимого (используйте memstate_get) или сохранения (используйте memstate_remember или memstate_set). memstate_history(project_id="myapp", keypath="config.database.port") Возвращает все версии с временными метками и номерами версий; последняя помечена is_latest=true. Используйте номера версий с memstate_get(at_revision=N), чтобы перемещаться во времени к любому прошлому состоянию.

Параметры
  • keypathstringобязательный

    Required. Keypath to get version history for (e.g. 'config.database.port').

  • project_idstringобязательный

    Required. Project containing the memory.

memstate_remember

Сохраняет markdown, сводки задач или любой текст. Сервер автоматически извлекает ключевые пути (keypaths) и создаёт структурированные записи. Это ПРЕДПОЧТИТЕЛЬНЫЙ способ сохранения информации. ИСПОЛЬЗУЙ ЭТО КОГДА: Нужно сохранить сводки задач, заметки встреч, документацию или любой текст с несколькими фактами. Сервер сам занимается организацией, обнаружением конфликтов и управлением версиями. НЕ ДЛЯ: Установки одного конкретного ключевого пути (keypath) с коротким значением (например, config.port = "8080") — для этого используй memstate_set. memstate_remember(project_id="myapp", content="## Сводка задач\n- Добавлен OAuth\n- Файлы: auth.go, middleware.go", source="agent") memstate_remember(project_id="myapp", content="Архитектурное решение: перешли на JWT-токены для управления сессиями") Ограничение по содержимому: 100 000 символов. Обработка асинхронная (~15-18 с); job_id возвращается сразу.

Параметры
  • contentstringобязательный

    Markdown or text to remember (max 100,000 chars). Server extracts keypaths and creates structured memories automatically.

  • contextstring

    Optional hint to guide keypath extraction

  • project_idstringобязательный

    Required. Project to store in (e.g. 'myapp'). Auto-creates if new.

  • sourcestring

    Source type: agent, readme, docs, meeting, code

memstate_search

Ищет воспоминания по смыслу (семантический поиск). Используй ДО того, как начнёшь задачу, если не знаешь точный keypath. ИСПОЛЬЗУЙ ЭТО КОГДА: нужно найти подходящие воспоминания по теме или смыслу, а не по точному keypath. НЕ ДЛЯ: сохранения контента (для markdown/суммари используй memstate_remember, для одного значения по keypath — memstate_set). memstate_search(query="как настроена аутентификация", project_id="myapp") memstate_search(query="настройки подключения к базе данных", project_id="myapp") Возвращает суммари с оценками схожести. Используй memstate_get(project_id="...", keypath="...", include_content=true), чтобы получить полное содержимое результата.

Параметры
  • categoriesnull | array

    Filter by categories

  • include_supersededboolean

    Include old versions

  • keypath_prefixstring

    Filter by keypath prefix

  • limitinteger

    Maximum results (default: 20, max: 100)

  • project_idstring

    Filter by project

  • querystringобязательный

    Natural language search query. Leave empty to explore/list all memories ordered by keypath.

memstate_set

Устанавливает одно короткое значение по заданному keypath. Только для простых фактов вида ключ=значение: конфигурация, статус или номера версий. ИСПОЛЬЗУЙ ЭТО КОГДА: Нужно сохранить ОДНО конкретное значение по известному keypath (например, номер порта, флаг статуса, строка версии). НЕ ДЛЯ: Сводок задач, markdown или текста с несколькими фактами — используй memstate_remember. memstate_set(project_id="myapp", keypath="config.database.port", value="5432") memstate_set(project_id="myapp", keypath="status.deployment", value="production") memstate_set(project_id="myapp", keypath="version.current", value="2.1.0") Ограничение значения: 2 000 символов. Если длиннее — используй memstate_remember. Keypath автоматически дополняется префиксом.

Параметры
  • categorystring

    Category: decision, preference, fact, task, context, requirement, note, code, learning

  • keypathstringобязательный

    Required. Hierarchical path like 'config.port' or 'status'. Auto-prefixed with 'project.{project_id}.'

  • project_idstringобязательный

    Required. Project to store in (e.g. 'myapp'). Auto-creates if new.

  • topicsnull | array

    Optional additional topics/tags

  • valuestringобязательный

    The value to store (max 2,000 chars). Short, simple values only — not markdown.

Похожие MCP-сервера

topskychen/tilde

topskychen/tilde

MCP-сервер для хранения профиля и памяти AI-агентов. Хранит данные локально, управляет навыками, опытом, резюме и командными стандартами. Избавляет от повторения контекста при смене инструментов.

Python4
webaesbyamin/agent-receipts

webaesbyamin/agent-receipts

MCP сервер даёт AI-агентам память с криптографическими чеками. Каждый факт подписывается Ed25519, хранится локально без облака. Для разработчиков, нуждающихся в аудите действий агента.

TypeScript1
mnemoverse/mcp-memory-server

mnemoverse/mcp-memory-server

MCP сервер для долговременной памяти AI-агентов, работающий через единый API-ключ в Claude, Cursor, VS Code и ChatGPT. Запоминает факты, предпочтения и уроки между сессиями и проектами. Фидбек улучшает релевантность, а забывание по давности делает память самоочищающейся.

TypeScript21
sifter-ai/sifter

sifter-ai/sifter

Sifter — open-source движок для извлечения структурированных данных из документов (счетов, контрактов). Вместо RAG выделяет точные поля (клиент, дата, сумма) и хранит их как записи — ответы получаю...

Python55
Goldentrii/AgentRecall

Goldentrii/AgentRecall

AgentRecall — MCP сервер, который запоминает каждое исправление агента и учится на ошибках. Пять слоев памяти (коррекции, эпизоды, навыки) хранятся локально в markdown. Инструмент полезен разработчикам ИИ-агентов: он автоматически анализирует повторные недочеты и повышает точность работы, не треб...

JavaScript371
penfieldlabs/penfield-mcp

penfieldlabs/penfield-mcp

MCP-сервер Penfield для долговременной памяти AI-агентов. Сохраняет решения, предпочтения и контекст между сессиями, строит граф знаний. Работает с Claude, Cursor, Windsurf и любыми MCP-инструментами.

Dockerfile6
© Каталог MCP, 2026. Все права защищены.
Проект не аффилирован с Anthropic и любыми упомянутыми продуктами.
Все названия и торговые марки принадлежат их владельцам.
Контакты для связи: hi@mcp-katalog.ru

Лука Никитин