obliviate
Obliviate
Память агента, которая забывает по команде — и доказывает, что забыла.
Удалите везде · одной атомарной транзакцией · с подписанной квитанцией, которую любой может проверить
Когда память агента содержит ошибку, отравлена или по закону должна исчезнуть — можете ли вы удалить её везде, атомарно и доказать, что её больше нет?
Obliviate может. Он каскадно удаляет весь подграф знаний сущности — документы, узлы графа, рёбра и векторы — в одной ACID-транзакции, а затем доказывает удаление тремя способами: сравнение «до/после» через AS OF SYSTEM TIME, живой повторный поиск по векторам и графу, который ничего не возвращает, и криптографически уничтоженный, защищённый объектной блокировкой сертификат об удалении.
Просмотр, поиск, граф знаний и /verify открыты для всех. Запись ограничена токеном (продукт для удаления ни в коем случае не должен позволять анонимным посетителям удалять данные) — чтобы запустить Forget & Prove самостоятельно, вставьте демо-токен obliviate-judge-75a0f127 в Settings → Security.

Живая память — граф знаний с физикой в реальном времени (47 сущностей · 83 связи, всё в CockroachDB):

Проблема
Каждый проект по памяти агентов в этом цикле отвечает на один и тот же вопрос: как агентам запоминать больше? Почти никто не отвечает на вопрос, который на самом деле стоит перед продакшен-памятью: как агенты забывают — полностью, безопасно и доказуемо?
Память, которая только копится, — это обуза. Отравленный или ошибочный факт распространяется по графу знаний и искажает будущие рассуждения. Данные ушедшего клиента остаются дольше установленного законом срока хранения (статья 17 GDPR ЕС — «право на забвение» — приоритет правоприменения в 2026 году). А в большинстве систем «удаление» — это DELETE в лучшем случае, который оставляет на диске восстановимые векторы, осиротевшие рёбра графа и никаких доказательств того, что что-то произошло.
Related MCP server: elephantasm-mcp
Что делает Obliviate
Направьте его на сущность — клиента, выведенную из эксплуатации систему, отравленную память — и он выполнит проверяемое удаление:
Этап | Гарантия |
Каскадное удаление | Документы, узлы графа, рёбра и векторы сущности удаляются в одной сериализуемой транзакции — никогда не бывает наполовину затёртого состояния. |
Безопасность общих узлов | Сущности, общие с выжившим субъектом, аннулируются, а не удаляются — удаление одного субъекта никогда не повреждает память другого. |
Криптографическое уничтожение | Ключ шифрования субъекта для каждой записи уничтожается, поэтому остаточный шифротекст (в истории MVCC, резервных копиях или S3) криптографически невосстановим — а не просто перестаёт быть доступным по ссылке. |
Доказательство прежнего существования |
|
Доказательство отсутствия | Живой повторный поиск по векторам и графу ничего не возвращает; агент отвечает «не значится в записях». |
Сертификат | Подписанный объектно-заблокированный (WORM) S3 сертификат делает каждое удаление защищённым от несанкционированного вмешательства. |
Два применения одного и того же примитива:
Целостность данных / реагирование на инциденты — в память агента попал отравленный или ошибочный факт. Вырежьте его начисто, в масштабе всего кластера, и докажите, что граф снова чист.
Комплаенс — право на забвение по GDPR/HIPAA с сертификатом, который можно передать аудитору.
Обоснованные ответы — с источниками и честным признанием отсутствия
Спрашивайте на обычном английском. Ответы строго опираются на сохранённый граф, ссылаются на источники и честно отказываются отвечать, когда факта нет в записях, — именно такое поведение делает удаление доказуемым.

Forget & Prove — главная функция
Один клик удаляет субъект в одной ACID-транзакции, а затем доказывает это тремя способами: он существовал (AS OF SYSTEM TIME), его больше нет (живая повторная проверка векторов и графа), это необратимо (криптографическое уничтожение + объектно-заблокированный сертификат S3). Сущности, общие с выжившим субъектом, сохраняются, а не удаляются (обратите внимание на 1 shared kept).

