This is a proof-of-concept server that gives LLMs structured memory through knowledge graphs. It exposes MCP tools for storing facts, learning business rules through conversation, and running logical deductions using RDFLib and SPARQL queries. You teach it by chatting naturally: tell it "Bob drives to work" and it can later propose rules like "drivers are adults" and "adults can vote" to infer new facts. Beyond the conversational mode, it includes a dashboard for extracting rules from PDFs and visualizing the knowledge graph. Works with Claude, Gemini, or any MCP client. The author marks it experimental and not production ready, but it's a solid example of neuro-symbolic architecture if you're exploring how to make LLM conversations remember and reason over structured knowledge.
Give your LLM structured memory | Transform conversations into verified knowledge graphs
An MCP server that teaches AI assistants business rules through natural dialogue
[!CAUTION] Proof of Concept Only: This project is an experimental implementation of a Neuro-Symbolic architecture. It is designed to demonstrate how LLMs can interact with knowledge graphs for rule learning. It is NOT intended for production or professional use. Use it for research, experimentation, and learning purposes only.
New user? → 5-Minute Quick Start Guide
Advanced user? → 🧪 Advanced Demo Procedure (Inédit)
Having issues? → Troubleshooting Guide
Need to configure? → Configuration Reference
Want to understand how it works? → Architecture Technique & Schémas | Principes Neuro-Symboliques
Looking for specific docs? → 📚 Documentation Index
SmartMemory transforme votre assistant IA en un expert métier capable de :
This mode gives your LLM "long-term memory" and logical deduction capabilities.
Best for: Everyone! No Python installation required.
The SmartMemory Docker image is available on GitHub Container Registry.
Simply add to your MCP client configuration:
For Claude Desktop, edit ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"smart-memory": {
"command": "docker",
"args": ["run", "--rm", "-i", "ghcr.io/mauriceisrael/smart-memory:latest"]
}
}
}
For Gemini (Cline), edit ~/.cline/mcp_settings.json:
{
"mcpServers": {
"smart-memory": {
"command": "docker",
"args": ["run", "--rm", "-i", "ghcr.io/mauriceisrael/smart-memory:latest"]
}
}
}
Restart your client and you're done! ✅
Best for: Developers & Privacy-conscious users who want to run from source.
Clone & Install
git clone https://github.com/MauriceIsrael/SmartMemory
cd SmartMemory
python3 -m venv venv
source venv/bin/activate
pip install -e .
Connect to Claude Desktop
Edit your configuration file (~/Library/Application Support/Claude/claude_desktop_config.json on macOS):
{
"mcpServers": {
"smartmemory": {
"command": "/absolute/path/to/SmartMemory/venv/bin/python",
"args": ["-m", "smart_memory.server"]
}
}
}
(Replace /absolute/path/... with your actual path)
Chat! Restart Claude and try:
"I know Bob. He goes to work by car. Can he vote?"
See Interactive Demo below for what to expect.
This mode runs the Web Dashboard and API server. Ideally suited for:
You don't need Python installed. Just Docker.
Run the container
For Dashboard mode (web interface):
For Ollama (local):
docker run -p 8080:8080 \
-e LLM_PROVIDER=ollama \
-e LLM_MODEL=llama3 \
-e LLM_BASE_URL=http://172.17.0.1:11434 \
-v $(pwd)/brain:/app/data \
ghcr.io/mauriceisrael/smart-memory:latest dashboard
For OpenAI:
docker run -p 8080:8080 \
-e LLM_PROVIDER=openai \
-e LLM_MODEL=gpt-4 \
-e LLM_API_KEY=your-api-key \
-v $(pwd)/brain:/app/data \
ghcr.io/mauriceisrael/smart-memory:latest dashboard
(Note: Add dashboard at the end to start web server. Without it, starts MCP mode)
(The -v volume persists your knowledge graph and rules)
Open the Dashboard
Go to http://localhost:8080
SmartMemory uses an LLM to extract business rules from documents. Configure it in two ways:
Option 1: Via Dashboard (Local Development)
Option 2: Via Environment Variables (Docker)
Already shown above! Pass -e LLM_PROVIDER=... when starting Docker.
Supported Providers:
llama3, qwen2.5-coder, mistralgpt-4, gpt-3.5-turboclaude-3-5-sonnetgemini-1.5-proWe support deploying to Google Cloud Run, GitHub, etc. 👉 Read the Deployment Guide (DEPLOY.md) for full instructions on hosting it online.
Once your dashboard is running (or via CLI):
Here is what happens when you use Conversational Mode:
> I know Bob
LLM: ✦ I've processed your statement "I know Bob".
> He goes at work by car
LLM: ✦ I've noted that Bob goes to work by car.
> Can Bob vote?
LLM: ✦ I can't answer yet. But since he drives, he is likely an adult.
May I add a rule: "Drivers are adults"?
> yes
LLM: ✨ Rule 'drivers_are_adults' added.
Now, may I add a rule: "Adults can vote"?
> yes
LLM: ✨ Rule 'adults_can_vote' added.
✦ Therefore, yes, Bob can vote.
MIT License - see LICENSE