Trawling

MCP 공식 Ruby SDK, 7월 규격 지원·유지관리 기준 충족해 Tier 1 승격

MCP 공식 Ruby SDK가 Tier 1으로 승격됐습니다. `mcp` 1.2.0은 2026년 7월 28일 규격의 무상태 경로와 다중 왕복 요청을 지원하며, 2025년 11월 25일·2026년 7월 28일 규격의 고정 시험 세트에서 서버 67개와 클라이언트 50개의 채점 시나리오를 모두 통과했습니다. 다중 왕복 요청은 임시 도구 흐름에 해당하며, 지속 작업용 Tasks 확장은 발표 당시 로드맵에 있었습니다.

Model Context Protocol 공식 블로그에서 Ruby SDK 메인테이너 Koichi Ito는 2026년 10월 30일 공식 Ruby SDK가 Tier 1에 올랐다고 발표했습니다. 등급은 9월에 확정됐습니다. SDK는 7월 v1.0을 공개했을 때 Tier 2였으며, 이번 발표는 이후 Tier 1으로 승격된 경위를 전했습니다.

Tier 1의 평가 범위

Tier 1은 MCP SDK 세 등급 중 가장 높은 단계입니다. 프로토콜 지원뿐 아니라 적합성 시험, 새 규격 지원 일정, 유지보수와 문서도 평가합니다. 기준에는 채점 대상 시험 100% 통과, 영업일 기준 2일 안의 이슈 분류, 중요 P0 버그 7일 안의 수정, 안정판과 기능별 예제 문서가 포함됩니다. 평가 기록상 이슈 분류는 3건 모두 기준을 충족했고, P0 이슈 접수 사례는 없었습니다.

Ruby SDK는 2025년 11월 25일과 2026년 7월 28일 규격의 고정 시험 세트에서 서버 67개, 클라이언트 50개의 채점 시나리오를 모두 통과했습니다. 이 시험은 정해진 시나리오에서 SDK가 프로토콜 메시지를 주고받는 방식을 확인합니다. 실험적 확장은 Tier 1 필수 평가에 포함되지 않습니다. 또한 SDK는 Streamable HTTP로 대체된 구형 HTTP+SSE 전송을 구현하지 않습니다.

Ruby SDK는 mcp gem으로 MCP 서버와 클라이언트를 만듭니다. 서버는 도구·프롬프트·리소스를 MCP 호스트에 공개하고, 클라이언트는 다른 MCP 서버에 연결해 도구를 조회하고 호출합니다. mcp 1.2.0은 2026년 7월 28일 규격을 지원합니다.

세션 초기화와 무상태 경로를 함께 지원

기존 방식은 연결을 시작할 때 초기화 절차로 프로토콜 버전과 기능을 협상하고, 이후 요청에서 그 정보를 이어갔습니다. 새 무상태 경로에서는 프로토콜 버전과 클라이언트 기능 정보를 각 요청에 담습니다. 서버가 앞선 초기화 정보를 세션 상태로 보관할 필요가 줄어들어, 부하 분산기가 후속 요청을 다른 서버 인스턴스로 보내기 쉬워집니다.

Ruby SDK는 기존 초기화 절차와 새 무상태 경로를 함께 지원합니다. 이전 규격을 쓰는 클라이언트는 기존 방식으로 연결하고, 2026년 7월 규격을 쓰는 클라이언트는 무상태 경로를 이용할 수 있습니다. 같은 서버가 두 연결 방식을 나란히 처리합니다.

다중 왕복 요청은 임시 도구 흐름을 지원

다중 왕복 요청은 도구 처리 중 서버가 클라이언트로부터 추가 응답을 받아야 할 때 사용합니다. 서버는 input_required 결과에 필요한 입력 요청을 담아 최초 호출을 끝냅니다. 클라이언트는 그 응답을 inputResponses에 담아 새 도구 호출을 보냅니다. 두 호출은 독립적이며 JSON-RPC ID도 달라야 합니다. 서버가 requestState를 보냈다면 클라이언트는 값을 해석하거나 바꾸지 않고 후속 호출에 그대로 담습니다.

규격은 이 불완전 응답을 보통 독립된 응답으로 보내도록 권장합니다. SSE 스트림으로 보낼 경우에는 이 응답이 스트림의 마지막 메시지여야 합니다. 임시 도구 흐름에서는 후속 호출이 다른 서버 인스턴스에 도착해도, 서버가 requestState에서 필요한 상태를 복원할 수 있어 인스턴스 간 공유 저장소를 줄일 수 있습니다. 서버는 클라이언트가 돌려보낸 상태를 검증해야 하며, 사용자별 정보가 담겼다면 인증된 사용자와 결속해야 합니다.

장기간 상태를 보존하고 사용자 응답 뒤 처리를 재개하는 지속 작업은 Tasks를 이용하는 별도 경로입니다. Ruby SDK의 10월 발표는 새 Tasks 확장을 향후 로드맵에 포함했습니다. 따라서 발표된 다중 왕복 요청 지원은 임시 도구 흐름에 해당하며, Tasks를 이용한 지속 작업 지원까지 뜻하지는 않습니다. SDK에는 새 input_required 방식으로 작성한 서버 처리 코드가 2026년 이전 클라이언트에서도 작동하도록 호환 계층이 들어 있습니다.

업그레이드할 때는 입력 호환성 변화도 생길 수 있습니다. SDK 팀은 mcp 1.2.0부터 일부 1.x 버전이 규격 적합성, 보안 문제, 명확한 결함을 수정하기 위해 이전 버전에서 받아들였던 입력을 거부할 수 있다고 밝혔습니다. 공식 설치 안내는 Ruby 2.7 이상에서 Gemfile에 mcp를 추가하거나 gem install mcp로 설치하는 방법을 설명합니다.

참고 자료

오류 제보