Skip to main content
Glama

claude-memory-fts

MCP-сервер долгосрочной памяти для Claude Code. Хранит факты в локальной базе данных SQLite с гибридным поиском (FTS5 + семантическое векторное сходство) и автоматической вставкой контекста.

Возможности

  • Гибридный поиск — полнотекстовый поиск FTS5 + семантическое векторное сходство, объединенные с помощью Reciprocal Rank Fusion (RRF)

  • Семантическое понимание — поиск воспоминаний по смыслу, а не только по ключевым словам (на базе эмбеддингов all-MiniLM-L6-v2)

  • Автоматическая вставка контекста — 30 самых важных воспоминаний автоматически добавляются в каждый запрос через хук

  • Ранжирование по важности — факты ранжируются по частоте обращений, давности и весу категории

  • Отслеживание обращений — отслеживает, как часто используется каждое воспоминание

  • Upsert (обновление или вставка) — автоматически обновляет существующие факты вместо дублирования

  • Категоризация — организация по типам: предпочтение, решение, техническое, проект, рабочий процесс, личное, общее

  • Ресурсы MCP — предоставляет ресурс memory://context для контекста сессии

  • Нулевая конфигурация — работает «из коробки», хранит данные в ~/.claude/memory.db

Установка

# Add to Claude Code
claude mcp add memory -- npx claude-memory-fts

# Auto-configure context injection hook (recommended)
npx claude-memory-fts --setup-hook

Команда --setup-hook автоматически:

  1. Создает ~/.claude/scripts/memory-context.sh

  2. Добавляет хук UserPromptSubmit в ~/.claude/settings.json

  3. 30 самых важных воспоминаний автоматически вставляются в каждый запрос

Команды CLI

Команда

Описание

npx claude-memory-fts

Запуск MCP-сервера (используется Claude Code)

npx claude-memory-fts --context

Вывод 30 самых важных фактов (используется скриптом хука)

npx claude-memory-fts --setup-hook

Автоматическая настройка хука вставки контекста

Конфигурация

Переменная окружения

По умолчанию

Описание

MEMORY_DB_PATH

~/.claude/memory.db

Путь к файлу базы данных SQLite

Пример с пользовательским путем:

claude mcp add memory -e MEMORY_DB_PATH=/path/to/my/memory.db -- npx claude-memory-fts

Инструменты

memory_save

Сохранение факта в долгосрочную память.

Параметр

Тип

Обязательный

Описание

fact

string

да

Информация для запоминания

category

string

нет

Одно из: preference, decision, personal, technical, project, workflow, general

Гибридный поиск: выполняет FTS5 и семантический поиск параллельно, объединяет результаты с помощью RRF. При отсутствии совпадений переключается на поиск подстроки LIKE.

Параметр

Тип

Обязательный

Описание

keyword

string

да

Ключевое слово или фраза для поиска

limit

number

нет

Макс. количество результатов (по умолчанию: 10)

memory_update

Обновление содержимого или категории воспоминания по ID.

Параметр

Тип

Обязательный

Описание

id

number

да

ID воспоминания

fact

string

нет

Новое содержимое (пропустите, чтобы оставить текущее)

category

string

нет

Новая категория (пропустите, чтобы оставить текущую)

memory_list

Список всех сохраненных воспоминаний, сгруппированных по категориям.

Параметр

Тип

Обязательный

Описание

category

string

нет

Фильтр по категории

limit

number

нет

Макс. количество результатов (по умолчанию: 50)

memory_delete

Удаление воспоминания по ID.

Параметр

Тип

Обязательный

Описание

id

number

да

ID воспоминания

Ресурсы

memory://context

MCP-ресурс, предоставляющий 30 самых важных фактов, ранжированных по оценке важности:

  • Частота обращений — часто используемые факты получают более высокий балл (макс. 20 баллов)

  • Давность — недавно обновленные факты получают более высокий балл (10 баллов, убывает в течение 90 дней)

  • Вес категории — предпочтение/решение (3), рабочий процесс/техническое (2), проект/личное (1), общее (0)

Как это работает

Конвейер поиска

  1. FTS5 + BM25 и семантическое векторное сходство выполняются параллельно

  2. Результаты объединяются и дедуплицируются с помощью Reciprocal Rank Fusion (k=60)

  3. Факты, присутствующие в обоих списках, получают естественное повышение рейтинга

  4. Если оба метода возвращают пустой результат, используется поиск подстроки LIKE

  5. Количество обращений отслеживается при каждом успешном поиске

Эмбеддинги

  • Модель: all-MiniLM-L6-v2 (384 измерения, ~23 МБ)

  • Генерируются локально через @xenova/transformers — никаких вызовов API, данные не покидают ваш компьютер

  • Эмбеддинги создаются при сохранении и заполняются при запуске сервера

  • Косинусное сходство с порогом 0.3 для фильтрации шума

Хранение

  • SQLite в режиме WAL для быстрого параллельного чтения/записи

  • Виртуальная таблица FTS5 синхронизируется через триггеры для полнотекстовой индексации в реальном времени

  • Эмбеддинги хранятся в столбцах BLOB вместе с фактами

Разработка

git clone https://github.com/kurovu146/claude-memory-mcp.git
cd claude-memory-mcp
npm install
npm run build
npm test

Лицензия

MIT

-
security - not tested
A
license - permissive license
-
quality - not tested

Latest Blog Posts

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/kurovu146/claude-memory-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server