mem0 MCP Server について
mem0 MCP Serverは、Mem0のメモリストリームを対応ツールに接続するTypeScript製MCPサーバーです。ストリームの作成、追記、検索、読み取り、削除に対応し、リソース経由でもアクセスできます。
主な機能
- 01メモリストリームの作成と追記
- 02メモリのセマンティック検索
- 03ストリームの読み取りと削除
- 04ストリームへのリソースアクセス
活用シーン
- 01会話内容をメモリストリームに保存
- 02クエリでMem0のメモリを検索
- 03指定したストリームの読み取りや削除
MCP 対応
MCPツールとしてメモリストリーム操作を提供し、ストリームの内容と一覧をリソースとして公開します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
mem0 MCP サーバー
Mem0 との統合によるメモリストリーム機能を提供する、mem0 用 Model Context Protocol(MCP)サーバーの TypeScript 実装です。
機能
- Mem0 と統合したメモリストリームの作成
- メモリストリームへのコンテンツの追加
- Mem0 のセマンティック検索によるメモリの検索
- メモリストリームからの読み取り
- リソースベースのメモリストリームへのアクセス
- メモリストリームの削除
前提条件
- Node.js と npm がインストールされていること
- Mem0 API キー(mem0.ai から取得してください)
インストール
npm install
設定
Mem0 API キーを環境変数として設定します。
export MEM0_API_KEY=your-api-key-here
ビルド
npm run build
サーバーの実行
npm start
テスト
テストクライアントを実行して、サーバーの機能を確認します。
npm test
API
ツール
-
create-memory-stream- パラメーター:
name:文字列initialContent:文字列(任意)userId:文字列(任意) - Mem0 のユーザー IDagentId:文字列(任意) - Mem0 のエージェント ID
- 戻り値:ストリーム ID とメタデータ
- パラメーター:
-
append-to-stream- パラメーター:
streamId:文字列content:文字列role:"user" | "assistant"(任意)
- 戻り値:成功の確認
- パラメーター:
-
search-memories- パラメーター:
query:文字列userId:文字列agentId:文字列(任意)threshold:数値(任意)
- 戻り値:Mem0 からの検索結果
- パラメーター:
-
read-stream- パラメーター:
streamId:文字列startIndex:数値(任意)endIndex:数値(任意)
- 戻り値:ストリームのコンテンツ
- パラメーター:
-
delete-stream- パラメーター:
streamId:文字列
- 戻り値:削除の確認
- パラメーター:
リソース
memory://{streamId}- メモリストリームのコンテンツに直接アクセスmemory://- すべてのメモリストリームを一覧表示
開発
このサーバーは MCP TypeScript SDK を使用して実装されており、永続的なメモリストレージとセマンティック検索のために Mem0 との統合を提供します。実装を拡張するには:
- Mem0 の機能を追加する(例:メモリのタグ付け、メタデータ)
- 適切なエラー処理を実装する
- 認証と認可を追加する
- メモリ操作を追加する
ライセンス
MIT
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。