Streamable HTTP Transport for Web Fetch API について
EdgeStreamableHTTPTransportは、Honoなどを使うTypeScript製サーバーアプリ向けの、エッジ環境対応MCPトランスポートです。SSEと標準HTTPによる双方向通信に加え、セッション管理とイベント再開に対応します。
主な機能
- 01SSEストリーミング
- 02標準HTTPレスポンス
- 03ステートフル/ステートレスセッション
- 04拡張可能なイベントストアによる再開
活用シーン
- 01HonoアプリへのMCPトランスポート統合
- 02エッジ環境でのMCP通信の提供
MCP 対応
MCP Streamable HTTPトランスポート仕様を実装し、MCPサーバーアプリ向けにSSEと標準HTTPの通信層を提供します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Web Fetch API 向け Streamable HTTP トランスポート
このリポジトリでは、Model Context Protocol(MCP)向けのエッジ対応サーバートランスポートである EdgeStreamableHTTPTransport を提供しています。Server-Sent Events(SSE)と標準的な HTTP リクエストを使用したリアルタイムの双方向通信を実現するため、Hono などの最新のウェブフレームワークに適しています。このトランスポートは MCP Streamable HTTP トランスポート仕様を実装するよう設計されており、エッジ環境に最適化されています。
概要
このプロジェクトの中核は、リアルタイムのデータストリーミングを必要とするアプリケーション、特に Model Context Protocol を利用するアプリケーション向けに、信頼性と効率性に優れたトランスポート層を提供することです。TypeScript で構築されており、さまざまなサーバー構成、特にエッジコンピューティングプラットフォーム上で動作する環境に簡単に統合できるよう設計されています。
パッケージ
このモノレポには、次の主要なパッケージが含まれています。
packages/stremeable-http-transport:EdgeStreamableHTTPTransportを実装します。- SSE ストリーミングと直接 HTTP レスポンスをサポートします。
- セッション管理(ステートフルモードとステートレスモード)を備えています。
- 拡張可能なイベントストアによる再開機能を備えています。
- 詳細については、パッケージの README を参照してください。
開発
このプロジェクトでは、コード品質、保守性、貢献のしやすさを確保するために、最新の開発スタックを使用しています。
ツール
開発環境では、次のツールを使用します。
- TypeScript:強い型付けと最新の JavaScript 機能を利用します。
- pnpm workspaces:モノレポの構成と依存関係を管理します。
- Vitest:高速で信頼性の高いユニットテストと統合テストを実行します。
- Biome:一貫したコードフォーマットとリントを行います。
- tsdown:TypeScript コードを CJS および ESM 形式に効率よくバンドルします。
- Changeset:バージョン管理と変更履歴の生成を効率化します。
- GitHub Actions:テスト、ビルド、公開などの CI/CD パイプラインを自動化します。
- Lefthook:Git フックを管理します。
主なスクリプト(リポジトリのルートから実行)
pnpm install:すべてのパッケージの依存関係をインストールします。pnpm run build:すべてのパッケージをビルドします。pnpm run test:すべてのパッケージのテストを実行します。pnpm run check:リポジトリ全体のコードをリントし、フォーマットします。pnpm run dev:開発環境を起動します。通常、対象パッケージをウォッチモードで実行します。pnpm changeset:バージョン管理用の新しい changeset を作成します。pnpm changeset version:changeset を適用し、パッケージのバージョンを更新します。
より詳しいスクリプトについては、ルートおよび各パッケージ内の package.json を参照してください。
貢献
貢献を歓迎します。このプロジェクトへの貢献方法や、バグの報告、機能の提案、プルリクエストの提出に関する情報については、CONTRIBUTING.md のガイドをお読みください。
また、CODE_OF_CONDUCT.md に従ってください。
セキュリティ
セキュリティ上の脆弱性については、SECURITY.MD のポリシーを参照してください。
ライセンス
このプロジェクトは、LICENSE ファイルに記載された条件でライセンスされています。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。