Memory Engine MCP
Resumen
Descripción del creador (original en inglés)
Local-first graph memory for AI assistants with SQLite, semantic search, and MCP tools.
Los tres pilares de PopNx MCP
Estos tres nunca se combinan en una sola puntuación: las opiniones, las mediciones y la popularidad son cosas distintas.
- Opinión de usuariosiAún no hay reseñasLas reseñas se abrirán junto con las cuentas en una etapa posterior
- Nuestras revisiones básicasi1 de 1 superadasRevisado con información pública; el código aún no se ha escaneado
- UsoiMuy nuevo★ –
Qué puedes hacer con él
Todavía no escribimos un resumen sencillo para este. Abajo están los datos que leímos del registro.
- Conexión: Se ejecuta en tu computadora
- Transporte: SSE
- Categoría: Búsqueda y memoria de IA
Instalación
Elige la app de IA que usas y copia la configuración.
Antes de instalar
- Revisiones básicas: 1 de 1 superadas
- Se ejecuta en tu computadora con los permisos de tu usuario (archivos, red, apps).
- Debes completar tú:
MEMORY_DB_PATH,MARKDOWN_SOURCE,MEMORY_PORT
Necesitas
- DockerDocker instalado
¿Qué app usas?
Elige tu app arriba. La recordamos, así que la próxima vez el botón dirá “Instalar en …”.
Abre Claude Desktop → Settings → Developer → Edit Config y pega esto en claude_desktop_config.json
{
"mcpServers": {
"memory-engine": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"MEMORY_DB_PATH",
"-e",
"MARKDOWN_SOURCE",
"-e",
"MEMORY_PORT",
"ghcr.io/simoneb79/memory-engine-mcp:1.5.3"
],
"env": {
"MEMORY_DB_PATH": "your-value",
"MARKDOWN_SOURCE": "your-value",
"MEMORY_PORT": "your-value"
}
}
}
}Ejecuta esto en tu terminal
claude mcp add memory-engine --env MEMORY_DB_PATH=your-value --env MARKDOWN_SOURCE=your-value --env MEMORY_PORT=your-value -- docker run -i --rm -e MEMORY_DB_PATH -e MARKDOWN_SOURCE -e MEMORY_PORT ghcr.io/simoneb79/memory-engine-mcp:1.5.3Completa los valores vacíos antes de ejecutarlo.
O copia la configuración tú
Pégalo en .cursor/mcp.json de tu proyecto, o en ~/.cursor/mcp.json
{
"mcpServers": {
"memory-engine": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"MEMORY_DB_PATH",
"-e",
"MARKDOWN_SOURCE",
"-e",
"MEMORY_PORT",
"ghcr.io/simoneb79/memory-engine-mcp:1.5.3"
],
"env": {
"MEMORY_DB_PATH": "your-value",
"MARKDOWN_SOURCE": "your-value",
"MEMORY_PORT": "your-value"
}
}
}
}Tu navegador te pide permiso para abrir la app; luego la app muestra la configuración y te pide confirmar. Los valores de las claves quedan vacíos para que los completes tú.
O copia la configuración tú
Pégalo en .vscode/mcp.json de tu proyecto
{
"servers": {
"memory-engine": {
"type": "stdio",
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"MEMORY_DB_PATH",
"-e",
"MARKDOWN_SOURCE",
"-e",
"MEMORY_PORT",
"ghcr.io/simoneb79/memory-engine-mcp:1.5.3"
],
"env": {
"MEMORY_DB_PATH": "your-value",
"MARKDOWN_SOURCE": "your-value",
"MEMORY_PORT": "your-value"
}
}
}
}Tu navegador te pide permiso para abrir la app; luego la app muestra la configuración y te pide confirmar. Los valores de las claves quedan vacíos para que los completes tú.
Este se ejecuta en tu computadora, y ChatGPT solo puede conectarse a servidores en internet. Elige otra app.
Tu elección se guarda en una cookie en este dispositivo; no necesitas cuenta.
Valores que debes completar
MEMORY_DB_PATHenvSQLite database path inside the container.MARKDOWN_SOURCEenvOptional directory for one-way markdown import.MEMORY_PORTenvSSE server port. Default: 8085.
Esta configuración se genera a partir de la ficha del creador en el registro. Si el README dice otra cosa, sigue el README.
Qué puede hacer
Se ejecuta en tu computadora; la lista de herramientas aparece en tu app de IA después de instalarlo.
Revisiones básicasi
Revisamos información que cualquiera puede ver; no hemos leído el código. Las revisiones que no aplican no se cuentan. · Revisado el 9 nov 2026
- ✓ Superada
El creador coincide con el repo
El nombre en el registro se verificó con la cuenta de GitHub SimoneB79, dueña del repo
- … Aún sin revisar
Sigue en mantenimiento
Todavía no hemos leído este repo en GitHub
- … Aún sin revisar
Tiene licencia
Todavía no hemos leído este repo en GitHub
- – No aplica
El endpoint responde
Este se ejecuta en tu computadora; no hay endpoint en internet
- – No aplica
Inicio de sesión con OAuth
Se ejecuta en tu computadora y usa ajustes locales en su lugar
- … Aún sin revisar
Sin instrucciones ocultas en las descripciones de herramientas
Se ejecuta en tu computadora; solo podemos leer listas de herramientas de endpoints en internet
Comparado con otros en Búsqueda y memoria de IAi
- Más estrellas que el 0% de los otros 5747 servidores de esta categoría
- Publicado en el registro más recientemente que el 23% de los otros 5747 servidores de esta categoría
- Revisiones básicas iguales o mejores que el 100% de los otros 5747 servidores de esta categoría
Comparado con todos los servidores activos de esta categoría en el registro. Las estrellas solo cuentan cuando quien lo publica es dueño del repo.
Preguntas frecuentes
¿Es seguro Memory Engine MCP?
Superó 1 de 1 revisiones básicas aplicables. No hemos leído el código. Antes de agregar una clave o un token, revisa qué acceso pide el servidor y usa una clave que tenga solo los permisos que necesitas.
¿Qué claves o códigos necesita?
El registro no indica ninguna clave obligatoria, aunque algunos servidores te piden iniciar sesión la primera vez que los usas.
¿Se ejecuta en mi computadora o en la nube?
Se ejecuta en tu computadora. Tu app de IA lo inicia cuando hace falta, y los datos no pasan por los servidores del creador (a menos que el propio servidor llame a un servicio en línea).
¿Sigue en mantenimiento?
El repo de GitHub cambió por última vez –, y la última versión (1.5.3) llegó al registro hace 4 meses.
¿Qué apps pueden usarlo?
Las apps compatibles con MCP, como Claude Desktop, Claude Code, Cursor y VS Code. También necesitas Docker en tu computadora.
¿Qué puedo usar en su lugar?
En la misma categoría: Context7, Codebase Memory, Exa
Alternativas
Servidores de la misma categoría hechos por otros creadores, ordenados por estrellas.
Cómo leer una tarjeta:↓ Descargas por semanai★ Estrellas de GitHubiTres pilares: reseñas · revisiones · usoiActualizado = fecha en que se publicó la última versión en el registroi
Codebase Memory
Codebase knowledge graph for AI agents — 162 languages, sub-ms queries, 99% fewer tokens.
Exa
Connect AI agents to Exa for web search, content fetching, and multi-step research.
README del creador
Abrir el README
Copiado tal cual del repo del creador. PopNx MCP no lo ha revisado ni lo respalda. Se quitaron HTML, imágenes y scripts. Los enlaces llevan fuera de este sitio.
🧠 Memory Engine MCP
Local-first, graph-aware long-term memory for AI assistants.
SQLite + semantic search + knowledge graph + MCP tools for agents that need continuity.
Works with Claude Desktop · Claude Code · Cursor · Cline · Windsurf · OpenClaw · any MCP client
Why Memory Engine?
Most MCP memory servers are either simple key-value stores or plain text search wrappers.
Memory Engine is different: it models memory as typed atoms connected by typed bonds, then retrieves context with a hybrid ranking pipeline that combines:
- full-text search (SQLite FTS5)
- semantic similarity via local Ollama embeddings
- confidence, recency, and weight
- graph expansion from related memories
The goal is not just storage. The goal is a memory system that can recall, connect, decay, curate, and learn over time.
Highlights
- Local-first — SQLite database, optional local embeddings via Ollama, no required cloud API.
- MCP-native — exposes 35 tools through FastMCP.
- Graph-aware recall — expands top hits through bidirectional bonds for richer context.
- Semantic search — meaning-based retrieval with
nomic-embed-text. - Markdown coexistence — import existing notes one-way without replacing your human-readable memory.
- Error memory — remembers mistakes and corrections, with auto-promotion to preferences after repeated failures.
- Cognitive curator — non-destructive maintenance pass for compaction, bond suggestions, duplicate detection, and isolated atom classification.
- Session watcher — canonical OpenClaw SQLite ingestion (schema 17), reset-aware digests, and JSONL legacy fallback.
- Backup & restore — full SQLite snapshots, JSON export/import, verified restores with automatic safety backups.
- Auth & hardening — optional API token, secure bind, input validation, rate limiting.
- Test suite — 144 tests covering CRUD, ranking, migrations, auth, backup, concurrency, and transcript ingestion.
- Benchmark — CLI recall quality suite with Precision@K, MRR, latency percentiles.
Architecture
AI assistant / MCP client
│ ▼ FastMCP server — 35 tools │ ▼ Memory engine — hybrid ranking, graph recall, decay, learning │ ├── SQLite — atoms, bonds, FTS5, JSON metadata, versions ├── Ollama — optional local embeddings ├── Curator — conservative maintenance └── Session watcher — OpenClaw SQLite + JSONL fallback
MCP Tools
Memory
| Tool | Purpose |
|---|---|
remember | Create or update an atom |
recall | Smart hybrid recall with graph expansion |
working_set | Build a task-oriented context pack |
semantic_search | Pure semantic search |
get_atom | Read one atom with bonds |
list_atoms | Browse atoms by domain/type/status |
merge_atoms | Merge duplicate atoms |
export_atom | Export one atom as markdown |
Knowledge graph
| Tool | Purpose |
|---|---|
link / unlink | Create or remove typed bonds |
search_graph | Traverse the graph from one atom |
suggest_bonds | Suggest bonds for one atom |
suggest_bonds_all | Suggest or create bonds in bulk |
Learning and maintenance
| Tool | Purpose |
|---|---|
curator_run | Conservative curation pass |
cognitive_status | Graph and memory health metrics |
learning_run | Detect contradictions, weak atoms, merge candidates, gaps |
ask_pending / answer_human | Human-in-the-loop clarification |
decay_run | Run decay cycle |
cleanup_sessions | Remove expired session atoms |
cleanup_duplicates | Remove duplicate session atoms |
reindex_embeddings | Rebuild embeddings |
Error memory and preferences
| Tool | Purpose |
|---|---|
error_check | Check past failures before doing a task |
error_log | Record a mistake and the correction |
error_list | Browse unresolved/resolved errors |
preference_search | Search structured preferences |
Import and introspection
| Tool | Purpose |
|---|---|
import_markdown | Import markdown notes into atoms |
memory_summary | 3-level summary: global → domain → detail |
stats | Database statistics |
version | Server version |
recall_session | Search one OpenClaw session |
session_summary | Summarize one OpenClaw session |
memory_contradict | Supersede an old atom with a newer contradictory one |
list_contradictions | List explicit contradiction/supersession records |
classify_memory_tier | Infer the 3-tier class (episodic/semantic/procedural) |
memory_impact | Impact analysis: what depends on this atom |
Backup, restore & export
| Tool | Purpose |
|---|---|
backup_database | Create, list, verify, or clean up SQLite snapshots |
restore_database | Restore from a backup (with automatic safety backup) |
export_all | Export all memory data as portable JSON |
import_data | Import from JSON (merge or replace mode) |
Web UI (optional)
Memory Engine includes an optional web UI for graph exploration, atom inspection, contradiction browsing, and impact analysis.
# In docker-compose.yml, add:
environment:
- MEM_UI_PORT=6000
expose:
- "6000"
Or run standalone:
python3 web_ui.py
Open http://localhost:6000
Web UI: interactive graph, atom details, contradiction browser, stats dashboard
Quick start with Docker
Option A — Use the pre-built image (recommended)
# docker-compose.yml
services: memory-engine: image: ghcr.io/simoneb79/memory-engine-mcp:2.1.0 ports:
- "8085:8085" volumes:
- memory-data:/data restart: unless-stopped
volumes: memory-data:
docker compose up -d
Pin the version. Use an explicit tag like
:1.7.0in production.
Avoid
:latest— it can change without notice.
Option B — Build from source
git clone https://github.com/SimoneB79/memory-engine-mcp.git
cd memory-engine-mcp cp docker-compose.yml docker-compose.local.yml
Edit volume paths in docker-compose.local.yml if needed
docker compose -f docker-compose.local.yml up -d --build
Default endpoint:
http://localhost:8085/sse
Example MCP client config:
{
"mcpServers": { "memory-engine": { "url": "http://localhost:8085/sse", "transport": "sse" } } }
See docs/INSTALL.md for Docker, local Python, Claude Desktop, Cursor, and OpenClaw examples.
Local Python
python -m venv .venv
source .venv/bin/activate pip install -r requirements.txt python server.py
Configuration
Main configuration file: config.json
Important environment variables:
| Variable | Default | Purpose |
|---|---|---|
MEMORY_DB_PATH | /data/memory.db | SQLite database path |
MARKDOWN_SOURCE | /workspace/memory | Markdown directory for import |
MEMORY_HOST | 127.0.0.1 | Server bind address (secure default) |
MEMORY_PORT | 8085 | SSE port |
MEMORY_API_TOKEN | _(none)_ | Optional API token for auth (see Security) |
OPENCLAW_AGENT_DB | _(none)_ | Preferred per-agent OpenClaw SQLite DB (schema 17) |
OPENCLAW_SESSIONS_DIR | /sessions | Legacy JSONL fallback when no agent DB is configured |
SESSION_DIGEST_DIR | /data/session_digests | Optional session digest output |
For the SQLite mount, WAL/SHM handling, filtering, and security boundary, see OpenClaw transcript ingestion.
Semantic search requires Ollama reachable from the container or host. Default:
{
"ollama": { "enabled": true, "host": "http://ollama:11434", "model": "nomic-embed-text" } }
If you do not use Ollama, set ollama.enabled to false; FTS recall still works.
Memory model
Atoms have:
titlebodytype:fact,decision,event,preference,log,procedure,note, etc.domain: project or topic namespaceconfidenceweighttags- optional TTL
Bonds connect atoms with relation types:
is_a · part_of · depends_on · contradicts · refines · derived_from · detail_of · related_to
Example usage
remember(
title="Use PostgreSQL for analytics", body="SQLite is kept for local memory, PostgreSQL is used for multi-user analytics.", type="decision", domain="project:analytics", confidence=0.9, tags=["database", "architecture"] )
recall(query="what database did we choose for analytics?", limit=5)
working_set(
query="continue the analytics backend work", domain="project:analytics", limit=8, graph_depth=1 )
Security
By default, Memory Engine runs in open mode (no auth) — safe for stdio or trusted local environments.
To enable API token auth:
// config.json
{ "security": { "api_token": "your-secret-token", "allow_remote": false } }
Or via environment variable:
MEMORY_API_TOKEN=your-secret-token
When auth is enabled:
- MCP SSE requests must include
Authorization: Bearer - Web UI API endpoints require
?token=or Bearer header - Server binds to
127.0.0.1unlessallow_remote: true - Input validation (title/body size limits) and rate limiting are always active
See CHANGELOG.md for the full list of security features.
Publishing and registries
This repository is prepared for MCP discovery:
- MCP Registry name:
io.github.simoneb79/memory-engine-mcp - Registry metadata:
server.json - Docker/OCI verification label: included in
Dockerfile - Client config example:
mcp.json
See docs/PUBLISHING.md for the publication checklist.
Repository status
- Public GitHub repository: https://github.com/SimoneB79/memory-engine-mcp
- Existing listing: https://mcpmarket.com/server/memory-engine
- License: MIT
License
MIT — see LICENSE.
Made with 🧠 by SimoneB79