MemoryMesh
Memoria persistente de IA sin dependencias usando SQLite. Almacenamiento dual, embeddings conectables, 10 herramientas MCP.
Documentación
MemoryMesh - El SQLite de la Memoria de IA
Dale a cualquier LLM memoria persistente en 3 líneas de Python. Cero dependencias. Totalmente local.
El Problema
Las herramientas de IA comienzan cada sesión con amnesia. Tus preferencias, decisiones, errores pasados: todo desaparece. Te repites. La IA redescubre cosas que ya le contaste. Las ventanas de contexto se reinician y semanas de conocimiento acumulado se desvanecen.
MemoryMesh soluciona esto. Instálalo una vez y tu IA recuerda todo: entre sesiones, entre herramientas, entre proyectos.
¿Por qué MemoryMesh?
| Solución | Enfoque | Compensación |
|---|---|---|
| Mem0 | SaaS / servicio gestionado | Requiere cuenta en la nube, los datos salen de tu máquina, costos continuos |
| Letta / MemGPT | Framework completo de agentes | Dependencia pesada del framework, configuración compleja, arquitectura opinada |
| Zep | Servidor de memoria | Requiere PostgreSQL, Docker, infraestructura de servidor |
| MemoryMesh | Biblioteca embebible | Cero dependencias. Solo SQLite. Funciona en cualquier lugar. |
Así como SQLite revolucionó las bases de datos embebidas, MemoryMesh trae la misma filosofía a la memoria de IA: simple, confiable, embebible. Sin infraestructura. Sin dependencia. Sin sorpresas.
Inicio Rápido con MCP
Opción 1: Prueba instantánea (sin instalación)
Conéctate al servidor MemoryMesh alojado: no se necesita instalación local:
Vía Smithery:
npx -y @smithery/cli install @sparkvibe-io/memorymesh --client claude
O explora y conéctate en smithery.ai/servers/sparkvibe-io/memorymesh. Compatible con más de 20 clientes MCP, incluidos Claude Code, Cursor, Windsurf y Cline.
Opción 2: Instalación local (recomendada para producción)
Instala una vez y luego agrega la configuración a la herramienta de tu elección:
pip install memorymesh
Claude Code (~/.claude/settings.json):
{
"mcpServers": {
"memorymesh": {
"command": "memorymesh-mcp"
}
}
}
Cursor (.cursor/mcp.json):
{
"mcpServers": {
"memorymesh": {
"command": "memorymesh-mcp"
}
}
}
Gemini CLI (~/.gemini/settings.json):
{
"mcpServers": {
"memorymesh": {
"command": "memorymesh-mcp"
}
}
}
Tu IA ahora tiene memoria persistente entre sesiones. Las preferencias, decisiones y patrones sobreviven a los reinicios de la ventana de contexto.
Inicio Rápido con Python
from memorymesh import MemoryMesh
memory = MemoryMesh()
memory.remember("User prefers Python and dark mode")
results = memory.recall("What does the user prefer?")
Eso es todo. Tres líneas para darle a tu aplicación de IA memoria semántica persistente.
# Works with any LLM -- inject recalled context into your prompts
context = memory.recall("What do I know about this user?")
# Claude
response = claude_client.messages.create(
model="claude-sonnet-4-20250514",
system=f"User context: {context}",
messages=[{"role": "user", "content": "Help me design an API"}],
)
# GPT
response = openai_client.chat.completions.create(
model="gpt-4",
messages=[
{"role": "system", "content": f"User context: {context}"},
{"role": "user", "content": "Help me design an API"},
],
)
# Or Ollama, Gemini, Mistral, Llama, or literally anything else
Cómo Funciona
- Almacenar -- Después de cada interacción,
remember()los hechos clave, decisiones y patrones (no la conversación completa). - Recordar -- Al inicio de la siguiente sesión,
recall()recupera solo los recuerdos más relevantes clasificados por similitud semántica, actualidad e importancia. - Persistir -- Los recuerdos viven en SQLite en tu máquina. Sobreviven a reinicios de sesión, cambios de herramienta y reinicios de la ventana de contexto.
El valor real
- Persistencia entre sesiones -- Las decisiones tomadas el lunes siguen siendo conocidas el viernes.
- Memoria entre herramientas -- Lo que le enseñas a Claude sigue disponible en Gemini, Codex y Cursor.
- Recuperación estructurada -- Categorías, puntuación de importancia, decaimiento temporal y búsqueda semántica en lugar de reproducción de historial por fuerza bruta.
- Privacidad -- Todo local. Sin nube, sin telemetría, ningún dato sale de tu máquina.
Instalación
# Base installation (no external dependencies, uses built-in keyword matching)
pip install memorymesh
# With local embeddings (sentence-transformers, runs entirely on your machine)
pip install "memorymesh[local]"
# With Ollama embeddings (connect to a local Ollama instance)
pip install "memorymesh[ollama]"
# With OpenAI embeddings
pip install "memorymesh[openai]"
# Everything
pip install "memorymesh[all]"
Características
- API simple --
remember(),recall(),forget(). Esa es la interfaz principal. Sin código repetitivo, sin ceremonias de configuración. - Basado en SQLite -- Toda la memoria se almacena en archivos SQLite. Sin servidores de base de datos, sin infraestructura. Migraciones automáticas de esquema.
- Independiente del framework -- Funciona con cualquier LLM, cualquier framework, cualquier arquitectura. Úsalo con LangChain, LlamaIndex, llamadas API directas o tu propia configuración.
- Embeddings conectables -- Elige entre modelos locales, Ollama, OpenAI o coincidencia simple de palabras clave con cero dependencias.
- Soporte MCP -- Servidor MCP integrado para una integración perfecta con Claude Code, Cursor, Gemini CLI y otras herramientas compatibles con MCP.
- Categorías de memoria -- Categorización automática con enrutamiento por alcance. Las preferencias van a nivel global; las decisiones se quedan en el proyecto. MemoryMesh decide dónde pertenecen los recuerdos.
- Almacenamiento cifrado -- Opcionalmente cifra el texto de la memoria y los metadatos en reposo con cero dependencias externas.
- Privacidad primero -- Todos los datos permanecen en tu máquina. Sin telemetría, sin llamadas a la nube, sin recopilación de datos. Tú eres dueño de tus datos.
- Compactación automática -- Deduplicación transparente que se ejecuta automáticamente durante el uso normal. Como el auto-vacío de SQLite, nunca necesitas pensar en ello.
- Multiplataforma -- Funciona en Linux, macOS y Windows. En cualquier lugar donde Python funcione, MemoryMesh funciona.
Novedades
v4.3 -- Rendimiento (Última versión)
- Actualizaciones de acceso por lotes --
recall()agrupa N actualizaciones de tiempo de acceso en 1-2 llamadas SQL en lugar de N. - Listado ligero --
session_startysmart_syncomiten cargar blobs de embeddings, reduciendo E/S. - Corrección de actualidad --
update_access()ya no estableceupdated_at, corrigiendo un bucle de retroalimentación de actualidad.
v4.1 -- Endurecimiento
- Escaneo de contradicciones -- Límite de candidatos de 10K→500 para la detección de contradicciones (mayor ganancia de rendimiento).
- Seguridad -- CORS de mismo origen, límite de cuerpo de 1MB, expansión de lista de bloqueo SSRF, MCP assert→if/raise.
- Corrección -- Migración atómica de alcance (guardar-primero-luego-eliminar), validación de
on_conflict. - Infraestructura --
PRAGMA busy_timeout=5000, PEP 561py.typed, patrones de expresiones regulares de secretos ampliados.
v4.0 -- Memoria Invisible
- Sincronización inteligente -- Exporta los N recuerdos más relevantes a archivos
.md, clasificados por importancia y actualidad. - Pesos de relevancia configurables -- Ajusta los pesos de actualidad, importancia y similitud mediante variables de entorno o parámetros del constructor.
- Completitud de EncryptedStore --
EncryptedMemoryStoreahora admitesearch_filteredyupdate_fields, igualando la interfaz completa deMemoryStore. - Endurecimiento de seguridad -- Corrección de inyección SQL en
search_filtered(lista blanca estricta para claves de metadatos) y permisos de archivo explícitos en los archivos de base de datos.
Hoja de Ruta
v4.3.0 es la última versión. Disponible en PyPI.
v5.0 -- Rendimiento y Escala es lo siguiente. Indexación ANN sqlite-vec, búsqueda de palabras clave FTS5, operaciones por lotes y similitud de coseno acelerada con NumPy para almacenes de memoria de más de 5K.
Consulta la hoja de ruta completa para obtener detalles, contexto estratégico e hitos completados.
Documentación
Documentación completa: sparkvibe-io.github.io/memorymesh
| Guía | Descripción |
|---|---|
| Configuración | Proveedores de embeddings, configuración de Ollama, todas las opciones del constructor |
| Servidor MCP | Configuración para Claude Code, Cursor, Windsurf + enseñar a tu IA a usar memoria |
| Sincronización Multi-Herramienta | Sincroniza recuerdos entre Claude, Codex y Gemini CLI |
| Referencia CLI | Comandos de terminal para inspeccionar y gestionar recuerdos |
| Referencia de API | API completa de Python con todos los métodos y parámetros |
| Arquitectura | Diseño del sistema, patrón de doble almacenamiento y migraciones de esquema |
| Preguntas Frecuentes | Preguntas comunes respondidas |
| Benchmarks | Cifras de rendimiento y cómo ejecutar benchmarks |
Disponible En
| Plataforma | Enlace |
|---|---|
| PyPI | pypi.org/project/memorymesh |
| Smithery | smithery.ai/servers/sparkvibe-io/memorymesh |
| GitHub | github.com/sparkvibe-io/memorymesh |
Contribuciones
Damos la bienvenida a contribuciones de todos. Consulta CONTRIBUTING.md para conocer las pautas sobre cómo comenzar.
Licencia
Licencia MIT. Consulta LICENSE para ver el texto completo.
Gratis. Para Siempre. Para Todos.
MemoryMesh es parte de la iniciativa de IA de código abierto SparkVibe. Creemos que las herramientas fundamentales de IA deberían ser gratuitas, abiertas y accesibles para todos, no encerradas detrás de muros de pago, suscripciones en la nube o plataformas propietarias.
Nuestra misión es reducir el costo y la complejidad de construir aplicaciones de IA, para que los desarrolladores de todo el mundo, ya sea en una startup, un laboratorio de investigación, una organización sin fines de lucro o aprendiendo por su cuenta, puedan construir sistemas inteligentes sin barreras.
Si la IA va a dar forma al futuro, las herramientas que la impulsan deberían pertenecernos a todos.