MCP リリース候補版(Release Candidate)サバイバルガイド

MCPのリリース候補版は、プロトコル開始以来最大のアップデートです。これは、クライアント、サーバー、ツールを構築しているすべての人にとってのテストとなります。最終バージョンは2026年7月28日にリリースされます。この期間を利用して、移行時の問題を特定してください。

最大の変化は、MCPがステートレス(stateless)になったことです。

実装においてセッションIDや初期化ステップを使用している場合は、コードを変更する必要があります。各リクエストは、メタデータ内にバージョンと機能(capability)のデータを持つようになりました。

この変更はインフラストラクチャに役立ちます。ロードバランサーは、どのアカウントのサーバーインスタンスにもリクエストを送信できます。特定のサーバーに対して接続を維持し続ける必要はありません。

ステートの扱い方:

  • 接続内にステートを隠さない。
  • ステートをアプリケーションハンドルに移動する。
  • ツールに basket_id のようなIDを返させる。
  • モデルはそのIDを次の呼び出し時に再度渡すことができる。

サーバー主導のリクエストも変更されます。サーバーは、クライアントの呼び出しを処理している間のみ、リクエストを開始できます。サーバーが追加情報を必要とする場合は、InputRequiredResult を返します。その後、クライアントは新しいデータを使用して呼び出しを再試行します。

MCP Appsが登場しました。サーバーはHTMLインターフェースを提供できるようになります。ホストはこれらをサンドボックス化された iframe 内でレンダリングします。これによりユーザーエクスペリエンスが向上しますが、厳格なセキュリティが必要になります。

認可(Authorization)がより厳格になりました。

  • OAuth 2.0 および OpenID Connect を使用してください。
  • クライアントは issuer パラメータを検証する必要があります。
  • 認可サーバーは、現在 issuer パラメータを送信する必要があります。

注意すべき非推奨(Deprecations)事項:

  • Roots、Sampling、Logging は非推奨となりました。
  • 現時点ではまだ動作しますが、新規プロジェクトでは使用しないでください。
  • Roots はツールのパラメータに移動してください。
  • Sampling はモデルプロバイダーの直接APIに移動してください。
  • Logging は OpenTelemetry または stderr に移動してください。

スキーマの更新:

  • ツールのスキーマは、フル版の JSON Schema 2020-12 を使用するようになりました。
  • oneOfanyOf のような複雑なロジックを使用できます。
  • エラーを避けるため、サーバーはスキーマの深さを制限する必要があります。
  • エラーハンドリングを更新してください。リソース不足(missing resource)のエラーには、標準の JSON-RPC コード -32602 が使用されるようになりました。

問題を見つけた場合は、仕様リポジトリで Issue を作成するか、Discord のコントリビューターチャンネルで質問してください。

ソース: https://dev.to/bengreenberg/the-mcp-release-candidate-survival-guide-apps-auth-deprecations-and-tool-schemas-5da2

オプションの学習コミュニティ: https://t.me/GyaanSetuAi