MemPlato
Lembre-se de tudo. Armazenado no seu dispositivo, não no deles.
Documentação
🏛️ MemPlato
Servidor de memória MCP pessoal que roda no seu celular Android.
Toda conversa com IA começa do zero. O MemPlato resolve isso — é uma camada de memória persistente para assistentes de IA, rodando inteiramente no seu próprio dispositivo. Seus dados nunca saem do seu celular.
O que é o MemPlato?
O MemPlato transforma seu celular Android em um servidor MCP (Model Context Protocol) privado. Claude, Perplexity, Cursor e outras ferramentas de IA podem se conectar a ele e lembrar de coisas entre conversas — seus projetos, preferências, anotações e contexto — sem enviar nada para um serviço em nuvem.
O celular fica no seu bolso. A memória fica no seu 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 tela
Vídeo de instalação
👆 Clique para assistir ao passo a passo completo de instalação no YouTube
Como funciona
O MemPlato executa um servidor Python FastAPI dentro do Termux no seu celular Android. Um túnel SSH reverso através do relay.memplato.com fornece aos clientes de IA um endpoint HTTPS estável para conexão. O relay é um canal simples — ele nunca armazena seus dados.
Stack de tecnologia: Flutter (app Android) · Python 3.13 · FastAPI · SQLite · ONNX Runtime · MCP SSE · autossh
Recursos
- 29 ferramentas MCP — gavetas, grafo de conhecimento, diário, túneis, busca semântica
- Busca semântica com embeddings ONNX locais (all-MiniLM-L6-v2, funciona offline)
- Grafo de conhecimento com fatos temporais (valid_from / valid_to)
- Túneis entre alas — vincule clusters de memória relacionados
- Diário do agente — entradas de diário por agente
- Seus dados ficam no seu celular — 100% das suas memórias são armazenadas localmente no seu dispositivo, nunca em servidores externos
- Watchdog de reconexão automática — o túnel reinicia automaticamente se cair
- Interface em inglês + ucraniano
Clientes de IA suportados
| Cliente | Tipo de conexão | Status |
|---|---|---|
| Claude (claude.ai) | MCP SSE | ✅ Testado |
| Claude Desktop | MCP SSE | ✅ Testado |
| Perplexity | MCP SSE | ✅ Testado |
| Cursor | MCP SSE | ✅ Testado |
| Qualquer cliente compatível com MCP | SSE ou HTTP | Deve funcionar |
Download
👉 Baixar APK mais recente (v1.0.7)
O APK tem ~280 MB porque inclui Python, todas as bibliotecas e o modelo de IA — então a configuração no seu celular não requer conexão com a internet.
Guia de configuração
O que você precisa
- Celular Android (Android 12+ recomendado, ARM64)
- ~1 GB de armazenamento livre
- Paciência ☕
Visão geral rápida
- Instale o Termux do GitHub (não da Play Store — está desatualizado)
- Instale o APK do MemPlato
- Conceda permissão nas Configurações do Android
- Siga os passos de configuração no app — o aplicativo guia você por tudo
- Toque em Instalar e Iniciar — a configuração leva de 30 a 90 minutos, mantenha a tela ligada e o carregador conectado
- Quando terminar, um ponto verde aparece e você recebe sua URL pessoal:
https://relay.memplato.com/u/YOUR_ID/mcp
- No Claude → Configurações → Conectores → Adicionar servidor MCP → cole sua URL
Uso contínuo
O Termux deve permanecer em execução em segundo plano (você o verá na barra de notificações). O script watchdog reinicia automaticamente o túnel se ele cair. Você não precisa fazer nada — apenas mantenha o Termux aberto.
⚠️ Limitação conhecida: Após reiniciar o celular, o servidor não reinicia automaticamente. Use o botão Iniciar no app para reiniciá-lo manualmente. A inicialização automática na inicialização será adicionada em uma atualização futura.
Referência das ferramentas MCP
📦 Gavetas (armazenamento de memória)
| Ferramenta | Descrição |
|---|---|
memplato_add_drawer | Salvar memória em uma ala/sala |
memplato_get_drawer | Buscar uma gaveta por ID |
memplato_update_drawer | Atualizar conteúdo ou mover para nova ala/sala |
memplato_delete_drawer | Excluir uma gaveta |
memplato_list_drawers | Listar gavetas com filtros opcionais |
memplato_search | Busca semântica + por palavras-chave |
memplato_check_duplicate | Verificar se conteúdo semelhante já existe |
memplato_get_taxonomy | Visão geral completa de ala → sala → contagem |
🧠 Grafo de Conhecimento
| Ferramenta | Descrição |
|---|---|
memplato_kg_add | Adicionar um fato: sujeito → predicado → objeto |
memplato_kg_query | Consultar relacionamentos de uma entidade |
memplato_kg_invalidate | Marcar um fato como expirado |
memplato_kg_timeline | Linha do tempo cronológica de fatos |
memplato_kg_stats | Estatísticas do grafo |
🔗 Túneis e Grafo
| Ferramenta | Descrição |
|---|---|
memplato_create_tunnel | Vincular dois locais de memória |
memplato_list_tunnels | Listar todos os túneis |
memplato_follow_tunnels | Ver a quais locais uma sala se conecta |
memplato_traverse | Percorrer o grafo de memória a partir de uma sala |
memplato_find_tunnels | Encontrar salas que fazem ponte entre duas alas |
memplato_delete_tunnel | Remover um túnel |
memplato_graph_stats | Visão geral do grafo |
📔 Diário e Sistema
| Ferramenta | Descrição |
|---|---|
memplato_diary_write | Escrever no diário por agente |
memplato_diary_read | Ler entradas recentes do diário |
memplato_status | Visão geral do status do servidor |
memplato_hook_settings | Configurar flags de comportamento |
memplato_reconnect | Forçar reconexão do banco de dados |
memplato_memories_filed_away | Verificar último checkpoint |
memplato_get_aaak_spec | Especificação do formato de memória compactada AAAK |
Testes
O MemPlato v1.0.5 foi testado com mais de 140 casos de teste cobrindo todas as 29 ferramentas, incluindo casos extremos, testes de estresse e cenários de falha.
Resumo dos resultados:
| Categoria | Testes | Aprovados |
|---|---|---|
| Gavetas (CRUD) | 20 | ✅ 18/20 |
| Busca semântica | 9 | ✅ 7/9 |
| Grafo de Conhecimento | 13 | ✅ 12/13 |
| Túneis e Grafo | 15 | ✅ 13/15 |
| Diário e Sistema | 11 | ✅ 11/11 |
| Casos extremos e estresse | 72+ | ✅ A maioria passa |
Problemas conhecidos:
O servidor é estável e lida com todos os casos extremos sem travar. Há limitações conhecidas que serão abordadas na próxima versão principal:
- Qualidade dos embeddings — O modelo ONNX leve (all-MiniLM-L6-v2) otimizado para mobile ocasionalmente produz pontuações de similaridade inesperadas para textos não relacionados. A busca funciona de forma confiável para casos de uso padrão. Será melhorado na v2 com um modelo melhor.
- Busca entre idiomas — Consultas mistas em ucraniano/inglês às vezes retornam classificação abaixo do ideal. Para melhores resultados, use o mesmo idioma do seu conteúdo armazenado.
- Proteção contra duplicatas —
add_drawernão chama automaticamentecheck_duplicate. Boa prática: chamecheck_duplicatemanualmente antes de salvar. - Limite de busca — A busca semântica é otimizada para consultas que retornam até 10 resultados. Solicitar mais pode causar erro em algumas configurações.
- Inicialização automática após reinicialização — Após reiniciar o celular, use o botão Iniciar no app para reiniciar o servidor manualmente. A inicialização automática na inicialização será adicionada em uma atualização futura.
Todos os problemas conhecidos são cosméticos ou de casos extremos. A funcionalidade principal — armazenamento de memórias, grafo de conhecimento e conectividade MCP — funciona de forma confiável.
Arquitetura
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 que não na Play Store?
O MemPlato requer o Termux, que precisa de sideload devido às restrições do Android para apps de terminal. A versão do Termux na Google Play está desatualizada e é incompatível. Esta é uma limitação conhecida da arquitetura MVP atual.
O plano: Após o financiamento, o MemPlato v2 rodará sem o Termux — o servidor será embutido diretamente no app. Sem configuração de terminal, sem passos manuais. Direto para a Google Play.
Roadmap
- MVP — app Flutter + servidor Python + MCP SSE
- Todos os pacotes incluídos no APK — sem necessidade de internet para configuração
- Túnel SSH reverso via relay
- 29 ferramentas MCP
- Localização em inglês + ucraniano
- v2 — servidor embutido no app, sem necessidade de Termux
- v2 — sincronização entre vários celulares, computadores e nuvens
- Lançamento na Google Play
- Modelo de embeddings melhor
- Iniciar/parar servidor manualmente pelo app
- Inicialização automática na inicialização do celular
Apoie este projeto
O MemPlato é construído por um fundador solo. Se você achar útil, pode apoiar o projeto:
- ⭐ Dê uma estrela neste repositório — ajuda mais do que você imagina
- 🐛 Reporte bugs — abra uma Issue
- 💬 Compartilhe feedback — quais recursos você usaria?
- 💰 Patrocine — GitHub Sponsors (em breve)
Procurando investimento pré-seed (US$ 75 mil). Rumo ao lançamento na Google Play e 10.000 usuários. Entre em contato: ceo@memplato.com ou memplato.com
Licença
AGPL-3.0 — livre para usar e modificar, mas obras derivadas devem permanecer de código aberto.
Feito com ☕ na Ucrânia 🇺🇦
