About

MCPの通信方式 stdioとStreamable HTTPの違い

ローカル開発とクラウドSaaSデプロイの違い

MCP初期にはstdio(標準入出力)transportのみで、Claude DesktopのようなローカルクライアントでしかMCPサーバーを使用できませんでした。2025年3月にStreamable HTTP transportが導入され状況が変わりました。SaaSベンダーがMCPサーバーをクラウドにデプロイし、ローカル・クラウドどこからでもMCPクライアントがHTTPで接続できます。単一デプロイで多数のクライアントにサービスし、OAuth 2.1ベース認証、ロードバランシングなどエンタープライズ機能もサポートします。「MCP SaaS」と呼ばれるのがまさにこのStreamable HTTPベースのリモートデプロイ方式です。

構造ダイアグラム

MCP公式Transport比較
stdio = ローカル開発 Streamable HTTP = クラウド/SaaS
💻
stdio Transport
ローカル専用(従来方式)
MCP Client
Claude Desktop / VS Code
↓ spawn子プロセス ↓
MCP Server
同じマシンで実行
↔ stdin / stdout ↔
✓ 設定簡単(プロセスを実行するだけ)
✓ ネットワーク不要
✗ ローカル専用(リモート不可)
✗ クライアントごとにサーバープロセス
☁️
Streamable HTTP
クラウド/SaaSデプロイ(2025.03~)
Client A
Client B
Client C
↓ HTTPS + OAuth 2.1 ↓
MCP Server (Cloud)
単一デプロイ、多数のクライアント
POST → SSEストリーム
✓ リモート/クラウドデプロイ可能
✓ 多数のクライアント同時処理
✓ OAuth 2.1セキュリティ + ロードバランシング
✗ サーバーインフラ管理が必要
どのTransportを選ぶべき?
stdio選択
  • ローカル開発/テスト
  • Claude Desktop統合
  • 単一ユーザー環境
  • ネットワークのない環境
Streamable HTTP選択
  • SaaSサービスとしてMCP提供
  • エンタープライズAIエージェント
  • マルチユーザー/チーム環境
  • クラウドAIプラットフォーム統合
MCP Transport進化
2024.11 stdio → 2025.03 Streamable HTTP → SaaS時代
核心ポイント
  • stdio: プロセス間通信、ローカル専用、Claude Desktop/IDEプラグインに最適
  • Streamable HTTP: HTTP POST + SSE、リモートデプロイ可能、SaaS/エンタープライズに最適
  • MCP SaaS = Streamable HTTPベースのクラウドMCPサーバーサービス
  • 2025年12月、AnthropicがMCPをLinux Foundationに寄贈 → 業界標準化
  • 月9,700万以上のSDKダウンロード、10,000以上のプロダクションMCPサーバー運用中

動作フロー

1

stdio: クライアントがMCPサーバーを子プロセスとしてspawn(同一マシン)

2

stdio: stdin/stdoutでJSON-RPCメッセージ交換(ローカル専用)

3

Streamable HTTP: MCPサーバーが独立HTTPサーバーとしてデプロイ(クラウド)

4

Streamable HTTP: クライアントがHTTP POSTでリクエスト、Server-Sent Eventsでレスポンスストリーミング

5

Streamable HTTP: OAuth 2.1 + PKCEで認証、HTTPSで暗号化

6

単一サーバーが多数クライアントを同時処理(セッションプーリングで10倍の性能)

メリット

  • ✓ stdio: 設定が簡単(プロセスspawnのみ)
  • ✓ stdio: ネットワーク不要
  • ✓ Streamable HTTP: リモートデプロイ可能
  • ✓ Streamable HTTP: 多数クライアントにサービス
  • ✓ Streamable HTTP: OAuthセキュリティ + ロードバランシング
  • ✓ Streamable HTTP: SaaSビジネスモデル可能

デメリット

  • ✗ stdio: ローカル専用(クラウドAIエージェント不可)
  • ✗ stdio: クライアントごとにサーバープロセスが必要
  • ✗ Streamable HTTP: サーバーインフラ管理が必要
  • ✗ Streamable HTTP: 認証/セキュリティ実装が複雑
  • ✗ Streamable HTTP: ネットワーク遅延の追加

ユースケース

stdio: Claude Desktopローカル開発 stdio: VS Code拡張ローカルMCP Streamable HTTP: SaaSベンダーのMCPサーバー公開 Streamable HTTP: エンタープライズAIエージェントプラットフォーム Streamable HTTP: マルチユーザーAIサービス
← MCPはどう動くのか? tmuxはどう動くのか? →