A Neo4j-based MCP server providing persistent memory and contextual assistance for Claude Code.
A Neo4j-based Model Context Protocol (MCP) server that provides intelligent memory capabilities for Claude Code, enabling persistent knowledge tracking, relationship mapping, and contextual development assistance.
This MCP server creates a sophisticated memory system that tracks Claude Code's activities, decisions, and learned patterns to provide contextual memory across sessions and projects. It uses Neo4j as a graph database to capture and analyze complex relationships between development concepts, solutions, and workflows.
The system tracks seven categories of relationships:
CAUSES
, TRIGGERS
, LEADS_TO
, PREVENTS
, BREAKS
SOLVES
, ADDRESSES
, ALTERNATIVE_TO
, IMPROVES
, REPLACES
OCCURS_IN
, APPLIES_TO
, WORKS_WITH
, REQUIRES
, USED_IN
BUILDS_ON
, CONTRADICTS
, CONFIRMS
, GENERALIZES
, SPECIALIZES
SIMILAR_TO
, VARIANT_OF
, RELATED_TO
, ANALOGY_TO
, OPPOSITE_OF
FOLLOWS
, DEPENDS_ON
, ENABLES
, BLOCKS
, PARALLEL_TO
EFFECTIVE_FOR
, INEFFECTIVE_FOR
, PREFERRED_OVER
, DEPRECATED_BY
, VALIDATED_BY
git clone https://github.com/viralvoodoo/claude-code-memory.git
cd claude-code-memory
pip install -e .
cp .env.example .env
# Edit .env with your Neo4j credentials
python -m claude_memory.setup
NEO4J_URI
- Neo4j database URI (default: bolt://localhost:7687)NEO4J_USER
- Database username (default: neo4j)NEO4J_PASSWORD
- Database passwordMEMORY_LOG_LEVEL
- Logging level (default: INFO)Add to your Claude Code MCP configuration:
{
"mcpServers": {
"claude-memory": {
"command": "python",
"args": ["-m", "claude_memory.server"],
"env": {
"NEO4J_URI": "bolt://localhost:7687",
"NEO4J_USER": "neo4j",
"NEO4J_PASSWORD": "your-password"
}
}
}
}
store_memory
- Store new development memories with contextget_memory
- Retrieve specific memory by ID with relationshipssearch_memories
- Find memories by content, context, or relationshipsupdate_memory
- Modify existing memory contentdelete_memory
- Remove memory and cleanup relationshipscreate_relationship
- Link memories with specific relationship typesget_related_memories
- Find memories connected to a specific memoryanalyze_relationships
- Discover relationship patterns in memory graphanalyze_codebase
- Scan project and create contextual memory graphtrack_task_execution
- Record development workflow and patternssuggest_similar_solutions
- Find analogous past solutionspredict_solution_effectiveness
- Estimate success probability of approachesget_memory_graph
- Visualize knowledge network and relationshipsfind_memory_paths
- Discover connection chains between conceptsmemory_effectiveness
- Track and analyze solution success ratesclaude-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
# 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/
We welcome contributions! Please see our Contributing Guide for details.
This project is licensed under the MIT License - see the LICENSE file for details.
Retrieve on-chain information for EVM contracts locally using an Ethereum RPC node and Etherscan API.
Execute pre-configured and secure shell commands via a Go-based MCP server.
An AI-driven platform for frontend semantic cognition and automation.
Tool platform by IBM to build, test and deploy tools for any data source
Analyze images using OpenRouter's vision models. Requires an OpenRouter API key.
Turns any Swagger/OpenAPI REST endpoint with a yaml/json definition into an MCP Server with Langchain/Langflow integration automatically.
Generates true random numbers using atmospheric noise from random.org.
Work on your code with JetBrains IDEs
Captures and manages stdout logs from multiple processes via a named pipe system for real-time debugging and analysis.
Analyzes GitLab merge requests and links them to Confluence documentation.