MemoryLake
すべての記事に戻る
Tutorial2026年6月5日7 分で読了

あなたが作成したカスタムMCPサーバーに長期記憶をどのように構築しますか?

自分自身のMCPサーバーを書くと、ツールスキーマのすべての行、すべてのハンドラー、すべての応答を所有しますが、同時に難しい問題も引き継ぎます:記憶はどこに存在するのか?典型的なカスタムサーバーは設計上ステートレスで始まり、一度に1つのリクエストを処理し、5回前や3人のユーザー前に何が起こったかを認識しません。それは、エージェントがユーザーの好み、プロジェクトの制約、または先週の火曜日に始まった会話のスレッドを思い出す必要があるまでうまく機能します。このガイドでは、データベースを追加したり、最初から取得を再実装したりすることなく、カスタムMCPサーバーに耐久性のあるクロスセッション記憶を追加する方法を説明します。

短い答え

プロセス内に状態を保存するのではなく、カスタムMCPサーバーに外部の記憶層を接続します。MemoryLake Projectを作成し、MCP Serverエンドポイントを生成し、ハンドラー内でBearerトークンとしてSecretを使用してエンドポイントURLを呼び出すことでコンテキストを読み書きします — 記憶はすべてのセッションを通じて持続し、サーバーの任意のインスタンスが同じストアにアクセスします。

カスタムMCPサーバー内のプロセス記憶が不足する理由

あなたが書いたサーバーに記憶を追加する最も簡単な方法は、モジュールレベルの辞書またはコードと一緒にバンドルされたシンプルなSQLiteファイルです。開発中は機能しますが、最初のエッジケースでモデルが壊れます:プロセスを再起動すると辞書が空になります;2つのインスタンスをデプロイするとそれらは分岐します;プロジェクトをチームメイトに渡すと、彼らは調査する履歴のない真っ新な状態から始まります。

より深い問題は、プロセス内ストレージが2つの責任を混同することです。サーバーはリクエストハンドラーであり、その仕事はツールの呼び出しを解釈し、結果を返すことです。状態の耐久性も所有すると、スキーマの移行、バックアップのスケジュール、およびツールロジックに集中すべきコード内でのエクスポートパイプラインを管理することになります。

記憶を外部化することで、これらの懸念を明確に分離できます。ハンドラーはスリムなままです:記憶層を呼び出し、返されたコンテキストを組み込み、ツールロジックを実行し、オプションで新しい事実を書き戻します。記憶層は持続性、バージョン管理、取得、アクセス制御を処理します。サーバーのコードベースにインフラストラクチャを追加することなく、再起動やインスタンスを超えた耐久性のある履歴を得ることができます。

始める前に

必要なもの:

  • 無料のMemoryLakeアカウント
  • あなたが作成し、変更できるカスタムMCPサーバーのコードベース
  • 持続させたいコンテキスト — ユーザーの好み、プロジェクトのルール、または参照ファイル(PDF、Word、Excel、PowerPoint、Markdown、または画像)

カスタムMCPサーバーに長期記憶を追加する方法(ステップバイステップ)

ステップ1:記憶プロジェクトを構築する

MemoryLakeにサインインし、プロジェクト管理を開きます。プロジェクトを作成をクリックし、サーバーのドメインにマッピングされる名前を付けます — 例えば、「カスタムサーバー記憶」やテナントごとのラベルなど。ドキュメントドライブを開き、サーバーのハンドラーが読み取れるべき参照ファイルをアップロードを使ってプッシュします。次に、ドキュメントタブ → ドキュメントを追加 → 確認を開いて、プロジェクトにそれらを添付します。ルール、制約、またはユーザーファクトについては、記憶タブ → 記憶を追加を開き、エントリを入力して保存をクリックします。

ステップ1:記憶プロジェクトを構築する
ステップ1:記憶プロジェクトを構築する

ステップ2:MCPサーバーエンドポイントを生成する

MCPサーバータブ → MCPサーバーを追加に移動します。説明的なラベルを付けます — 例えば、「カスタムMCPバックエンド」 — そして生成をクリックします。MemoryLakeは3つの値を返します:Key IDSecret、およびエンドポイントURLSecretをすぐにコピーしてください;これは一度だけ表示され、パネルを閉じた後は取得できません。

ステップ2:MCPサーバーエンドポイントを生成する
ステップ2:MCPサーバーエンドポイントを生成する

ステップ3:MCPを介してMemoryLakeにサーバーを接続する

カスタムサーバーのMCP設定に、エンドポイントURLを貼り付け、SecretBearerトークンとして設定します。これで、ハンドラーはツールの呼び出しの開始時にコンテキストを読み取ったり、終了時に新しい事実を書き込んだりするためにエンドポイントを呼び出すことができます。認証はリクエストごとに行われるため、サーバーの任意のインスタンスが同じプロジェクトにアクセスし、記憶は複製の数に関係なく一貫して蓄積されます。MCP設定ガイドを参照して、完全な設定リファレンスを確認してください。[MemoryLakeを無料で試す]

