데브허브 | DEVHUB | MCP Sampling Tutorial — How to Build LLM-Powered MCP Tools (Python + FastMCP)MCP Sampling Tutorial — How to Build LLM-Powered MCP Tools (Python + FastMCP)
- MCP 샘플링은 MCP 서버가 클라이언트를 통해 LLM에 요청하여 응답을 받는 메커니즘입니다. 🔄
- 이를 통해 서버는 LLM을 직접 구성할 필요 없이 클라이언트가 설정한 LLM을 활용할 수 있습니다. 💡
- Python의 FastMCP 프레임워크를 사용하여 LLM 샘플링 기능을 MCP 도구에 쉽게 통합할 수 있습니다. 🐍
- 데모에서는 CSV 파일을 분석하고 LLM이 생성한 Python 코드를 실행하여 데이터 시각화 플롯을 만듭니다. 📊
- LLM이 생성한 코드를 실행하는 것은 잠재적으로 위험하지만, 시연 목적으로 사용되었습니다. ⚠️
- Fast Agent와 VS Code Insiders Edition 두 가지 클라이언트를 통해 샘플링 기능을 시연했습니다. 💻
- Fast Agent는 터미널에서 실시간 로그와 다른 LLM(서버: GPT-5 mini, 샘플링: Claude 3.5 Haiku) 사용을 보여주며, 바이너리 이미지 데이터를 멀티모달 LLM(GPT-5)으로 분석하여 설명합니다. 🤖
- VS Code Insiders는 샘플링 모델(예: GPT 4.1, Claude Sonnet 3.5)을 구성하고 생성된 플롯 이미지를 직접 렌더링하여 저장할 수 있게 합니다. 🖼️
- 서버는 LLM 응답을 기다리는 동안 다른 작업을 계속 처리할 수 있어 효율성을 높입니다. 🚀
- 샘플링 요청은 사용자 프롬프트, 시스템 프롬프트, 최대 토큰, 온도 등 다양한 매개변수를 포함할 수 있습니다. ⚙️