피드로 돌아가기
How to Build an MCP Server with Gradio
Hugging Face BlogHugging Face Blog
Backend

Gradio가 Python 함수를 MCP 서버로 변환하여 LLM이 직접 호출 가능한 도구로 노출

How to Build an MCP Server with Gradio

2025년 4월 30일6beginner

Context

LLM이 외부 도구를 호출하는 표준화된 방법이 필요했으며, 개발자들이 Python 함수를 LLM에서 사용 가능하게 만드는 복잡한 과정을 단순화해야 했다.

Technical Solution

  • MCP 서버 런칭: demo.launch(mcp_server=True) 설정으로 Gradio 앱을 Model Context Protocol 서버로 변환
  • 함수 기반 도구 생성: Python 함수의 docstring을 자동 파싱하여 LLM 도구 설명 및 파라미터 정의
  • SSE 엔드포인트 노출: HTTP http://your-server:port/gradio_api/mcp/sse를 통해 MCP 클라이언트에 연결
  • 다중 기능 지원: Tools, Resources, Prompts 세 가지 MCP 기능을 Decorator로 구현
  • 클라우드 호스팅: Hugging Face Spaces에서 무료 MCP 서버 배포 및 인증 토큰 기반 Private Space 지원
  • 성능 모니터링: 모든 MCP 도구의 성공률, 레이턴시 백분위수, 요청 수를 "View API" 페이지에서 색상 코딩(녹색 100%, 빨강 0%, 주황 중간)으로 표시

Impact

MCP 서버 구축을 5줄의 Python 코드로 단축. 월 100만 명 이상의 개발자가 사용하는 Gradio 플랫폼에 통합.

Key Takeaway

ML 인터페이스 라이브러리가 표준 프로토콜(MCP)과 통합되어, 개발자가 웹 UI와 LLM 도구를 동일한 Python 함수 기반으로 동시 제공할 수 있게 되었다. 이는 AI 애플리케이션의 다중 인터페이스 배포 복잡도를 획기적으로 감소시킨다.


데이터 처리, 계산, 생성 작업을 담당하는 Python 함수가 있다면, Gradio MCP를 도입하여 동일 함수를 웹 UI와 LLM 클라이언트(Claude Desktop, Cursor, Cline)에서 동시에 노출할 수 있다. 이를 통해 LLM이 도구 호출로 정확한 계산(예: 문자 개수 세기)을 수행하고, 사용자는 웹 인터페이스로 대화형 사용이 가능해진다.

원문 읽기