| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| 8 | 9 | 10 | 11 | 12 | 13 | 14 |
| 15 | 16 | 17 | 18 | 19 | 20 | 21 |
| 22 | 23 | 24 | 25 | 26 | 27 | 28 |
| 29 | 30 | 31 |
- test-time scaling
- chain-of-thought
- Embedding
- Multi-Head Attention
- PEFT
- MQA
- Langchain
- attention
- fréchet inception distance
- flashattention
- Positional Encoding
- gqa
- SK AI SUMMIT 2025
- 트랜스포머
- re-ranking
- reinforcement learning from human feedback
- BLEU
- self-attention
- Engineering at Anthropic
- extended thinking
- langgraph
- catastrophic forgetting
- 토크나이저
- model context protocol
- rotary position embedding
- transformer
- context engineering
- RLHF
- MHA
- CoT
- Today
- Total
AI Engineer 공간 "사부작 사부작"
MCP: AI의 만능 열쇠, 그리고 Streamable HTTP가 현업의 표준이 된 이유 본문
MCP: AI의 만능 열쇠, 그리고 Streamable HTTP가 현업의 표준이 된 이유
인공지능(AI) 기술이 발전하면서, 이제 AI는 단순히 텍스트를 생성하는 것을 넘어 외부 세계와 소통하고 실제 작업을 수행하는 '에이전트'로 진화하고 있습니다. 마치 우리가 스마트폰으로 다양한 앱을 실행해 정보를 얻고 일을 처리하는 것처럼, AI도 파일 시스템을 읽고, 데이터베이스에 쿼리를 날리고, API를 호출할 필요가 생겼죠. 하지만 수많은 AI 모델과 도구들이 각기 다른 방식으로 소통한다면, 마치 전 세계 사람들이 각자의 언어로만 말하는 것처럼 혼란스러울 것입니다. 이러한 문제를 해결하기 위해 앤트로픽(Anthropic)이 제시한 해결책이 바로 모델 컨텍스트 프로토콜(Model Context Protocol, MCP)입니다. 그리고 이 프로토콜이 실제로 안정적이고 확장성 있게 작동하도록 만드는 핵심 기술 중 하나가 바로 'Streamable HTTP' 통신 방식입니다. 이번 글에서는 MCP가 무엇인지 알아보고, 왜 현업에서 AI 제품을 만들 때 단순한 stdio 방식이 아닌 Streamable HTTP를 선택하는지 그 이유를 살펴 보겠습니다.
MCP란 무엇인가? - AI 생태계의 'USB-C'
MCP는 대규모 언어 모델(LLM)이 외부의 데이터나 도구(Tool)와 같은 시스템과 효과적으로 상호작용할 수 있도록 설계된 개방형 표준 프로토콜입니다.

- 개념: 서로 다른 시스템이 통신할 때 따르는 규칙과 형식의 집합을 '프로토콜'이라고 합니다. MCP는 AI 모델과 외부 도구가 서로 "대화"할 때 사용하는 공통의 약속이자 사용 설명서인 셈입니다.
- 비유: MCP는 AI 애플리케이션을 위한 'USB-C' 포트에 비유할 수 있습니다. 과거에는 기기마다 충전기와 데이터 케이블이 달라 불편했지만, USB-C라는 표준이 등장하면서 하나의 포트로 모든 것을 연결할 수 있게 되었습니다. 마찬가지로, MCP는 다양한 AI 모델과 도구들을 하나의 표준화된 방식으로 연결하여 개발자들이 매번 새로운 연결 방식을 고민할 필요 없게 만듭니다.
- 예시: 개발자가 AI 모델에게 "내 컴퓨터의 '프로젝트' 폴더에 있는 모든 파이썬 파일 목록을 줘"라고 요청한다고 가정해 봅시다. MCP가 없다면, 개발자는 해당 AI 모델이 파일 시스템에 접근할 수 있도록 직접 코드를 작성하고 연결해야 합니다. 하지만 파일 시스템을 다루는 MCP 서버(도구)가 있다면, AI 모델은 MCP라는 표준 약속에 따라 서버에게 작업을 요청하고 결과를 받을 수 있습니다.
이러한 MCP는 보통 호스트(Host), 클라이언트(Client), 서버(Server)라는 세 가지 요소로 구성되어 작동합니다.
- 호스트: Claude Desktop 앱처럼 AI 모델을 실행하고 전체 흐름을 조율하는 주체입니다.
- 클라이언트: 호스트 내에서 특정 서버와 1:1로 통신을 담당하는 중개자입니다.
- 서버: 파일 검색, 데이터베이스 조회 등 실제 작업을 수행하는 외부 도구나 기능입니다.
소통의 방식: 왜 Streamable HTTP가 현업의 선택인가?
MCP가 "무엇을 말할지(메시지 형식)"를 정의했다면, 클라이언트와 서버가 "어떻게 대화할지"를 정하는 것이 바로 '전송(Transport)' 계층의 역할입니다. 대표적인 전송 방식으로는 stdio와 Streamable HTTP가 있습니다.
① stdio (Standard I/O): 내 컴퓨터 안의 빠른 실험실
stdio는 클라이언트와 서버가 표준 입출력(standard input/output)을 통해 통신하는 방식입니다.
- 비유: 마치 한 방에 있는 두 사람이 쪽지를 주고받는 것과 같습니다. 네트워크 연결 없이 로컬 컴퓨터 내에서 직접 통신하기 때문에 매우 빠르고 간단합니다. 개인용 스크립트를 만들거나 간단한 로컬 도구를 연동하는 실험적 환경에 매우 적합합니다.
- 한계: 이 방식은 명확한 한계를 가집니다.
- 로컬 전용: 내 컴퓨터 안에서만 작동하므로, 클라우드에 있는 원격 서비스나 다른 컴퓨터의 도구와는 통신할 수 없습니다.
- 확장성 부재: 여러 사용자가 동시에 접속하는 다중 사용자 환경을 지원하기 어렵습니다.
- 보안 및 인프라: 토큰 기반 인증이나 방화벽, 프록시 같은 현대적인 웹 인프라와 호환되지 않습니다.
② Streamable HTTP: 클라우드를 위한 확장 가능한 통신
Streamable HTTP는 표준 HTTP 프로토콜(POST, GET)을 사용해 네트워크를 통해 통신하는 방식입니다. 현업에서 만드는 대부분의 AI 제품이 이 방식을 채택하는 데에는 명확한 이유가 있습니다.