Он создаёт подписанный, защищённый объектной блокировкой сертификат об удалении — и любой может независимо перепроверить его на странице /verify: страница заново вычисляет SHA-256 хеш содержимого и проверяет подпись ECDSA (P-256) (публичный ключ показан, поэтому проверка работает офлайн). Изменённое поле нарушает хеш; подделанный сертификат не проходит проверку подписи.
Сертификат об удалении | Независимый верификатор ( |
Граф знаний (47 сущностей · 83 связи, живая физика) и встроенная документация:
Граф знаний | Документация ( |
|
|
Почему CockroachDB (несущая конструкция, а не галочка)
Obliviate объединяет то, для чего обычно нужны три системы — графовую БД, векторное хранилище и журнал аудита, — в одном надёжном управляемом хранилище. Это возможно только благодаря примитивам CockroachDB:
Распределённое векторное индексирование (C-SPANN) — семантический поиск по колонкам
VECTOR(384), поддерживаемый индексом (проверено черезEXPLAIN), живущий в той же таблице, что и реляционные данные.AS OF SYSTEM TIME— путешествие во времени MVCC и есть квитанция об удалении. Не нужно доверять прикрученной таблице истории.Сериализуемые транзакции — каскадное удаление + аннулирование + криптографическое уничтожение либо фиксируются все вместе, либо не фиксируется ни одно.
Рекурсивные CTE — исчерпывающий обход радиуса поражения графа знаний, гарантированный самой конструкцией запроса.
Построчный TTL — срок хранения обеспечивается самим хранилищем. Подключается для каждой строки отдельно (
ttl_expire_at): документы истекают только тогда, когда это задаёт политика хранения, поэтому ничего не удаляется по единому таймеру.Управляемый MCP-сервер (независимая проверка) — Obliviate подключается к собственному управляемому MCP-эндпоинту CockroachDB Cloud (
cockroachlabs.cloud/mcp). Это самая сильная форма заявления об удалении: аудитору не нужно доверять нашему API, когда он говорит «данных больше нет», — он направляет своего MCP-агента на размещённый эндпоинт Cockroach Labs и напрямую выполняетselect_queryк кластеру, чтобы убедиться, что строки забытого субъекта действительно отсутствуют. Доказательство, которое никогда не проходит через код Obliviate. См.docs/MCP.md.MCP-native (собственные инструменты) — Obliviate также поставляет собственный MCP-сервер (FastMCP) на том же кластере, так что любой MCP-агент (Claude Desktop/Code, Cursor) может запоминать, вспоминать и доказуемо забывать с помощью высокоуровневых инструментов.
Используемые инструменты CockroachDB (несущие): CockroachDB Cloud Managed MCP Server · Distributed Vector Indexing (C-SPANN) · AS OF SYSTEM TIME · Serializable transactions · Recursive CTEs · Row-level TTL.
Используемые сервисы AWS: S3 (объектно-заблокированные / WORM-сертификаты об удалении) · EC2 (хостинг). Сертификаты подписываются внутри процесса с помощью ECDSA (P-256); подписант на базе Lambda — опциональный вариант развёртывания, не обязательный.
Архитектура
flowchart TB
U["User / Agent"] -->|HTTPS| API["FastAPI app"]
MCP["Obliviate MCP server (FastMCP)"] -->|"remember · recall · forget (via core)"| CRDB
API -->|"vectors · AS OF SYSTEM TIME · cascade · CTEs"| CRDB
subgraph CRDB["CockroachDB (one transactional store)"]
D["documents (encrypted)"]
N["nodes + VECTOR index"]
E["edges (graph)"]
K["subject_keys (crypto-shred)"]
EV["erasure_events (audit)"]
end
API -->|"sign (ECDSA P-256) + PUT (Object Lock / WORM)"| S3["Amazon S3 — erasure certificates"]
API -->|"embeddings"| FE["fastembed (local, 384-d)"]
API -->|"generation"| LLM["LLM — local (Ollama) or hosted, BYO-model"]Как это работает
Ingest — документ хранится в зашифрованном виде под ключом своего субъекта; LLM извлекает сущности и связи; узлы обновляются по имени (
INSERT … ON CONFLICT= детерминированная дедупликация кореференций), а рёбра вставляются — всё в одном хранилище.Ask — косинусный ANN находит релевантные сущности, рекурсивный CTE расширяет окружающий граф, и строго обоснованный промпт отвечает только на основе этого контекста, честно отказываясь, когда факт отсутствует (это свойство и делает забывание доказуемым).
Forget — транзакция, описанная выше.
Быстрый старт
python -m venv .venv && source .venv/bin/activate
pip install -r requirements.txt
cp .env.example .env # set DATABASE_URL, LLM provider, AWS
python scripts/init_db.py # apply schema + self-test
uvicorn app.main:app --port 8080Принесите свою модель. Слой LLM не зависит от провайдера — направьте его на локальную модель Ollama или любого хостинг-провайдера, совместимого с OpenAI, отредактировав .env (или через выбор модели в приложении). Никакой привязки к провайдеру.
Оценка
Obliviate реализует многоуровневое удаление, подтверждённое исследованиями, вместо наивного DELETE:
Наивное удаление устойчиво к атакам реконструкции только на ~18%; многоуровневое удаление с учётом графа зависимостей достигает ~94% (ForgetAgent, IJRASET).
Подтверждённое через API удаление векторов оставляет эмбеддинги физически восстановимыми из сырого индекса на диске — Ghost Vectors (arXiv:2606.18497) восстанавливает 25,5% точных имён и 46,4% местоположений из текстовых эмбеддингов (и до ~99% из эмбеддингов изображений); криптографическое уничтожение ключа субъекта снижает восстановление до 0% (фикс «Epoch Key Rotation» из той же статьи — зашифровать, затем отбросить ключ).
Тестовый стенд (evals/) воспроизводит бенчмарк корректности забывания (оценка слепым судьёй) и показатель устойчивости к реконструкции (Reconstruction-Robustness Score), сравнивающий наивное удаление с Obliviate.
Создано для этого хакатона
Движок памяти Obliviate на базе CockroachDB был создан заново для этого хакатона — граф знаний как
реляционные таблицы, векторы в индексе C-SPANN, атомарная транзакционная forget, доказательство через AS OF SYSTEM TIME,
криптографическое уничтожение для каждого субъекта и подписанный сертификат об удалении. Объединение графа, векторов
и журнала аудита в одном хранилище CockroachDB — именно то, что делает забывание единой ACID-транзакцией,
а сертификат доказуемым из самой базы данных, — что невозможно, когда граф и векторы живут в двух разных хранилищах.
Этот дизайн с единым хранилищем — структурное ядро: единый ACID-каскад, AS OF SYSTEM TIME как механизм доказательства,
объектно-заблокированные криптографические сертификаты и исчерпывающий радиус поражения через рекурсивные CTE.
Честные ограничения
Стирание удаляет данные из хранилища; оно не устраняет параметрические априорные знания LLM (именно поэтому промпт привязки строгий, а честность проверяется поведенчески).
Кореференция основана на именах; сущности, которые должны быть различными, могут сливаться, и наоборот.
Окно
AS OF SYSTEM TIMEограничено окном GC кластера; журнал аудита, допускающий только добавление, и сертификат S3 обеспечивают долговечность за его пределами.
Лицензия
MIT © 2026 Vinayak Sonthalia
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
Alicense-qualityAmaintenanceMCP server providing cognitive memory tools (remember, recall, think, etc.) for AI agents, enabling forgetting, consolidation, and contradiction detection.171AGPL 3.0- AlicenseAqualityDmaintenanceMCP server for long-term agent memory, providing persistent memory, searchable knowledge, and evolving identity for AI agents.53Apache 2.0
- Alicense-qualityCmaintenanceMCP server providing agent memory with deterministic deletion guarantees, enabling compliant event storage, context retrieval, and audit-proof data management.Apache 2.0
- AlicenseAqualityDmaintenanceAn MCP server that implements memory with decay mechanics, allowing AI agents to store and retrieve memories that fade over time unless accessed, with a permanent journal for verification.3MIT
Related MCP Connectors
A paid remote MCP for agent memory MCP, built to return verdicts, receipts, usage logs, and audit-re
Person-owned, portable AI memory as a remote MCP server, readable and writable by any MCP client.
Shared, governed long-term memory for AI agents across tools and sessions via MCP and REST.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/vinayaksonthalia/obliviate'
If you have feedback or need assistance with the MCP directory API, please join our Discord server

