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

Servidor universal del Model Context Protocol (MCP) que ofrece memoria dinámica de grafo de conocimiento de código respaldada por SQLite para asistentes de codificación con IA y agentes autónomos.

Detecta automáticamente los espacios de trabajo activos, analiza AST de múltiples lenguajes y dependencias estructurales en un grafo de conocimiento SQLite local aislado, y expone herramientas MCP de precisión para inspeccionar símbolos, calcular las rutas de llamada/importación más cortas y navegar por las topologías del código.


🌟 Capacidades clave

  • Cero dependencias en tiempo de ejecución: Escrito íntegramente con la biblioteca estándar de Python (ast, sqlite3, json, re, hashlib, threading).

  • Aislamiento dinámico de múltiples espacios de trabajo: Genera hashes SHA-256 deterministas por raíz de espacio de trabajo; almacena bases de datos SQLite aisladas en ~/.mcp-graph-memory/storage/graph_<hash>.db.

  • Caché incremental de stat: Verifica el mtime y el size de los archivos para lograr omisiones de menos de un milisegundo en archivos sin cambios durante el reindexado.

  • Analizador de AST y estructural multilenguaje:

    • Python: Clases, métodos, funciones, funciones asíncronas, decoradores, importaciones (from x import y, import z), jerarquías de herencia, puntos de llamada.

    • TypeScript / JavaScript: Clases, interfaces, tipos, funciones, funciones flecha, importaciones/exportaciones ES6, require() de CommonJS.

    • Go: Paquetes, importaciones, estructuras, interfaces, funciones, métodos.

    • Rust: Módulos, estructuras, enums, traits, bloques impl, firmas fn.

    • C / C++ / Java / PHP / Ruby / Kotlin / Swift / Shell: Estructuras, clases, definiciones.

  • Protección contra congelaciones e inanición de CPU:

    • Inicialización asíncrona del demonio sin bloqueo.

    • Transporte stdio sin espera activa (for raw_line in sys.stdin:).

    • Lista de ignorados estricta para node_modules/, .git/, .venv/, pesos binarios y blobs de caché.


🛠️ Especificación de herramientas MCP

Tool

Parameters

Description

graph_reindex

force (bool)

Escanea y actualiza la memoria del grafo del espacio de trabajo de forma incremental o forzada.

graph_query_symbol

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

Busca símbolos con rutas de archivo exactas, rangos de líneas, firmas y relaciones.

graph_find_paths

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

Calcula las rutas de dependencia / importación / llamada más cortas entre dos archivos o símbolos.

graph_get_neighbors

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

Inspecciona llamadores directos, funciones llamadas, importaciones y aristas de contención.

graph_structure_overview

depth (int), focus_path (str)

Devuelve métricas arquitectónicas, módulos centrales y árbol de directorios.

graph_find_files

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

Busca archivos del espacio de trabajo por patrón de ruta, extensión o símbolos contenidos.


🚀 Instalación

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

🔌 Guías de integración

1. Integración con Google Antigravity

Opción A: Configuración global (recomendada)

Añade graph-memory a tu archivo de configuración global de MCP de Antigravity en ~/.gemini/config/mcp_config.json:

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

(Reemplaza /home/YOUR_USER con la ruta real de tu directorio $HOME o usa una ruta absoluta).

Opción B: Configuración a nivel de espacio de trabajo

Para la activación por proyecto, coloca mcp_config.json dentro de la raíz de tu espacio de trabajo en .agents/mcp_config.json:

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

2. Integración con Claude Desktop

Localiza tu configuración de Claude:

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

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

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

Añade la definición del servidor:

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

3. Integración con Cursor / VSCode / Windsurf

En .cursor/mcp.json o .vscode/mcp.json:

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

🔧 Variables de entorno

Variable

Default

Description

MCP_GRAPH_STORAGE_DIR

~/.mcp-graph-memory/storage

Directorio persistente para las bases de datos SQLite (graph_<hash>.db).

MCP_WORKSPACE_ROOT

os.getcwd()

Ruta de espacio de trabajo de respaldo si el cliente omite rootUri en initialize.


🧪 Verificación y pruebas

Ejecuta la suite de integración automatizada:

python3 test_server.py

📄 Licencia

Licencia MIT - Copyright (c) 2026 Benjamin Leimer. Consulta LICENSE para más detalles.

-
license - not tested
Not graded
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

  • Your memory, everywhere AI goes. Build knowledge once, access it via MCP anywhere.

  • Package intelligence MCP for AI agents — 22 tools, 19 ecosystems, AGPL SDK, free.

  • Analytical memory for AI agents: a real Postgres queried in plain English over MCP. One command.

View all MCP Connectors

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/Luiguard/mcp-sqlite-graph-memory'

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