- 개념: 클라이언트와 서버가 인터넷을 통해 데이터를 주고받는 것과 동일한 원리입니다. 로컬은 물론 원격 서버와도 통신할 수 있으며, 클라우드 기반의 분산 아키텍처에 완벽하게 들어맞습니다.
- 핵심 장점:
- 확장성과 유연성: stdio와 달리 여러 사용자의 동시 접속을 효율적으로 처리할 수 있습니다. 고성능이 요구되는 환경에서도 안정적인 요청 성공률과 적은 TCP 연결 수를 유지하며 뛰어난 성능을 보입니다. 또한, 서버가 상태를 유지할 필요 없는 무상태(Stateless) 서버를 지원하여 클라우드 환경에서 자원을 효율적으로 사용하고 확장하기에 용이합니다.
- 향상된 사용자 경험 (Streaming): Streamable HTTP의 가장 큰 특징은 스트리밍 응답입니다. stdio가 작업이 모두 끝난 후에야 결과를 한 번에 보여주는 반면, 이 방식은 결과가 생성되는 대로 조금씩 나누어 실시간으로 보여줍니다.
- 예시: AI에게 긴 보고서를 요약해달라고 요청했을 때, 전체 요약이 끝날 때까지 기다리는 것이 아니라, 요약된 문장이 하나씩 화면에 나타나는 것을 볼 수 있습니다. 이는 마치 채팅 창에서 상대방이 타이핑하는 것을 실시간으로 보는 것과 같아, 사용자는 응답이 훨씬 빠르고 자연스럽다고 느끼게 됩니다.
- 인프라 호환성 및 보안: 표준 HTTP를 사용하므로 기존의 방화벽, 프록시, 로드 밸런서 등 웹 인프라와 완벽하게 호환됩니다. 또한, 토큰 기반의 인증(Authentication)을 지원하여 프로덕션 환경에서 필수적인 보안 요구사항을 충족시킬 수 있습니다.
- 간소화된 아키텍처: 요청과 응답을 모두 단일 HTTP 엔드포인트에서 처리하여, 과거 여러 채널을 유지해야 했던 방식(HTTP+SSE)보다 구조가 단순하고 효율적입니다.
| 특징 | stdio | Streamable HTTP |
| 통신 범위 | 로컬 컴퓨터 내로 제한 | 로컬 및 원격 (클라우드) |
| 아키텍처 | 서브프로세스 기반 | 단일 엔드포인트를 사용하는 독립 프로세스 |
| 확장성 | 단일 사용자, 확장 어려움 | 다중 사용자, 높은 동시성 지원, 확장 용이 |
| 주요 기능 | 단순 메시지 교환 | 스트리밍, 연결 재개(Resumability), 세션 관리(Session Management) |
| 사용자 경험 | 전체 결과 한 번에 반환 | 스트리밍으로 점진적 결과 표시 (빠르게 느껴짐) |
| 보안 | 제한적 | 토큰 인증, Origin 헤더 검증 등 구체적 보안 지침 요구 |
| 주요 용도 | 개인용 스크립트, 로컬 실험 | 클라우드 서비스, 상용 AI 프로덕트 |
마무리하며
MCP는 AI가 외부 세계와 소통하는 '언어'를 통일시켜 AI 생태계의 상호운용성을 극대화하는 혁신적인 프로토콜입니다. 그리고 이 언어를 실어 나르는 방법, 즉 전송 방식의 선택은 AI 서비스의 성패를 가를 수 있는 중요한 결정입니다. stdio는 개인 개발 환경에서 빠르고 간편한 테스트를 위한 훌륭한 도구입니다. 하지만 여러 사용자를 대상으로 안정적이고 안전하며 확장 가능한 서비스를 구축해야 하는 현업에서는 Streamable HTTP가 적합한 선택지입니다. 스트리밍을 통한 뛰어난 사용자 경험, 클라우드 친화적인 아키텍처, 그리고 검증된 웹 표준 기술의 활용은 Streamable HTTP를 현대 AI 에이전트 개발의 핵심 기반으로 만들었습니다.
https://modelcontextprotocol.io/introduction
Introduction - Model Context Protocol
Get started with the Model Context Protocol (MCP)
modelcontextprotocol.io
https://modelcontextprotocol.io/specification/2025-06-18/basic/transports
Transports - Model Context Protocol
Responses are generated using AI and may contain mistakes.
modelcontextprotocol.io
Comparison of data before and after using Streamable HTTP
The MCP (Model Context Protocol) protocol is a standard protocol used for communication between AI models and tools. As AI applications…
medium.com
'Theory > MCP' 카테고리의 다른 글
| AI 에이전트를 위한 MCP 도구 설계(최적화) (0) | 2025.11.17 |
|---|