Gradio 5.38.0 MCP 서버 개선
Gradio 버전 5.38.0은 Model Context Protocol (MCP) 서버 구현에 다섯 가지 주요 개선을 도입하여 개발자가 Hugging Face Spaces에서 AI 기반 도구를 구축, 호스팅 및 통합하는 방식을 간소화합니다.
원활한 로컬 파일 지원
원격 Gradio MCP 서버는 이전에 서버와 클라이언트가 서로 다른 머신에 호스팅되어 있었기 때문에 입력 파일(이미지, 비디오, 오디오 등)이 공개 URL을 통해 접근 가능해야 했습니다. 파일을 온라인에 호스팅하는 수동 단계를 없애기 위해 Gradio는 이제 "File Upload" MCP 서버를 포함합니다.
이 전용 서버를 통해 LLM 에이전트는 파일을 직접 Gradio 애플리케이션에 업로드할 수 있습니다. Gradio MCP 서버의 도구가 파일 입력을 필요로 할 때, 연결 문서가 자동으로 "File Upload" MCP 서버를 초기화하는 방법에 대한 안내를 제공하여 이 과정을 용이하게 합니다.
실시간 진행 알림
장시간 실행되는 AI 작업 중 사용자 경험을 향상시키기 위해 Gradio는 이제 진행 알림을 MCP 클라이언트에 스트리밍합니다. 이를 통해 사용자는 도구의 실행 상태를 실시간으로 모니터링할 수 있습니다. 개발자는 자신의 MCP 도구가 이러한 진행 상태를 발생하도록 구현하여 이 기능을 활용하도록 권장됩니다.
자동 OpenAPI 사양 변환
Gradio는 기존 RESTful API를 LLM 환경에 자동으로 통합하기 위해 gr.load_openapi 함수를 도입했습니다. 이전에는 개발자가 API 엔드포인트를 MCP 도구에 수동으로 매핑해야 했으며, 이 과정은 종종 시간 소모가 크고 오류가 발생하기 쉬웠습니다.
gr.load_openapi를 사용하면 개발자는 OpenAPI 스키마(기계가 읽을 수 있는 JSON 파일)에서 직접 Gradio 애플리케이션을 생성할 수 있습니다. 애플리케이션을 mcp_server=True로 실행하면 Gradio가 OpenAPI 사양을 자동으로 MCP 서버로 변환하여 비즈니스 백엔드를 단 한 줄의 코드로 MCP 호환 LLM에 통합할 수 있습니다.
gr.Header를 통한 향상된 인증
사용자를 대신해 서비스를 호출할 때 인증 헤더 관리를 간소화하기 위해 Gradio는 이제 MCP 서버 인수에 gr.Header 타입을 지원합니다.
개발자가 인수를 gr.Header로 지정하면 Gradio가 들어오는 요청에서 해당 헤더를 자동으로 추출하여 함수에 전달합니다. 또한 MCP 연결 문서는 자동으로 필요한 헤더를 표시하여 사용자가 서버에 연결하기 위해 제공해야 할 자격 증명을 명확히 전달합니다.
맞춤형 도구 설명
Gradio는 함수 이름과 docstring을 기반으로 도구 설명을 자동으로 생성하지만, 이제 개발자는 api_description 매개변수를 사용하여 이러한 설명을 명시적으로 재정의할 수 있습니다. 이를 통해 도구가 LLM에 어떻게 설명되는지를 보다 정확하게 제어할 수 있어, 에이전트가 도구의 목적과 적용을 더 정확히 이해하도록 보장합니다.