Skip to main content
Glama
Luiguard

mcp-sqlite-graph-memory

by Luiguard

mcp-sqlite-graph-memory

License: MIT Python: 3.10+ MCP: 2024-11-05

Универсальный сервер Model Context Protocol (MCP), предоставляющий динамическую память графа знаний о коде на основе SQLite для ИИ-ассистентов по программированию и автономных агентов.

Автоматически обнаруживает активные рабочие области, разбирает многоязычные AST и структурные зависимости в изолированный локальный граф знаний на SQLite и предоставляет точные MCP-инструменты для поиска символов, вычисления кратчайших путей вызовов/импортов и навигации по топологии кода.


🌟 Ключевые возможности

  • Ноль зависимостей времени выполнения: Полностью написан на стандартной библиотеке Python (ast, sqlite3, json, re, hashlib, threading).

  • Динамическая изоляция нескольких рабочих областей: Генерирует детерминированные SHA-256 хеши для корня каждой рабочей области; хранит изолированные базы данных SQLite в ~/.mcp-graph-memory/storage/graph_<hash>.db.

  • Инкрементальное кэширование stat-данных: Проверяет mtime и size файлов, чтобы пропускать неизменённые файлы за субмиллисекундное время при повторном индексировании.

  • Многоязычный AST и структурный парсер:

    • Python: Классы, методы, функции, асинхронные функции, декораторы, импорты (from x import y, import z), иерархии наследования, места вызовов.

    • TypeScript / JavaScript: Классы, интерфейсы, типы, функции, стрелочные функции, импорты/экспорты ES6, CommonJS require().

    • Go: Пакеты, импорты, структуры, интерфейсы, функции, методы.

    • Rust: Модули, структуры, перечисления, трейты, блоки impl, сигнатуры fn.

    • C / C++ / Java / PHP / Ruby / Kotlin / Swift / Shell: Структуры, классы, определения.

  • Защита от зависаний и голодания CPU:

    • Неблокирующая асинхронная инициализация демона.

    • Транспорт stdio без активного ожидания (for raw_line in sys.stdin:).

    • Строгий список игнорирования для node_modules/, .git/, .venv/, бинарных весов и кэш-блобов.


Related MCP server: Synapse

🛠️ Спецификация MCP-инструментов

Инструмент

Параметры

Описание

graph_reindex

force (bool)

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

graph_query_symbol

query (str), type (str), exact (bool)

Находит символы с точными путями к файлам, диапазонами строк, сигнатурами и связями.

graph_find_paths

source (str), target (str), max_depth (int)

Вычисляет кратчайшие пути зависимостей / импортов / вызовов между двумя файлами или символами.

graph_get_neighbors

node_id_or_path (str), direction (in/out/both), relation (all/imports/calls/contains/inherits)

Проверяет прямых вызывающих, вызываемых, импорты и рёбра вложенности.

graph_structure_overview

depth (int), focus_path (str)

Возвращает архитектурные метрики, модули-хабы и дерево каталогов.

graph_find_files

pattern (str), extension (str), contains_symbol (str)

Находит файлы рабочей области по шаблону пути, расширению или содержащимся символам.


🚀 Установка

git clone https://github.com/Luiguard/mcp-sqlite-graph-memory.git ~/.mcp-graph-memory
chmod +x ~/.mcp-graph-memory/server.py

🔌 Руководства по интеграции

1. Интеграция с Google Antigravity

Вариант A: Глобальная конфигурация (рекомендуется)

Добавьте graph-memory в ваш глобальный файл конфигурации MCP Antigravity по пути ~/.gemini/config/mcp_config.json:

{
  "mcpServers": {
    "graph-memory": {
      "command": "python3",
      "args": [
        "/home/YOUR_USER/.mcp-graph-memory/server.py"
      ]
    }
  }
}

(Замените /home/YOUR_USER на фактический путь к вашему каталогу $HOME или используйте абсолютный путь).

Вариант B: Конфигурация на уровне рабочей области

Для активации в рамках отдельного проекта поместите mcp_config.json в корень вашей рабочей области по пути .agents/mcp_config.json:

{
  "mcpServers": {
    "graph-memory": {
      "command": "python3",
      "args": [
        "${workspaceFolder}/.mcp-graph-memory/server.py"
      ]
    }
  }
}

2. Интеграция с Claude Desktop

Найдите вашу конфигурацию Claude:

  • Linux: ~/.config/Claude/claude_desktop_config.json

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

  • Windows: %APPDATA%\Claude\claude_desktop_config.json

Добавьте определение сервера:

{
  "mcpServers": {
    "graph-memory": {
      "command": "python3",
      "args": [
        "/path/to/mcp-sqlite-graph-memory/server.py"
      ]
    }
  }
}

3. Интеграция с Cursor / VSCode / Windsurf

В .cursor/mcp.json или .vscode/mcp.json:

{
  "mcpServers": {
    "graph-memory": {
      "command": "python3",
      "args": [
        "/path/to/mcp-sqlite-graph-memory/server.py"
      ]
    }
  }
}

🔧 Переменные окружения

Переменная

По умолчанию

Описание

MCP_GRAPH_STORAGE_DIR

~/.mcp-graph-memory/storage

Постоянный каталог для баз данных SQLite (graph_<hash>.db).

MCP_WORKSPACE_ROOT

os.getcwd()

Запасной путь рабочей области, если клиент не передаёт rootUri в initialize.


🧪 Проверка и тестирование

Запустите автоматизированный набор интеграционных тестов:

python3 test_server.py

📄 Лицензия

Лицензия MIT — Copyright (c) 2026 Benjamin Leimer. Подробности см. в LICENSE.

Maintenance

ActivitySlowing
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    Provides AI assistants with a structured, token-efficient map of a codebase's symbols, dependencies, and relationships via MCP tools like overview, query, and impact analysis.
    8
    MIT
  • F
    license
    Not graded
    quality
    D
    maintenance
    Provides structural code intelligence via 26 MCP tools, enabling AI assistants to query code symbols, dependencies, and call graphs accurately without file-pasting.
    -
  • F
    license
    Not graded
    quality
    D
    maintenance
    Provides code intelligence by indexing source code into SQLite and offering MCP tools for symbol search, flow tracing, and context retrieval to assist with code navigation and understanding.
    -
  • A
    license
    Not graded
    quality
    A
    maintenance
    A persistent code-intelligence MCP server that builds a queryable knowledge graph of your codebase, enabling AI assistants to perform cross-file structural reasoning, dependency analysis, and blast radius detection.
    9
    MIT