ステップ3:MCPを介してMemoryLakeにサーバーを接続する
ステップ3:MCPを介してMemoryLakeにサーバーを接続する

カスタムサーバーの組み込みストレージ vs MemoryLake

次元プロセス内 / バンドルストレージMemoryLake
セッションを超えて持続するいいえ(再起動時にクリア)はい
他のAIで機能するいいえはい — ChatGPT、Claude、Gemini、任意のMCPツール
容量ローカルディスク / 記憶によって制限される無制限のプロジェクトとドキュメント
バージョン管理いいえはい(Gitスタイルの履歴)
データ所有権不安定で、エクスポート保証なしあなたが所有する(AES-256、いつでもエクスポート/削除可能)
ベンチマークLoCoMo #1 — 94.03%

ヒントとベストプラクティス

  • 論理的なテナントまたはワークスペースごとに1つのプロジェクトのスコープを設定し、サーバーがリクエスト内でプロジェクト識別子を渡すことによって読み取りをルーティングできるようにし、異なるユーザーの記憶を隔離します。
  • 構造化されたルールと事実を記憶エントリに保存し、ドキュメントドライブ内の大きな参照ドキュメントに保存します — 短いエントリはツールハンドラーのラウンドトリップ内でより早く取得されます。
  • ハンドラーの開始時にコンテキストを読み取り、終了時に更新された事実を書き込むことで、各呼び出しを自己完結型に保ち、任意のインスタンスがローカル状態なしで任意のリクエストに応じることができます。
  • Bearerトークンを定期的に回転させ、古いキーを取り消してMCPサーバータブで新しいものを生成します — デプロイメント設定で更新し、再デプロイします。セッションの排出は必要ありません。

トラブルシューティング

  • ハンドラーが古いまたは欠落したコンテキストを返す: サーバー設定のエンドポイントURLが正しいプロジェクトを指していることを確認し、以前のビルドからのローカル環境変数によって上書きされていないことを確認します。
  • 401で認証が拒否された: Bearerトークンは、コピーしたSecret値と正確に一致する必要があり、Key IDではありません。MCP設定で設定されている値を再確認してください。
  • 起動時に「Secretが見つかりません」エラー: Secretは一度だけ表示されます。MCPサーバータブを開き、既存のキーを取り消し、生成をクリックして新しいKey ID、Secret、およびエンドポイントURLを生成します。

カスタムサーバーに記憶を持たせる

あなたのサーバーはツールロジックを処理します;MemoryLakeは単一のリクエストよりも長く持続する必要があるすべてを処理します。

よくある質問

カスタムMCPサーバーに長期記憶を追加するにはどうすればよいですか?

外部の記憶層を接続します。MemoryLakeプロジェクトを作成し、MCPサーバーエンドポイントを生成し、ハンドラー内でBearerトークンとしてSecretを使用してエンドポイントURLを呼び出します。記憶は再起動を超えて持続し、サーバーのすべてのインスタンスで共有されます。

カスタムMCPサーバーに記憶を追加するには別のデータベースが必要ですか?

いいえ。MemoryLakeは記憶層として機能するため、データベースをプロビジョニングまたは維持する必要はありません。ハンドラーは、スキーマや移行を管理することなく、単一の認証されたエンドポイントを介してコンテキストを読み書きします。

同じ記憶プロジェクトを複数のカスタムMCPサーバーで使用できますか?

はい。複数のサーバーが同じエンドポイントURLとプロジェクトを指すことができます。認証がBearerトークンを介してリクエストごとに行われるため、任意のサーバーインスタンスが同じ耐久性のあるコンテキストを読み取ります。これは、複数のサーバーが知識ベースを共有するマイクロサービスアーキテクチャに便利です。

カスタムMCPサーバーの記憶にどのような種類のコンテンツを保存できますか?

構造化された事実やルールを記憶エントリとして保存し、PDF、Word、Excel、PowerPoint、Markdown、または画像をプロジェクト内のドキュメントドライブにアップロードできます。どちらも同じエンドポイントを介して取得可能です。

カスタムMCPサーバーが記憶データを読み取るとき、それは安全ですか?

MemoryLakeはAES-256で暗号化されており、ISO 27001、SOC 2 Type II、GDPR、CCPAの認証を保持しています。あなたはデータを所有し、いつでもエクスポートまたは永久に削除できます。

MemoryLakeはMCPサーバープロセス内に記憶を保存することとどう違いますか?

プロセス内ストレージは再起動時に消え、複数のインスタンスで分岐します。MemoryLakeは耐久性のある外部層であり、記憶は再起動を生き延び、レプリカを超えてスケールし、あなたのカスタムサーバーだけでなく、任意のMCP互換AIツールで機能します。