Qdrant Persistence 搭載 MCP メモリサーバー
この MCP サーバーは、Qdrant ベクター データベースを活用したセマンティック検索機能を備えたナレッジ グラフ実装を提供します。
特徴
エンティティと関係性を用いたグラフベースの知識表現
ファイルベースの永続性(memory.json)
Qdrantベクターデータベースを使用したセマンティック検索
意味的類似性のためのOpenAI埋め込み
リバースプロキシ互換性を備えたHTTPSサポート
簡単に導入できるDockerサポート
環境変数
次の環境変数が必要です。
設定
ローカルセットアップ
依存関係をインストールします:
サーバーを構築します。
Dockerのセットアップ
Docker イメージをビルドします。
必要な環境変数を使用して Docker コンテナを実行します。
MCP 設定に追加:
ツール
エンティティ管理
create_entities: 複数の新しいエンティティを作成するcreate_relations: エンティティ間の関係を作成するadd_observations: エンティティに観測を追加するdelete_entities: エンティティとその関係を削除するdelete_observations: 特定の観測を削除するdelete_relations: 特定のリレーションを削除するread_graph: 完全なナレッジグラフを取得する
セマンティック検索
search_similar: 意味的に類似したエンティティと関係を検索するinterface SearchParams { query: string; // Search query text limit?: number; // Max results (default: 10) }
実装の詳細
サーバーは 2 つの形式の永続性を維持します。
ファイルベース (memory.json):
完全な知識グラフ構造
完全なグラフへの高速アクセス
グラフ操作に使用される
Qdrant ベクター DB:
実体と関係の意味的埋め込み
類似検索を可能にする
ファイルストレージと自動的に同期
同期
エンティティまたはリレーションが変更された場合:
変更はmemory.jsonに書き込まれます
埋め込みはOpenAIを使用して生成される
ベクトルはQdrantに保存されます
両方のストレージシステムは一貫性を維持
検索プロセス
検索する場合:
クエリテキストは埋め込みに変換されます
Qdrantは類似検索を実行します
結果にはエンティティと関係の両方が含まれます
結果は意味的類似性によってランク付けされます
使用例
HTTPSとリバースプロキシの設定
サーバーはHTTPSおよびリバースプロキシ経由でQdrantに接続できます。これは特に以下の場合に便利です。
NginxやApacheなどのリバースプロキシの背後でQdrantを実行する
自己署名証明書の使用
カスタム SSL/TLS 構成の要求
リバースプロキシの設定
リバース プロキシを構成します (Nginx を使用する例):
環境変数を更新します。
セキュリティに関する考慮事項
サーバーは、以下を使用して堅牢な HTTPS 処理を実装します。
カスタムSSL/TLS構成
適切な証明書検証オプション
接続プールとキープアライブ
指数バックオフによる自動再試行
設定可能なタイムアウト
HTTPS接続のトラブルシューティング
接続の問題が発生した場合:
証明書を確認します:
直接接続をテストします。
プロキシ設定を確認します:
貢献
リポジトリをフォークする
機能ブランチを作成する
変更を加える
プルリクエストを送信する
ライセンス
マサチューセッツ工科大学