Claude Code Memory Server

Un servidor MCP basado en Neo4j que proporciona memoria persistente y asistencia contextual para Claude Code.

Documentación

Claude Code Memory Server

Un servidor de Model Context Protocol (MCP) basado en Neo4j que proporciona capacidades de memoria inteligente para Claude Code, permitiendo el seguimiento persistente de conocimiento, el mapeo de relaciones y la asistencia contextual en el desarrollo.

Descripción general

Este servidor MCP crea un sistema de memoria sofisticado que rastrea las actividades, decisiones y patrones aprendidos de Claude Code para proporcionar memoria contextual entre sesiones y proyectos. Utiliza Neo4j como base de datos de grafos para capturar y analizar relaciones complejas entre conceptos de desarrollo, soluciones y flujos de trabajo.

Características

Operaciones básicas de memoria

  • Almacenamiento persistente de memoria - Almacena tareas de desarrollo, soluciones y patrones
  • Búsqueda inteligente - Encuentra memorias relevantes por contexto, contenido o relaciones
  • Mapeo de relaciones - Rastrea cómo se relacionan conceptos, archivos y soluciones
  • Conciencia contextual - Recuperación de memoria específica por proyecto y tecnología

Inteligencia avanzada

  • Reconocimiento de patrones - Identifica automáticamente patrones de desarrollo reutilizables
  • Efectividad de soluciones - Rastrea y aprende de enfoques exitosos
  • Memoria de flujo de trabajo - Recuerda y sugiere secuencias de desarrollo óptimas
  • Prevención de errores - Aprende de errores pasados para prevenir problemas similares

Integración con el desarrollo

  • Seguimiento de ejecución de tareas - Monitorea qué hace Claude Code y cómo
  • Análisis de patrones de código - Identifica y almacena patrones de código exitosos
  • Memoria de contexto del proyecto - Comprende convenciones y dependencias del código base
  • Aprendizaje colaborativo - Comparte conocimiento entre sesiones de desarrollo

Arquitectura

Tipos de memoria

  • Task - Tareas de desarrollo y sus patrones de ejecución
  • CodePattern - Soluciones de código reutilizables y decisiones arquitectónicas
  • Problem - Problemas encontrados y su contexto
  • Solution - Cómo se resolvieron los problemas y su efectividad
  • Project - Contexto del código base y conocimiento específico del proyecto
  • Technology - Conocimiento específico de frameworks, lenguajes y herramientas

Tipos de relaciones

El sistema rastrea siete categorías de relaciones:

  1. Causal - CAUSES, TRIGGERS, LEADS_TO, PREVENTS, BREAKS
  2. Solution - SOLVES, ADDRESSES, ALTERNATIVE_TO, IMPROVES, REPLACES
  3. Context - OCCURS_IN, APPLIES_TO, WORKS_WITH, REQUIRES, USED_IN
  4. Learning - BUILDS_ON, CONTRADICTS, CONFIRMS, GENERALIZES, SPECIALIZES
  5. Similarity - SIMILAR_TO, VARIANT_OF, RELATED_TO, ANALOGY_TO, OPPOSITE_OF
  6. Workflow - FOLLOWS, DEPENDS_ON, ENABLES, BLOCKS, PARALLEL_TO
  7. Quality - EFFECTIVE_FOR, INEFFECTIVE_FOR, PREFERRED_OVER, DEPRECATED_BY, VALIDATED_BY

Instalación

Requisitos previos

  • Python 3.10 o superior
  • Base de datos Neo4j (local o en la nube)
  • Claude Code con soporte MCP

Configuración

  1. Clona el repositorio:
git clone https://github.com/viralvoodoo/claude-code-memory.git
cd claude-code-memory
  1. Instala las dependencias:
pip install -e .
  1. Configura la conexión a Neo4j:
cp .env.example .env
# Edit .env with your Neo4j credentials
  1. Inicializa el esquema de la base de datos:
python -m claude_memory.setup

Configuración

