Model Context Protocol (MCP) Python SDK가 버전 2.1.0을 출시하여 멀티모달 콘텐츠 지원과 클라이언트 구성 간소화를 도입했습니다. 주요 업데이트에는 `StdioServerParameters`를 `Client` 생성자에 직접 전달하고 프롬프트 메시지에서 `Image`와 `Audio`를 허용하는 기능이 포함됩니다.
- 프롬프트 메시지에서 이제 `Image`와 `Audio`를 허용하며, 프롬프트 함수는 콘텐츠 블록을 그대로 반환할 수 있습니다.
- `Client` 클래스는 `StdioServerParameters`를 직접 받아서 `Client(StdioServerParameters(command="uv", args=["run", "server.py"]))`와 같이 인스턴스화할 수 있습니다.
- 4 MiB 요청 본문 제한이 이제 `max_request_body_size`를 통해 SSE 트랜스포트 및 OAuth 엔드포인트에서 강제 적용됩니다.
- 핸들러 예외는 ERROR 수준으로 추적 정보와 함께 로깅되며, 클라이언트는 일반 오류 메시지를 보게 됩니다; `ToolError` 또는 `ResourceError`를 발생시키면 모델에 세부 정보가 보존됩니다.
- 콘텐츠 블록에 대한 도구 반환 주석이 더 이상 기본적으로 `outputSchema`를 광고하거나 `structuredContent`를 반환하지 않습니다; `structured_output=True`는 이전 동작을 복원합니다.
- TypedDict 도구 결과는 `NotRequired` 키를 직렬화하여 `null`로 만드는 대신 생략하며, 이로 인해 Python 3.10에서의 등록 실패가 수정되었습니다.
이러한 변경사항은 트랜스포트 전반에 걸쳐 요청 크기를 제한함으로써 보안을 개선하고, 더 간단한 클라이언트 설정으로 개발자 경험을 향상시키며, 2026년 이전 MCP 세션과의 호환성을 보장합니다.