短い答え
サーバーをステートレスのままにし、記憶をサーバーがリクエストごとにクエリする外部レイヤーに移動します。MemoryLakeプロジェクトを作成し、MCPサーバーエンドポイントを生成し、ステートレスサーバーがそれを通じてコンテキストを読み書きできるようにします — 状態はMemoryLakeに存在するため、任意のインスタンスが任意のリクエストに応じてすべてを思い出すことができます。
ステートレスと記憶が矛盾しない理由
2026年のMCP変更は、以前は絡み合っていた2つの事柄を分離します:輸送と状態。ステートレスサーバーは輸送に関するものであり、クライアントを1つのインスタンスに固定するための接続ごとのセッションはありません。アプリケーションに記憶があるかどうかについては何も言っていません。間違いは、プロセス内に記憶を保存することで、スティッキーセッションを強制し、2つ目のインスタンスが立ち上がるとすぐに水平スケーリングを破壊します。
クリーンなパターンは、記憶を外部化することです。サーバーは薄いステートレスリクエストハンドラーのままで、記憶レイヤーが耐久性、取得、履歴を所有します。すべてのインスタンスが同じストアを指すため、任意のノードがリクエストを処理でき、完全なコンテキストを確認できます。これは、2026年にエコシステム全体が決定したのと同じ分割です — 実行時コンテキストとは別の回復可能ストレージ — MCPレイヤーに適用されます。
始める前に
必要なもの:
- 無料のMemoryLakeアカウント
- ステートレスMCPサーバー(またはステートレスにリファクタリング中のもの)
- サーバーが保持する必要のあるコンテキスト — 事実、ルール、またはファイル(PDF、Word、Excel、PowerPoint、Markdown、または画像)
ステートレスMCPサーバーに永続的な記憶を追加する方法(ステップバイステップ)
ステップ1:記憶プロジェクトを構築する
MemoryLakeにサインインし、プロジェクト管理を開きます。プロジェクトを作成をクリックし、名前を付けます(例えば、「ステートレスサーバーの記憶」)。ドキュメントドライブを開き、アップロードを使用してファイルを追加し、次にドキュメントタブ → ドキュメントを追加 → 確認をクリックして添付します。記憶タブ → 記憶を追加 → 保存を通じて耐久性のあるルールを追加します。

ステップ2:MCPサーバーエンドポイントを生成する
MCPサーバータブ → MCPサーバーを追加 → 説明を記入します(例えば、「ステートレスサーバーバックエンド」)→ 生成。MemoryLakeはキーID、シークレット、およびエンドポイントURLを返します。シークレットは一度だけ表示されるため、すぐにコピーしてください。

ステップ3:サーバーからリクエストごとに記憶をクエリする
ステートレスハンドラー内で、MemoryLakeのエンドポイントURLをシークレットをBearerトークンとして呼び出し、各リクエストでコンテキストを読み書きします。呼び出しはステートレスであり、リクエストごとに認証されるため、負荷分散器の背後にある任意のサーバーインスタンスが任意のクライアントにサービスを提供し、完全な履歴を思い出すことができます。設定リファレンスについては、MCPセットアップガイドを参照してください。[MemoryLakeを無料で試す]

プロセス内の状態とMemoryLake
| 次元 | プロセス内の状態 | MemoryLake |
|---|---|---|
| インスタンス再起動後も生存 | いいえ | はい |
| ラウンドロビン負荷分散で動作 | いいえ(スティッキーが必要) | はい |
| サーバーインスタンス間で共有 | いいえ | はい |
| バージョン管理 | いいえ | はい(Gitスタイルの履歴) |
| データ所有権 | あなたのものですが、揮発性 | あなたが所有します(AES-256、耐久性) |
| ベンチマーク | — | LoCoMo #1 — 94.03% |
ヒントとベストプラクティス
- 記憶エンドポイントをキャッシュではなく依存関係として扱う — リクエスト時にコンテキストを読み取ることで、任意のインスタンスが正確な状態を保つことができます。
- プロジェクトをテナントまたはワークスペースでスコープ設定し、ステートレスサーバーがユーザーごとの状態を保持せずに読み取りをルーティングできるようにします。
- ローテーション時にBearerトークンを再生成します。ステートレスサーバーはセッションを消耗することなく新しい資格情報を取得します。
- 耐久性のあるルールを記憶エントリに保持し、ドキュメントドライブにバルクコンテキストを保持します — 小さなルールは迅速に取得されます。
トラブルシューティング
- 異なるインスタンスが異なるコンテキストを返す: すべてのインスタンスが同じエンドポイントURLとプロジェクトを指していることを確認し、ローカルストアではないことを確認してください。
- 認証が断続的に失敗する: Bearerトークンが共有設定から読み取られていることを確認し、1つのインスタンスに埋め込まれていないことを確認してください。
- 「シークレットが見つかりません」: シークレットは一度だけ表示されます。MCPサーバータブで新しいキーを取り消し、生成します。
サーバーをステートレスに保ち、記憶を保持する
状態を一度外部化すれば、MCPサーバーは長期的な記憶を失うことなく水平にスケールします。