
engram-server
jamjet-labsApache-2.0
13 звёзд5 форков
Engram-server — это MCP-сервер для долговременной памяти AI-агентов. Он извлекает факты из диалоговой истории, хранит их в виде структурированных записей и позволяет быстро находить нужную информацию. В основе сервера — гибридный механизм поиска, сочетающий полнотекстовый и семантический поиск, а также временной граф, отслеживающий связи между фактами во времени.
Сервер написан на Rust и работает через протокол MCP с транспортом stdio. Он не требует внешних хранилищ для базовой работы — использует SQLite для локального хранения данных. Для продакшен-нагрузок можно подключить PostgreSQL. Engram-server подходит разработчикам, которые создают AI-агентов и хотят дать им долгосрочную память для сохранения контекста между сессиями.
Характеристики
Общее
- СтатусСообщество
- Разработчикjamjet-labs
- ЛицензияApache-2.0
Технологии
- ЯзыкиRust
- Транспортstdio
Описание
Возможности
- Извлекает факты из сообщений пользователя и сохраняет их в базу данных
- Выполняет гибридный поиск: полнотекстовый по ключевым словам и семантический по смыслу
- Строит временные графы, отражающие хронологию и взаимосвязи между фактами
- Поддерживает две СУБД: SQLite для локального использования и PostgreSQL для централизованных систем
- Автоматически создаёт и обновляет схему базы данных, не требует ручных миграций
- Через MCP-инструменты можно записывать новые факты, читать существующие, искать по запросу и удалять устаревшие
- Выполняет графовые запросы для анализа последовательности событий
- Интегрируется с любыми MCP-клиентами: Claude Desktop, Continue.dev, Zed, IDE, кастомные агенты
- Код открыт под лицензией Apache 2.0
Как подключить
Установите сервер через Cargo:
cargo install engram-server
Или скачайте готовый бинарный файл со страницы релизов на GitHub.
Добавьте конфигурацию в файл настроек вашего MCP-клиента. Например, для Claude Desktop отредактируйте claude_desktop_config.json:
{
"mcpServers": {
"engram-server": {
"command": "engram-server",
"args": [],
"env": {
"ENGRAM_DATABASE_URL": "sqlite://$HOME/.engram/memory.db"
}
}
}
}
Если используете PostgreSQL, укажите строку подключения:
"ENGRAM_DATABASE_URL": "postgres://user:password@localhost:5432/engram"
После сохранения конфигурации перезапустите клиент. Engram-server запустится автоматически при первом запросе к памяти.
Примеры запросов
- «Запомни, что я работаю над проектом Engram и использую Rust»
- «Найди все факты, связанные с базами данных, которые мы обсуждали»
- «Покажи хронологию событий по проекту MCP за последние 3 дня»
- «Удали все записи, где упоминается тестовый сервер»
- «Какой факт мы запомнили самым первым?»
Технические детали
- Язык разработки: Rust
- Транспорт: stdio
- Лицензия: Apache-2.0
- Поддерживаемые базы данных: SQLite, PostgreSQL
- Совместимые клиенты: любые MCP-клиенты со stdio
- Разработчик: jamjet-labs
- Репозиторий на GitHub