MemPlato について
MemPlatoはTermux上で動作する、Androidユーザー向けの個人用MCPメモリーサーバーです。データを端末内に保存し、接続したAIクライアントに検索、ナレッジグラフ、日記、記憶領域間のリンクを提供します。
主な機能
- 0129種類のMCPメモリーツール
- 02オフラインのセマンティック検索
- 03時間情報付きナレッジグラフ
- 04記憶領域間のリンク
- 05エージェント別の日記
活用シーン
- 01AIとの会話をまたいだ文脈の保持
- 02端末内に保存したメモの検索
- 03時間経過に伴う事実の追跡
- 04関連する記憶クラスターの連結
MCP 対応
MemPlatoはSSEまたはHTTP経由で、MCPクライアントに記憶の保存・検索、ナレッジグラフ、日記、システムツールを提供します。AIクライアントはリバースSSHトンネルを通じて、Android上のサーバーに接続します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
🏛️ MemPlato
Android スマートフォン上で動作する、個人用 MCP メモリーサーバーです。
AI との会話は毎回、何もない状態から始まります。MemPlato はその問題を解決します。AI アシスタント向けの永続的なメモリーレイヤーとして、お使いのデバイス上だけで動作します。データがスマートフォンの外に出ることはありません。
MemPlato とは?
MemPlato は、Android スマートフォンをプライベートな MCP(Model Context Protocol)サーバーに変えます。Claude、Perplexity、Cursor などの AI ツールが接続し、プロジェクト、好み、メモ、コンテキストなどを会話をまたいで記憶できます。それらがクラウドサービスに送信されることはありません。
スマートフォンはポケットの中に。記憶はデバイスの中に。
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
スクリーンショット
インストール動画
👆 クリックして YouTube でインストール手順の全編をご覧ください
仕組み
MemPlato は、Android スマートフォンの Termux 内で Python FastAPI サーバーを実行します。relay.memplato.com を経由するリバース SSH トンネルにより、AI クライアントが接続できる安定した HTTPS エンドポイントを提供します。リレーは単なる中継経路であり、データを保存することはありません。
技術スタック: Flutter(Android アプリ) · Python 3.13 · FastAPI · SQLite · ONNX Runtime · MCP SSE · autossh
機能
- 29 個の MCP ツール — 引き出し、ナレッジグラフ、日記、トンネル、セマンティック検索
- ローカルの ONNX 埋め込みを使ったセマンティック検索(all-MiniLM-L6-v2、オフラインで動作)
- ナレッジグラフと時間的事実(valid_from / valid_to)
- ウィング間トンネル — 関連するメモリークラスターをリンク
- エージェント日記 — エージェントごとの日記エントリー
- データはスマートフォン内に保存 — すべての記憶はデバイス上にローカル保存され、外部サーバーに送信されることはありません
- 自動再接続ウォッチドッグ — トンネルが切断されると自動的に再起動
- 英語とウクライナ語の UI
対応 AI クライアント
| クライアント | 接続タイプ | ステータス |
|---|---|---|
| Claude (claude.ai) | MCP SSE | ✅ テスト済み |
| Claude Desktop | MCP SSE | ✅ テスト済み |
| Perplexity | MCP SSE | ✅ テスト済み |
| Cursor | MCP SSE | ✅ テスト済み |
| MCP 対応クライアント全般 | SSE または HTTP | 動作する見込み |
ダウンロード
APK のサイズは約 280 MB です。Python、すべてのライブラリ、AI モデルが含まれているため、スマートフォンへのセットアップにインターネット接続は必要ありません。
セットアップガイド
必要なもの
- Android スマートフォン(Android 12 以降を推奨、ARM64)
- 約 1 GB の空きストレージ
- 忍耐力 ☕
クイック概要
- Termux を GitHub からインストールします(Play ストアからではありません。古いバージョンのためです)。
- MemPlato APKをインストールします。
- Android の設定で権限を許可します。
- アプリ内のセットアップ手順に従います。アプリがすべて案内します。
- Install and Start をタップします。セットアップには 30~90 分かかります。画面をオンにし、充電器を接続したままにしてください。
- 完了すると緑色の点が表示され、専用の URL が取得できます。
https://relay.memplato.com/u/YOUR_ID/mcp
- Claude → Settings → Connectors → Add MCP server の順に進み、URL を貼り付けます。
継続して使用する
Termux はバックグラウンドで起動したままにする必要があります(通知バーに表示されます)。ウォッチドッグスクリプトが、トンネルが切断された場合に自動で再起動します。何もする必要はありません。Termux を開いたままにしてください。
⚠️ **既知の制限事項:**スマートフォンを再起動した後、サーバーは自動的に再起動しません。アプリの Start ボタンを使って、手動で再起動してください。起動時の自動起動機能は今後のアップデートで追加される予定です。
MCP ツールのリファレンス
📦 ドロワー(メモリストレージ)
| ツール | 説明 |
|---|---|
memplato_add_drawer | メモリをウィング/ルームに保存します |
memplato_get_drawer | ID を指定してドロワーを取得します |
memplato_update_drawer | 内容を更新するか、新しいウィング/ルームに移動します |
memplato_delete_drawer | ドロワーを削除します |
memplato_list_drawers | オプションのフィルターを指定してドロワーを一覧表示します |
memplato_search | セマンティック検索とキーワード検索を行います |
memplato_check_duplicate | 類似した内容がすでに存在するか確認します |
memplato_get_taxonomy | ウィング → ルーム → 件数の全体像を表示します |
🧠 ナレッジグラフ
| ツール | 説明 |
|---|---|
memplato_kg_add | 事実を追加します:主語 → 述語 → 目的語 |
memplato_kg_query | エンティティの関係を問い合わせます |
memplato_kg_invalidate | 事実を期限切れとしてマークします |
memplato_kg_timeline | 事実を時系列で表示します |
memplato_kg_stats | グラフの統計情報を表示します |
🔗 トンネルとグラフ
| ツール | 説明 |
|---|---|
memplato_create_tunnel | 2 つのメモリ位置をリンクします |
memplato_list_tunnels | すべてのトンネルを一覧表示します |
memplato_follow_tunnels | ルームがどの場所につながっているかを表示します |
memplato_traverse | ルームからメモリグラフをたどります |
memplato_find_tunnels | 2 つのウィングをつなぐルームを見つけます |
memplato_delete_tunnel | トンネルを削除します |
memplato_graph_stats | グラフの概要を表示します |
📔 日記とシステム
| ツール | 説明 |
|---|---|
memplato_diary_write | エージェントごとの日記に書き込みます |
memplato_diary_read | 最近の日記のエントリーを読み取ります |
memplato_status | サーバーのステータス概要を表示します |
memplato_hook_settings | 動作フラグを設定します |
memplato_reconnect | DB への再接続を強制します |
memplato_memories_filed_away | 最後のチェックポイントを確認します |
memplato_get_aaak_spec | AAAK 圧縮メモリ形式の仕様を取得します |
テスト
MemPlato v1.0.5 は、エッジケース、ストレステスト、障害シナリオを含む、29 個すべてのツールを対象とした 140 件以上のテストケースでテストされました。
結果の概要:
| カテゴリ | テスト数 | 合格 |
|---|---|---|
| ドロワー(CRUD) | 20 | ✅ 18/20 |
| セマンティック検索 | 9 | ✅ 7/9 |
| ナレッジグラフ | 13 | ✅ 12/13 |
| トンネルとグラフ | 15 | ✅ 13/15 |
| 日記とシステム | 11 | ✅ 11/11 |
| エッジケースとストレス | 72+ | ✅ ほとんど合格 |
既知の問題:
サーバーは安定しており、クラッシュすることなくすべてのエッジケースに対処します。次のメジャーバージョンで対応予定の既知の制限事項があります。
- 埋め込み品質 — モバイル向けに最適化された軽量な ONNX モデル(all-MiniLM-L6-v2)は、無関係なテキストに対して予期しない類似度スコアを返すことがあります。標準的なユースケースでは検索は安定して動作します。v2 では、より優れたモデルを採用して改善する予定です。
- 多言語検索 — ウクライナ語と英語が混在するクエリでは、ランキングが最適でないことがあります。最良の結果を得るには、保存したコンテンツと同じ言語を使用してください。
- 重複防止 —
add_drawerはcheck_duplicateを自動的に呼び出しません。保存する前にcheck_duplicateを手動で呼び出すことを推奨します。 - 検索件数の上限 — セマンティック検索は、最大 10 件の結果を返すクエリ向けに最適化されています。それ以上をリクエストすると、一部の構成でエラーが発生することがあります。
- 再起動後の自動起動 — 再起動後の自動起動 — スマートフォンを再起動した後は、アプリの Start ボタンを使ってサーバーを手動で再起動してください。起動時の自動起動は今後のアップデートで追加予定です。
既知の問題はすべて、外観上の問題かエッジケースです。メモリの保存、ナレッジグラフ、MCP 接続といったコア機能は安定して動作します。
アーキテクチャ
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
Play ストアを使わない理由
MemPlato には Termux が必要ですが、Android のターミナルアプリに関する制限により、Termux はサイドローディングでインストールする必要があります。Google Play 版の Termux は古く、互換性がありません。これは現在の MVP アーキテクチャにおける既知の制限です。
今後の計画: 資金調達後、MemPlato v2 は Termux なしで動作するようになります。サーバーをアプリに直接組み込みます。ターミナルの設定も手動の手順も不要です。そのまま Google Play へ公開します。
ロードマップ
- MVP — Flutter アプリ + Python サーバー + MCP SSE
- すべてのパッケージを APK にバンドル — セットアップにインターネット接続は不要
- リレー経由のリバース SSH トンネル
- 29 個の MCP ツール
- 英語 + ウクライナ語のローカライズ
- v2 — サーバーをアプリに組み込み、Termux を不要に
- v2 — 複数のスマートフォン、コンピューター、クラウド間で同期
- Google Play で公開
- より優れた埋め込みモデル
- アプリからサーバーを手動で起動/停止
- スマートフォンの起動時に自動起動
このプロジェクトを支援する
MemPlato は一人の創業者が開発しています。役に立ったと思われたら、プロジェクトをご支援いただけます。
- ⭐ このリポジトリにスターを付ける — 思っている以上に大きな助けになります
- 🐛 バグを報告する — Issue を作成してください
- 💬 フィードバックを共有する — どんな機能を使いたいですか?
- 💰 スポンサーになる — GitHub Sponsors (近日公開)
シード前の投資($75K)を募集中です。 Google Play での公開と 10,000 ユーザーの獲得を目指しています。お問い合わせはこちら:[email protected] または memplato.com
ライセンス
AGPL-3.0 — 自由に使用、改変できますが、派生作品もオープンソースとして公開する必要があります。
ウクライナ 🇺🇦で ☕ とともに開発
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。
