MemPlato MCP Server
Remember everything. Stored on your device, not theirs.
Documentation
ποΈ MemPlato
Personal MCP memory server that runs on your Android phone.
Every AI conversation starts from zero. MemPlato fixes that β it's a persistent memory layer for AI assistants, running entirely on your own device. Your data never leaves your phone.
What is MemPlato?
MemPlato turns your Android phone into a private MCP (Model Context Protocol) server. Claude, Perplexity, Cursor, and other AI tools can connect to it and remember things across conversations β your projects, preferences, notes, and context β without sending any of it to a cloud service.
The phone stays in your pocket. The memory stays on your device.
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
Screenshots
Installation Video
π Click to watch the full installation walkthrough on YouTube
How it works
MemPlato runs a Python FastAPI server inside Termux on your Android phone. A reverse SSH tunnel through relay.memplato.com gives AI clients a stable HTTPS endpoint to connect to. The relay is a dumb pipe β it never stores your data.
Tech stack: Flutter (Android app) Β· Python 3.13 Β· FastAPI Β· SQLite Β· ONNX Runtime Β· MCP SSE Β· autossh
Features
- 29 MCP tools β drawers, knowledge graph, diary, tunnels, semantic search
- Semantic search with local ONNX embeddings (all-MiniLM-L6-v2, runs offline)
- Knowledge graph with temporal facts (valid_from / valid_to)
- Cross-wing tunnels β link related memory clusters
- Agent diary β per-agent journal entries
- Your data stays on your phone β 100% of your memories are stored locally on your device, never on external servers
- Auto-reconnect watchdog β tunnel restarts automatically if it drops
- English + Ukrainian UI
Supported AI clients
| Client | Connection type | Status |
|---|---|---|
| Claude (claude.ai) | MCP SSE | β Tested |
| Claude Desktop | MCP SSE | β Tested |
| Perplexity | MCP SSE | β Tested |
| Cursor | MCP SSE | β Tested |
| Any MCP-compatible client | SSE or HTTP | Should work |
Download
π Download latest APK (v1.0.7)
The APK is ~280 MB because it includes Python, all libraries, and the AI model β so setup on your phone requires no internet connection.
Setup guide
What you need
- Android phone (Android 12+ recommended, ARM64)
- ~1 GB free storage
- Patience β
Quick overview
- Install Termux from GitHub (not from Play Store β it's outdated)
- Install the MemPlato APK
- Grant permission in Android Settings
- Follow the in-app setup steps β the app guides you through everything
- Tap Install and Start β setup takes 30β90 minutes, keep screen on and charger plugged in
- When done, a green dot appears and you get your personal URL:
https://relay.memplato.com/u/YOUR_ID/mcp
- In Claude β Settings β Connectors β Add MCP server β paste your URL
Ongoing use
Termux must stay running in the background (you'll see it in your notification bar). The watchdog script automatically restarts the tunnel if it drops. You don't need to do anything β just keep Termux open.
β οΈ Known limitation: After rebooting your phone, the server does not restart automatically. Use the Start button in the app to restart it manually. Auto-start on boot will be added in a future update.
MCP Tools reference
π¦ Drawers (memory storage)
| Tool | Description |
|---|---|
memplato_add_drawer | Save memory into a wing/room |
memplato_get_drawer | Fetch a drawer by ID |
memplato_update_drawer | Update content or move to new wing/room |
memplato_delete_drawer | Delete a drawer |
memplato_list_drawers | List drawers with optional filters |
memplato_search | Semantic + keyword search |
memplato_check_duplicate | Check if similar content already exists |
memplato_get_taxonomy | Full wing β room β count overview |
π§ Knowledge Graph
| Tool | Description |
|---|---|
memplato_kg_add | Add a fact: subject β predicate β object |
memplato_kg_query | Query relationships for an entity |
memplato_kg_invalidate | Mark a fact as expired |
memplato_kg_timeline | Chronological timeline of facts |
memplato_kg_stats | Graph statistics |
π Tunnels & Graph
| Tool | Description |
|---|---|
memplato_create_tunnel | Link two memory locations |
memplato_list_tunnels | List all tunnels |
memplato_follow_tunnels | See what a room connects to |
memplato_traverse | Walk the memory graph from a room |
memplato_find_tunnels | Find rooms bridging two wings |
memplato_delete_tunnel | Remove a tunnel |
memplato_graph_stats | Graph overview |
π Diary & System
| Tool | Description |
|---|---|
memplato_diary_write | Write to per-agent diary |
memplato_diary_read | Read recent diary entries |
memplato_status | Server status overview |
memplato_hook_settings | Configure behavior flags |
memplato_reconnect | Force DB reconnect |
memplato_memories_filed_away | Check last checkpoint |
memplato_get_aaak_spec | AAAK compressed memory format spec |
Testing
MemPlato v1.0.5 was tested with 140+ test cases covering all 29 tools including edge cases, stress tests, and failure scenarios.
Results summary:
| Category | Tests | Pass |
|---|---|---|
| Drawers (CRUD) | 20 | β 18/20 |
| Semantic search | 9 | β 7/9 |
| Knowledge Graph | 13 | β 12/13 |
| Tunnels & Graph | 15 | β 13/15 |
| Diary & System | 11 | β 11/11 |
| Edge cases & stress | 72+ | β Most pass |
Known issues:
The server is stable and handles all edge cases without crashing. There are known limitations that will be addressed in the next major version:
- Embedding quality β The lightweight ONNX model (all-MiniLM-L6-v2) optimized for mobile occasionally produces unexpected similarity scores for unrelated texts. Search works reliably for standard use cases. Will be improved in v2 with a better model.
- Cross-lingual search β Ukrainian/English mixed queries sometimes return suboptimal ranking. For best results, use the same language as your stored content.
- Duplicate protection β
add_drawerdoes not automatically callcheck_duplicate. Best practice: callcheck_duplicatemanually before saving. - Search limit β Semantic search is optimized for queries returning up to 10 results. Requesting more may cause an error in some configurations.
- Auto-start after reboot β Auto-start after reboot β After rebooting your phone, use the Start button in the app to restart the server manually. Auto-start on boot will be added in a future update.
All known issues are cosmetic or edge-case. The core functionality β storing memories, knowledge graph, and MCP connectivity β works reliably.
Architecture
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
Why not Play Store?
MemPlato requires Termux, which needs sideloading due to Android restrictions on terminal apps. The Google Play version of Termux is outdated and incompatible. This is a known limitation of the current MVP architecture.
The plan: After funding, MemPlato v2 will run without Termux β the server will be embedded directly into the app. No terminal setup, no manual steps. Straight to Google Play.
Roadmap
- MVP β Flutter app + Python server + MCP SSE
- All packages bundled in APK β no internet needed for setup
- Reverse SSH tunnel via relay
- 29 MCP tools
- English + Ukrainian localization
- v2 β server embedded in app, no Termux needed
- v2 β sync across multiple phones, computers and clouds
- Google Play release
- Better embedding model
- Manual server start/stop from the app
- Auto-start on phone boot
Support this project
MemPlato is built by a solo founder. If you find it useful, you can support the project:
- β Star this repo β it helps more than you think
- π Report bugs β open an Issue
- π¬ Share feedback β what features would you use?
- π° Sponsor β GitHub Sponsors (coming soon)
Looking for pre-seed investment ($75K). Building toward Google Play launch and 10,000 users. Reach out: [email protected] or memplato.com
License
AGPL-3.0 β free to use and modify, but derivative works must remain open source.
Made with β in Ukraine πΊπ¦