Variables de entorno

  • NEO4J_URI - URI de la base de datos Neo4j (predeterminado: bolt://localhost:7687)
  • NEO4J_USER - Nombre de usuario de la base de datos (predeterminado: neo4j)
  • NEO4J_PASSWORD - Contraseña de la base de datos
  • MEMORY_LOG_LEVEL - Nivel de registro (predeterminado: INFO)

Integración con Claude Code

Agrega a tu configuración MCP de Claude Code:

{
  "mcpServers": {
    "claude-memory": {
      "command": "python",
      "args": ["-m", "claude_memory.server"],
      "env": {
        "NEO4J_URI": "bolt://localhost:7687",
        "NEO4J_USER": "neo4j",
        "NEO4J_PASSWORD": "your-password"
      }
    }
  }
}

Uso

Herramientas MCP disponibles

Operaciones básicas de memoria

  • store_memory - Almacena nuevas memorias de desarrollo con contexto
  • get_memory - Recupera una memoria específica por ID con relaciones
  • search_memories - Encuentra memorias por contenido, contexto o relaciones
  • update_memory - Modifica el contenido de una memoria existente
  • delete_memory - Elimina una memoria y limpia las relaciones

Gestión de relaciones

  • create_relationship - Vincula memorias con tipos de relación específicos
  • get_related_memories - Encuentra memorias conectadas a una memoria específica
  • analyze_relationships - Descubre patrones de relación en el grafo de memoria

Inteligencia de desarrollo

  • analyze_codebase - Escanea el proyecto y crea un grafo de memoria contextual
  • track_task_execution - Registra flujos de trabajo y patrones de desarrollo
  • suggest_similar_solutions - Encuentra soluciones pasadas análogas
  • predict_solution_effectiveness - Estima la probabilidad de éxito de enfoques

Analítica avanzada

  • get_memory_graph - Visualiza la red de conocimiento y las relaciones
  • find_memory_paths - Descubre cadenas de conexión entre conceptos
  • memory_effectiveness - Rastrea y analiza las tasas de éxito de soluciones

Desarrollo

Estructura del proyecto

claude-code-memory/
├── src/claude_memory/          # Main source code
│   ├── __init__.py
│   ├── server.py              # MCP server implementation
│   ├── models.py              # Data models and schemas
│   ├── database.py            # Neo4j database operations
│   ├── memory_store.py        # Core memory logic
│   ├── relationships.py       # Relationship management
│   ├── search.py              # Search and retrieval
│   └── intelligence.py        # Pattern recognition and analytics
├── tests/                     # Test suite
├── docs/                      # Documentation
├── scripts/                   # Utility scripts
└── pyproject.toml            # Project configuration

Configuración de desarrollo

# Install development dependencies
pip install -e ".[dev]"

# Install pre-commit hooks
pre-commit install

# Run tests
pytest

# Format code
black src/ tests/
ruff --fix src/ tests/

# Type checking
mypy src/

Contribuciones

¡Agradecemos las contribuciones! Consulta nuestra Guía de contribución para más detalles.

Flujo de trabajo de desarrollo

  1. Revisa los Problemas de GitHub existentes
  2. Haz un fork del repositorio y crea una rama de características
  3. Realiza cambios siguiendo nuestros estándares de codificación
  4. Agrega pruebas para la nueva funcionalidad
  5. Envía una solicitud de extracción con una descripción clara

Licencia

Este proyecto está licenciado bajo la Licencia MIT - consulta el archivo LICENCIA para más detalles.

Hoja de ruta

Fase 1: Fundamentos (Actual)

  • ✅ Configuración del proyecto y servidor MCP básico
  • 🔄 Operaciones básicas de memoria (CRUD)
  • ⏳ Gestión básica de relaciones

Fase 2: Inteligencia

  • ⏳ Sistema avanzado de relaciones
  • ⏳ Reconocimiento de patrones
  • ⏳ Conciencia contextual

Fase 3: Integración

  • ⏳ Integración con el flujo de trabajo de Claude Code
  • ⏳ Captura automática de memoria
  • ⏳ Sugerencias proactivas

Fase 4: Analítica

  • ⏳ Seguimiento de efectividad de memoria
  • ⏳ Visualización del grafo de conocimiento
  • ⏳ Optimización del rendimiento

Soporte

Agradecimientos