Memanto MCP について
Memanto MCP は、Memanto の記憶機能をツールとして任意の MCP クライアントに公開する MCP サーバーです。セッションをまたいで意味ベースの記憶を保持でき、同じ名前空間を共有するエージェント同士で記憶を参照できます。長期稼働のアシスタントや複数クライアントの構成を開発する利用者向けです。
主な機能
- 01書き込みと検索を行う7つの既定の記憶ツール
- 02日時を指定した時点の記憶検索
- 03前回確認以降の変更の差分検索
- 04保存された記憶に基づく LLM の回答生成
- 05Agent 管理用のオプションのツール
- 06stdio、SSE、streamable-http のトランスポートに対応
活用シーン
- 01Claude Desktop の複数チャットにまたがるユーザー設定の保持
- 02複数のエディターで1つのエージェントの長期記憶を共有
- 03文書から抽出した事実を一括登録して後から検索
MCP 対応
本パッケージは MCP サーバーとして動作し、記憶関連のツールを MCP クライアントに提供します。API キーで Moorcheh バックエンドに接続し、エージェントの作成とセッションを自動的に管理します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Memanto MCP Server
mcp-name: io.github.moorcheh-ai/memanto
MCP 互換エージェント向けの永続的なセマンティックメモリです。
このパッケージは、Memanto のメモリ機能である
remember、recall、answer などを
Model Context Protocol(MCP) のツールとして提供します。これにより、あらゆる
MCP クライアント(Claude Desktop、Cursor、Windsurf、Cline、Continue、Goose、
カスタムエージェントなど)から、設定を1行追加するだけで長期メモリを利用できます。
Moorcheh API キー1つで、同じ名前空間を共有するすべてのエージェントが型付きセマンティックメモリを利用できます。検索は90ミリ秒未満で、競合を検出し、取り込み時の遅延はありません。
インストール
pip install memanto-mcp
Python 3.10以降、memanto>=0.2.13、mcp>=1.2,<2、および
Moorcheh API キーが必要です
(無料プラン:月間100K操作)。
クイックスタート(Claude Desktop)
- コンソールから Moorcheh API キーを取得します。
claude_desktop_config.jsonを編集します(設定 → 開発者 → 設定を編集)。
{
"mcpServers": {
"memanto": {
"command": "memanto-mcp",
"env": {
"MOORCHEH_API_KEY": "mch_xxxxxxxxxxxxxxxxxx",
"MEMANTO_DEFAULT_AGENT_ID": "my-assistant"
}
}
}
}
- Claude Desktop を再起動します。「簡潔な回答が好みだと覚えておいて」と伝え、翌日、新しいチャットで「私の好みは何?」と聞いてみましょう。
最初の呼び出し時に my-assistant エージェントと名前空間が自動作成されます。その後の呼び出しでは、同じ永続メモリが再利用されます。
クイックスタート(Cursor / Windsurf / Cline / Continue / Goose)
多くのクライアントでは、 標準的な MCP 形式の設定ファイルを使用します。 次の JSON スニペットは、ほぼそのまま使えます。
{
"mcpServers": {
"memanto": {
"command": "memanto-mcp",
"env": {
"MOORCHEH_API_KEY": "mch_xxxxxxxxxxxxxxxxxx",
"MEMANTO_DEFAULT_AGENT_ID": "cursor-workspace"
}
}
}
}
| クライアント | 設定パス |
|---|---|
| Claude Desktop | ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) / %APPDATA%\Claude\claude_desktop_config.json (Windows) |
| Cursor | ~/.cursor/mcp.json(またはプロジェクトごとの .cursor/mcp.json) |
| Windsurf | ~/.codeium/windsurf/mcp_config.json |
| Cline (VS Code) | ~/.config/Code/User/globalStorage/cline.cline/settings/cline_mcp_settings.json |
| Continue | ~/.continue/config.json → experimental.modelContextProtocolServers |
| Goose | ~/.config/goose/config.yaml |
利用可能なツール
このサーバーは、デフォルトで7つのメモリツールを登録します。MEMANTO_EXPOSE_ADMIN=true を設定すると、4つのエージェント管理ツールも公開されます。
メモリツール(常時有効)
| ツール | エージェントが呼び出すタイミング |
|---|---|
remember | 新しい事実、好み、決定、目標、指示を1件保存するとき。 |
batch_remember | 最大100件のメモリを1回の呼び出しで保存するとき(例:ドキュメントから抽出した内容)。 |
recall | セマンティック検索。安定した情報をユーザーに繰り返し尋ねる前に、必ずここで確認します。 |
recall_recent | 「今決めたことは何?」を確認するとき。新しい順に取得し、クエリは不要です。 |
recall_as_of | 特定時点の情報を取得するとき。「2025-11-01時点で何を知っていた?」など。 |
recall_changed_since | 差分を確認するとき。「前回確認してから新しい情報はある?」など。 |
answer | RAG:エージェントのメモリを根拠として統合した LLM の回答。 |
エージェント管理ツール(オプトイン)
MEMANTO_EXPOSE_ADMIN=true の場合に有効になります。
| ツール | 目的 |
|---|---|
create_agent | 新しいメモリ名前空間を作成します。 |
list_agents | API キーから参照できるすべてのエージェントを一覧表示します。 |
get_agent | エージェントのメタデータを参照します。 |
delete_agent | エージェントのローカルメタデータを削除します。 |
remember / batch_remember で指定できるメモリの種類:
fact、preference、goal、decision、artifact、learning、event、
instruction、relationship、context、observation、commitment、
error。
情報源の値:explicit_statement、inferred、corrected、
validated、observed、imported。
ソースの帰属
source はメモを誰が書いたかを示すため、作成者ごとに想起の帰属を明確にし、絞り込めます。値は自由に指定でき、user、agent、tool、system、または cursor、codex、claude_code、mem0 など特定の作成者を指定できます。#source:<value> を実用的なフィルターとして使えるよう、ラベルは英字、数字、.、_、- のみで64文字までに制限されています。
ツール呼び出しで source が省略された場合、サーバーは initialize ハンドシェイクから接続中の MCP クライアント(cursor、codex、claude-ai、…)を特定して書き込みを帰属させます。クライアントから名前が送られない場合は、mcp-agent が使用されます。そのため、同じエージェントを共有する2つのエディターも、追加の設定なしで想起時に区別できます。
設定
すべての設定は環境変数で行います(読み込み順:プロセス環境変数 → 作業ディレクトリの .env ファイル)。
| 変数 | 必須 | デフォルト | 説明 |
|---|---|---|---|
MOORCHEH_API_KEY | はい | — | Moorcheh API キー。 |
MEMANTO_DEFAULT_AGENT_ID | 推奨 | なし | デフォルトのエージェント。設定すると、ツール呼び出しで agent_id を省略できます。 |
MEMANTO_AGENT_PATTERN | いいえ | tool | デフォルトのエージェントを自動作成するときに使用するパターン(support/project/tool)。 |
MEMANTO_AGENT_AUTO_CREATE | いいえ | true | デフォルトのエージェントが見つからない場合、初回使用時に作成します。デフォルト以外のエージェントは、事前に作成しておく必要があります。 |
MEMANTO_SESSION_DURATION_HOURS | いいえ | サーバーのデフォルト(6) | セッションの有効期間(時間)。 |
MEMANTO_EXPOSE_ADMIN | いいえ | false | エージェント管理用の4つのツールを登録します。 |
MEMANTO_MCP_TRANSPORT | いいえ | stdio | stdio、sse、または streamable-http。 |
MEMANTO_MCP_HOST | いいえ | 127.0.0.1 | sse/http トランスポートでバインドするホスト。 |
MEMANTO_MCP_PORT | いいえ | 8765 | sse/http トランスポートでバインドするポート。 |
MEMANTO_MCP_LOG_LEVEL | いいえ | INFO | ログレベル(ログは常に stderr に送信されます)。 |
CLI フラグ(memanto-mcp --transport sse --port 9000)は環境変数より優先されます。
HTTP/SSE での実行
リモートクライアントやマルチプロセス構成では、サーバーをネットワークトランスポートで実行します。
# Streamable HTTP (recommended modern transport)
memanto-mcp --transport streamable-http --host 0.0.0.0 --port 8765
# Server-Sent Events (older, still widely supported)
memanto-mcp --transport sse --host 0.0.0.0 --port 8765
クライアントの接続先を http://your-host:8765/mcp(または選択したトランスポートが案内するパス)に設定します。本番環境へのデプロイでは、リバースプロキシと認証を組み合わせてください。サーバーは API キーを使って Moorcheh に対する上流認証を行いますが、受信する MCP クライアントの認証は行いません。
仕組み
┌──────────────┐ MCP/stdio ┌──────────────────┐ Moorcheh API ┌─────────────┐
│ Claude / IDE │ ──────────────► │ memanto-mcp │ ────────────────► │ Moorcheh │
│ (client) │ ◄────────────── │ (this package) │ ◄──────────────── │ Service │
└──────────────┘ tool calls └──────────────────┘ HTTPS+API key └─────────────┘
│
└─ uses memanto.cli.client.SdkClient
(same client the Memanto CLI uses)
- 起動時に設定が検証されます。API キーは、最初のツール呼び出し時に遅延検証されます。
- エージェントごとに最初のメモリツールを呼び出すと、サーバーはエージェントが存在することを確認し(必要に応じて自動作成)、JWT セッションを有効化します。セッションは有効期限が切れる前に自動更新されるため、長時間実行される MCP 接続でも、会話中にセッション期限切れエラーが発生しません。
- サーバーは、シャットダウン時も意図的にセッションを維持します。JWT セッションには TTL が設定されており、ほかの Memanto クライアント(CLI、REST)で共有される場合があるためです。
プログラムへの組み込み
カスタム MCP ホストを構築する場合や、このサーバーをより大きなプロセスに組み込む場合は、FastMCP インスタンスを自分で構築できます。
from memanto_mcp import MCPServerSettings, build_server
settings = MCPServerSettings() # reads env / .env
mcp = build_server(settings)
# Add your own tools alongside Memanto's, then run.
mcp.run(transport="stdio")
トラブルシューティング
| 症状 | 対処方法 |
|---|---|
configuration error: MOORCHEH_API_KEY is required | MCP クライアント設定の env ブロックに環境変数を設定します。 |
Agent '…' does not exist and MEMANTO_AGENT_AUTO_CREATE is disabled | 自動作成を再度有効にするか、create_agent(管理ツール)/memanto agent create <id> を一度実行します。 |
| クライアントにツールが表示されない | クライアントが MCP に対応していることと、設定パスが正しいことを確認します。クライアントの MCP ログを確認してください。起動時にサーバーが出力する stderr の行(memanto_mcp が先頭に付きます)が表示されます。 |
| stdio モードで出力が文字化けする | お使いの環境の何かが stdout に書き込んでいます。このチャネルは JSON-RPC 専用です。ログを stderr に移してください。サーバー自身は stderr にのみ書き込みます。 |
| 初回呼び出しが遅い | コールドスタートのコストです。SDK のインポートと初回のセッション有効化が発生します。以降の呼び出しでは有効なセッションが再利用されます。 |
ライセンス
MIT — Memanto プロジェクトと同じです。LICENSE を参照してください。
リンク
- Memanto — メモリエージェント本体
- Moorcheh — 基盤となるインデックス作成不要のセマンティック DB
- Model Context Protocol spec
- Anthropic MCP Python SDK
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。