🔀

MCP Transport: stdio vs 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 서비스