この度、MCP(マルチチャネル処理)は公式ウェブサイトでストリーミングHTTPの仕様を発表し、4月17日にはこの新機能に対応したTypescript SDK 1.10.0版をリリースしました。これは、MCPが従来のSSE(サーバー送信イベント)プロトコルから正式に脱却することを意味し、ストリーミングHTTPが将来の標準になると予想されます。開発者にとって、これはより柔軟で効率的な開発体験を意味します。

1.jpg

まず、SSEプロトコルについて見ていきましょう。SSEはサーバーとの永続的な接続を維持するプロトコルで、サーバーはクライアントに継続的にメッセージを送信します。しかし、この永続的な接続方法は、状況によっては理想的ではありません。例えば、Cloudflare WorkersでリモートMCPをホストする場合、サーバーは5秒ごとにクライアントにメッセージを送信するため、アクティビティがなくても無料の計算クレジットを急速に消費してしまいます。

ストリーミングHTTPの導入により、この問題が効果的に解決されました。SSEと比較して、ストリーミングHTTPでは永続的な接続なしで通信できます。MCPサーバーは、従来のHTTPサーバーと同様に、標準的なPOSTとGETリクエストを使用してやり取りできるようになりました。この方法はサーバーの管理を大幅に簡素化し、開発者は単純な関数呼び出しを実装し、タスク完了後に接続を切断するだけで済みます。

さらに注目すべきは、ストリーミングHTTPではSSEの使用オプションも維持されていることです。開発者は必要に応じてどちらの方法を選択できます。これは、2つのスキームの長所を組み合わせ、より大きな柔軟性を提供しています。

ストリーミングHTTPのTypescript SDKはリリースされていますが、現在のクライアント側のサポートはまだ初期段階です。最新のニュースによると、HTTPサーバー向けのクライアントサポートはまもなく開始される予定です。この進歩はリモートホスティングの進展をさらに促進し、MCPサーバーのホスティングを他のExpressアプリケーションと同じくらい簡単にするでしょう。この変更は、開発のハードルを下げるだけでなく、開発効率も向上させ、MCP分野における開発者の革新と探求を大いに促進します。