Integrations
Supports containerized deployment through Docker, allowing the memory server to be run in isolated containers with appropriate build and run commands.
Uses DuckDB as the backend database for storing knowledge graph data, leveraging its fast query processing, SQL interface, and transaction support for efficient storage and retrieval of entities, observations, and relations.
Сервер памяти графа знаний MCP DuckDB
Форк-версия официального сервера памяти Knowledge Graph .
Установка
Установка через Smithery
Чтобы автоматически установить DuckDB Knowledge Graph Memory Server для Claude Desktop через Smithery :
Ручная установка
В противном случае добавьте @IzumiSy/mcp-duckdb-memory-server
в ваш claude_desktop_config.json
вручную ( MEMORY_FILE_PATH
необязателен)
Данные, хранящиеся по этому пути, представляют собой файл базы данных DuckDB.
Докер
Строить
Бегать
Использование
Используйте пример инструкции ниже.
Мотивация
Этот проект улучшает исходный сервер памяти MCP Knowledge Graph, заменяя его бэкэнд на DuckDB.
Почему DuckDB?
Оригинальный сервер памяти MCP Knowledge Graph использовал файл JSON в качестве хранилища данных и выполнял поиск в памяти. Хотя этот подход хорошо работает для небольших наборов данных, он создает несколько проблем:
- Производительность : производительность поиска в памяти снижается по мере роста набора данных.
- Масштабируемость : использование памяти значительно увеличивается при обработке большого количества сущностей и отношений.
- Гибкость запросов : сложные запросы и условные поиски трудно реализовать.
- Целостность данных : обеспечение атомарности транзакций и операций CRUD является сложной задачей.
Для решения следующих задач была выбрана DuckDB:
- Быстрая обработка запросов : DuckDB оптимизирован для аналитических запросов и хорошо работает даже с большими наборами данных.
- Интерфейс SQL : стандартный SQL может использоваться для легкого выполнения сложных запросов.
- Поддержка транзакций : поддерживает обработку транзакций для сохранения целостности данных.
- Возможности индексирования : позволяет создавать индексы для повышения производительности поиска.
- Встроенная база данных : работает внутри приложения, не требуя внешнего сервера базы данных.
Подробности реализации
В данной реализации в качестве внутренней системы хранения данных используется DuckDB, при этом особое внимание уделяется двум ключевым аспектам:
Структура базы данных
Граф знаний хранится в реляционной структуре базы данных, как показано ниже:
Такая конструкция схемы обеспечивает эффективное хранение и извлечение компонентов графа знаний, сохраняя при этом взаимосвязи между сущностями, наблюдениями и отношениями.
Реализация нечеткого поиска
Реализация объединяет SQL-запросы с Fuse.js для гибкого поиска сущностей:
- Запросы DuckDB SQL извлекают базовые данные из базы данных
- Fuse.js предоставляет возможности нечеткого сопоставления на основе извлеченных данных
- Этот гибридный подход позволяет выполнять как структурированные запросы, так и гибкое сопоставление текста.
- Результаты поиска включают как точные, так и частичные совпадения, ранжированные по релевантности.
Разработка
Настраивать
Тестирование
Лицензия
Данный проект лицензирован по лицензии MIT — подробности см. в файле LICENSE .
You must be authenticated.
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
Tools
Сервер памяти для Клода, который хранит и извлекает данные графа знаний в DuckDB, повышая производительность и возможности запросов для общения с постоянной пользовательской информацией.
Related Resources
Related MCP Servers
- AsecurityAlicenseAqualityAn improved implementation of persistent memory using a local knowledge graph with a customizable --memory-path. This lets Claude remember information about the user across chats.Last updated -932144JavaScriptMIT License
- -securityAlicense-qualityA basic implementation of persistent memory using a local knowledge graph. This lets Claude remember information about the user across chats.Last updated -914,69844,650JavaScriptMIT License
- AsecurityFlicenseAqualityThis MCP server provides persistent memory integration for chat applications by utilizing a local knowledge graph to remember user information across interactions.Last updated -914,6981JavaScript
- -securityAlicense-qualityA persistent memory implementation using a local knowledge graph that lets Claude remember information about users across conversations.Last updated -4PythonMIT License