MemPlato
Recuerda todo. Almacenado en tu dispositivo, no en el de ellos.
Documentación
🏛️ MemPlato
Servidor de memoria MCP personal que se ejecuta en tu teléfono Android.
Cada conversación de IA comienza desde cero. MemPlato lo soluciona: es una capa de memoria persistente para asistentes de IA, que se ejecuta completamente en tu propio dispositivo. Tus datos nunca salen de tu teléfono.
¿Qué es MemPlato?
MemPlato convierte tu teléfono Android en un servidor MCP (Model Context Protocol) privado. Claude, Perplexity, Cursor y otras herramientas de IA pueden conectarse a él y recordar cosas entre conversaciones — tus proyectos, preferencias, notas y contexto — sin enviar nada a un servicio en la nube.
El teléfono permanece en tu bolsillo. La memoria permanece en tu dispositivo.
Your Phone (Termux) Relay Server AI Assistant
───────────────── ───────────── ──────────────
memplato_server.py ←──SSH── relay.memplato.com ←──MCP── Claude
port 7333 (just a bridge)
SQLite + ONNX your data never stored
Capturas de pantalla
Video de instalación
👆 Haz clic para ver el tutorial completo de instalación en YouTube
Cómo funciona
MemPlato ejecuta un servidor Python FastAPI dentro de Termux en tu teléfono Android. Un túnel SSH inverso a través de relay.memplato.com proporciona a los clientes de IA un endpoint HTTPS estable para conectarse. El relay es una tubería tonta: nunca almacena tus datos.
Stack tecnológico: Flutter (aplicación Android) · Python 3.13 · FastAPI · SQLite · ONNX Runtime · MCP SSE · autossh
Características
- 29 herramientas MCP — cajones, grafo de conocimiento, diario, túneles, búsqueda semántica
- Búsqueda semántica con embeddings ONNX locales (all-MiniLM-L6-v2, funciona sin conexión)
- Grafo de conocimiento con hechos temporales (valid_from / valid_to)
- Túneles entre alas — enlaza clústeres de memoria relacionados
- Diario de agente — entradas de diario por agente
- Tus datos permanecen en tu teléfono — el 100% de tus recuerdos se almacenan localmente en tu dispositivo, nunca en servidores externos
- Perro guardián de reconexión automática — el túnel se reinicia automáticamente si se cae
- Interfaz en inglés + ucraniano
Clientes de IA compatibles
| Cliente | Tipo de conexión | Estado |
|---|---|---|
| Claude (claude.ai) | MCP SSE | ✅ Probado |
| Claude Desktop | MCP SSE | ✅ Probado |
| Perplexity | MCP SSE | ✅ Probado |
| Cursor | MCP SSE | ✅ Probado |
| Cualquier cliente compatible con MCP | SSE o HTTP | Debería funcionar |
Descarga
👉 Descargar último APK (v1.0.7)
El APK pesa ~280 MB porque incluye Python, todas las librerías y el modelo de IA — por lo que la configuración en tu teléfono no requiere conexión a internet.
Guía de configuración
Lo que necesitas
- Teléfono Android (Android 12+ recomendado, ARM64)
- ~1 GB de almacenamiento libre
- Paciencia ☕
Resumen rápido
- Instala Termux desde GitHub (no desde Play Store — está desactualizado)
- Instala el APK de MemPlato
- Concede permiso en los Ajustes de Android
- Sigue los pasos de configuración en la aplicación — la app te guía en todo
- Toca Instalar y comenzar — la configuración tarda 30–90 minutos, mantén la pantalla encendida y el cargador conectado
- Cuando termine, aparece un punto verde y obtienes tu URL personal:
https://relay.memplato.com/u/YOUR_ID/mcp
- En Claude → Ajustes → Conectores → Añadir servidor MCP → pega tu URL
Uso continuo
Termux debe permanecer ejecutándose en segundo plano (lo verás en tu barra de notificaciones). El script guardián reinicia automáticamente el túnel si se cae. No necesitas hacer nada — solo mantén Termux abierto.
⚠️ Limitación conocida: Después de reiniciar tu teléfono, el servidor no se reinicia automáticamente. Usa el botón Iniciar en la aplicación para reiniciarlo manualmente. El auto-inicio al arrancar se añadirá en una futura actualización.
Referencia de herramientas MCP
📦 Cajones (almacenamiento de memoria)
| Herramienta | Descripción |
|---|---|
memplato_add_drawer | Guardar memoria en un ala/habitación |
memplato_get_drawer | Obtener un cajón por ID |
memplato_update_drawer | Actualizar contenido o mover a un nuevo ala/habitación |
memplato_delete_drawer | Eliminar un cajón |
memplato_list_drawers | Listar cajones con filtros opcionales |
memplato_search | Búsqueda semántica + por palabras clave |
memplato_check_duplicate | Comprobar si ya existe contenido similar |
memplato_get_taxonomy | Resumen completo de ala → habitación → recuento |
🧠 Grafo de conocimiento
| Herramienta | Descripción |
|---|---|
memplato_kg_add | Añadir un hecho: sujeto → predicado → objeto |
memplato_kg_query | Consultar relaciones de una entidad |
memplato_kg_invalidate | Marcar un hecho como expirado |
memplato_kg_timeline | Línea temporal cronológica de hechos |
memplato_kg_stats | Estadísticas del grafo |
🔗 Túneles y grafo
| Herramienta | Descripción |
|---|---|
memplato_create_tunnel | Enlazar dos ubicaciones de memoria |
memplato_list_tunnels | Listar todos los túneles |
memplato_follow_tunnels | Ver a qué se conecta una habitación |
memplato_traverse | Recorrer el grafo de memoria desde una habitación |
memplato_find_tunnels | Encontrar habitaciones que conectan dos alas |
memplato_delete_tunnel | Eliminar un túnel |
memplato_graph_stats | Resumen del grafo |
📔 Diario y sistema
| Herramienta | Descripción |
|---|---|
memplato_diary_write | Escribir en el diario por agente |
memplato_diary_read | Leer entradas recientes del diario |
memplato_status | Resumen del estado del servidor |
memplato_hook_settings | Configurar banderas de comportamiento |
memplato_reconnect | Forzar reconexión de la base de datos |
memplato_memories_filed_away | Comprobar el último checkpoint |
memplato_get_aaak_spec | Especificación del formato de memoria comprimida AAAK |
Pruebas
MemPlato v1.0.5 fue probado con más de 140 casos de prueba que cubren las 29 herramientas, incluyendo casos límite, pruebas de estrés y escenarios de fallo.
Resumen de resultados:
| Categoría | Pruebas | Aprobadas |
|---|---|---|
| Cajones (CRUD) | 20 | ✅ 18/20 |
| Búsqueda semántica | 9 | ✅ 7/9 |
| Grafo de conocimiento | 13 | ✅ 12/13 |
| Túneles y grafo | 15 | ✅ 13/15 |
| Diario y sistema | 11 | ✅ 11/11 |
| Casos límite y estrés | 72+ | ✅ La mayoría aprueba |
Problemas conocidos:
El servidor es estable y maneja todos los casos límite sin fallar. Hay limitaciones conocidas que se abordarán en la próxima versión principal:
- Calidad de embeddings — El modelo ONNX ligero (all-MiniLM-L6-v2) optimizado para móvil ocasionalmente produce puntuaciones de similitud inesperadas para textos no relacionados. La búsqueda funciona de manera fiable para casos de uso estándar. Se mejorará en v2 con un modelo mejor.
- Búsqueda entre idiomas — Las consultas mixtas ucraniano/inglés a veces devuelven un ranking subóptimo. Para mejores resultados, usa el mismo idioma que tu contenido almacenado.
- Protección contra duplicados —
add_drawerno llama automáticamente acheck_duplicate. Buena práctica: llama acheck_duplicatemanualmente antes de guardar. - Límite de búsqueda — La búsqueda semántica está optimizada para consultas que devuelven hasta 10 resultados. Solicitar más puede causar un error en algunas configuraciones.
- Auto-inicio después de reinicio — Auto-inicio después de reinicio — Después de reiniciar tu teléfono, usa el botón Iniciar en la aplicación para reiniciar el servidor manualmente. El auto-inicio al arrancar se añadirá en una futura actualización.
Todos los problemas conocidos son cosméticos o de casos límite. La funcionalidad principal — almacenar recuerdos, grafo de conocimiento y conectividad MCP — funciona de manera fiable.
Arquitectura
Android Phone
├── MemPlato.apk (Flutter)
│ ├── Manages setup flow
│ ├── Copies all files to Termux
│ └── Shows server status
│
└── Termux (Linux environment)
├── memplato_server.py (FastAPI + MCP)
│ ├── /sse ← MCP SSE endpoint
│ ├── /mcp ← MCP HTTP endpoint
│ └── /health
├── palace.db (SQLite)
├── models/onnx/ (384-dim embeddings)
├── autossh (reverse tunnel)
└── tunnel_watchdog.sh (auto-restart)
relay.memplato.com (Vultr VPS)
└── nginx + relay.py
└── Bridges AI clients to your phone
└── No data stored
¿Por qué no en Play Store?
MemPlato requiere Termux, que necesita instalación lateral debido a las restricciones de Android para aplicaciones de terminal. La versión de Google Play de Termux está desactualizada e incompatible. Esta es una limitación conocida de la arquitectura MVP actual.
El plan: Después de la financiación, MemPlato v2 funcionará sin Termux — el servidor se integrará directamente en la aplicación. Sin configuración de terminal, sin pasos manuales. Directo a Google Play.
Hoja de ruta
- MVP — aplicación Flutter + servidor Python + MCP SSE
- Todos los paquetes incluidos en el APK — no se necesita internet para la configuración
- Túnel SSH inverso a través de relay
- 29 herramientas MCP
- Localización en inglés + ucraniano
- v2 — servidor integrado en la aplicación, sin necesidad de Termux
- v2 — sincronización entre múltiples teléfonos, computadoras y nubes
- Lanzamiento en Google Play
- Mejor modelo de embeddings
- Inicio/parada manual del servidor desde la aplicación
- Auto-inicio al arrancar el teléfono
Apoya este proyecto
MemPlato es construido por un fundador en solitario. Si te resulta útil, puedes apoyar el proyecto:
- ⭐ Da una estrella a este repositorio — ayuda más de lo que crees
- 🐛 Reporta errores — abre un Issue
- 💬 Comparte comentarios — ¿qué funciones usarías?
- 💰 Patrocina — GitHub Sponsors (próximamente)
Buscando inversión pre-semilla ($75K). Avanzando hacia el lanzamiento en Google Play y 10,000 usuarios. Contacta: ceo@memplato.com o memplato.com
Licencia
AGPL-3.0 — libre de usar y modificar, pero las obras derivadas deben permanecer de código abierto.
Hecho con ☕ en Ucrania 🇺🇦
