Anthropic은 최근 MCP (Model Context Protocol)에서 주요 기술 혁신을 발표하고 새로운 "스트림 가능한 HTTP"전송 프로토콜을 시작했습니다. 이 혁신적인 솔루션은 MCP의 원격 데이터 전송 방법을 완전히 변경합니다. 새로운 프로토콜은 기존 HTTP+SSE 솔루션의 주요 제한 사항을 해결할뿐만 아니라 MCP의 원래 기술적 이점을 유지하여 AI 모델과 응용 프로그램 간의 커뮤니케이션에 혁신적인 혁신을 가져옵니다.
기술 아키텍처의 관점에서 볼 때,이 업데이트는 MCP 데이터 전송 메커니즘의 포괄적 인 재구성입니다. 새로운 프로토콜은보다 유연하고 사용하기 쉽고 호환되는 디자인 개념을 채택합니다. 온라인으로 유지 해야하는 긴 SSE 연결과 비교하여 새로운 솔루션을 사용하면 고객이 언제든지 메시지를 보내고 회신을 기다릴 수 있습니다. 이 방법은 일반 HTTP 요청과 유사하지만 스트리밍을 지원하면 시스템의 유연성과 유용성이 크게 향상됩니다.
이 기술 업데이트는 주로 5 가지 핵심 개선 사항을 포함합니다. 첫째, 전용 /SSE 엔드 포인트가 제거되어 서버 아키텍처를 단순화했습니다. 둘째, 클라이언트에서 서버로의 모든 메시지는 통합 /메시지 엔드 포인트를 통해 전송되어 인터페이스의 표준화를 실현합니다. 셋째, 서버는 실제 요구에 따라 HTTP 요청을 SSE 스트림에 동적으로 업그레이드하여 유연성을 높일 수 있습니다. 넷째, 클라이언트는 헤더를 통해 MCP-Session-ID를 제공하므로 서버가 세션 정보를보다 유연하게 관리 할 수 있습니다. 마지막으로 완전히 무국적으로 서버 작동 모드를 지원하여 시스템의 확장 성을 크게 향상시킵니다.
이 기술 혁신을 홍보하는 주된 이유는 기존 HTTP+SSE 전송 솔루션에 많은 기술 병목 현상이 있기 때문입니다. 연결 후 복구 기능 부족이 분리되어 클라이언트가 전체 세션을 다시 시작해야합니다. 서버는 연속 SSE 연결을 지원하기 위해 고 가용성을 유지해야합니다. SSE는 유연한 양방향 데이터 상호 작용을 달성 할 수없는 단방향 통신 만 지원합니다. 새로운 "스트림 가능한 HTTP"전송 방법은 이러한 문제를 성공적으로 해결했으며 시스템의 전반적인 성능과 확장 성을 크게 향상 시켰습니다.
개발자의 경우이 업데이트는 많은 편의 시설을 제공합니다. MCP 서버를 구현하는 것이 더 쉽고 일반 HTTP 서버 만 MCP를 지원할 수 있으며 더 이상 전용 SSE 서버를 구축 할 필요가 없습니다. 긴 연결을 지원하지 않는 Vercel, Cloudflare, AWS Lambda 등과 같은 클라우드 플랫폼에 배포하는 것이 더 쉽습니다. 호환성이 크게 향상되었으며 표준 HTTP로서 새로운 솔루션은 CDN, API 게이트웨이 및로드 밸런싱과 완벽하게 통합 될 수 있습니다. 확장 성이 크게 향상되었으며, 무국적 모드 작동을 지원하며, 필요할 때 SSE로 동적으로 업그레이드 할 수 있습니다.
인프라 및 서버 아키텍처 측면에서 새로운 솔루션은 혁신적인 변화를 가져옵니다. 무국적 서버가 가능하며 서버는 더 이상 클라이언트 세션 정보를 지속적으로 저장할 필요가 없습니다. 마이크로 서비스 아키텍처에 더 적합하며 REST API, GraphQL,로드 밸런싱, CDN 및 기타 시스템과 쉽게 통합 할 수 있습니다. 서버 리소스 활용률이 높고 처리 요청 후 리소스가 해제 될 수 있으며, 이는 동시 동시성 시나리오에 적합합니다.
SSE의 많은 문제에도 불구하고 Anthropic은 WebSocket을 대안으로 선택하지 않았다는 점은 주목할 가치가 있습니다. 이는 주로 다음 기술 고려 사항을 기반으로합니다. WebSocket은 긴 연결을 유지 해야하는 반면 MCP는 주로 RPC와 같은 모드를 채택하고 각 요청은 독립적으로 실행됩니다. WebSocket은 HTTP 헤더 정보를 전송할 수 없으므로 인증 프로세스가 복잡해집니다. WebSocket은 Post가 아닌 Get 업그레이드 만 지원하며 MCP가 주로 사용하는 게시물 요청과 호환되지 않습니다. 따라서 마침내 HTTP를 계속 사용하기로 결정했지만 서버는 SSE 또는 WebSocket을 강요하는 대신 필요에 따라 SSE로 업그레이드 할 수있는 기능을 제공했습니다.
전반적 으로이 업데이트는 MCP가 더 가볍고 유연하게 만들어지며 서버는 독립적으로 스트리밍을 지원할지 여부를 결정할 수 있습니다. 배포 프로세스는 상당히 단순화되며 서버리스 아키텍처에 적합합니다. 호환성이 크게 향상되며 다양한 네트워크 인프라에서 완벽하게 작동 할 수 있습니다. 서버 리소스 활용률이 높으며 대규모 동시 요청을 지원합니다.
이 혁신적인 변화로 인해 MCP 서버는보다 단순하고 효율적이며 유연하며 대규모 분산 배포를 지원할 수 있으며 SSE의 한계에서 완전히 벗어나 AI 모델과 응용 프로그램 간의 커뮤니케이션을위한 새로운 장을 열 수 있습니다. 프로젝트 주소 : https://github.com/modelcontextprotocol/specification/pull/206