MCP Python SDK — MCP 프로토콜

MCP·Skill / MCP 프로토콜 / py-sdk.html

MCP 프로토콜원문등록 2026-10-18

Python로 MCP 서버와 클라이언트를 만드는 공식 SDK

기본 정보

프로그램 이름MCP Python SDK (MCP 파이썬 SDK)
한 줄 소개Python로 MCP 서버와 클라이언트를 만드는 공식 SDK
개발·유지Model Context Protocol 프로젝트
공식 홈페이지https://modelcontextprotocol.io/docs/sdk
공식 문서https://github.com/modelcontextprotocol/python-sdk
설치·배포uv add "mcp[cli]" 또는 pip install "mcp[cli]"
동작 환경Python 3.10 이상
라이선스MIT 라이선스
안정 버전2.3.0 (PyPI, 2026-10 확인) — 확인일 2026-10-18
GitHub 저장소https://github.com/modelcontextprotocol/python-sdk
분류MCP 프로토콜 (태그: MCP, SDK, Python, 서버 개발, 에이전트)

이 프로그램은 무엇인가?

MCP Python SDK는 Python로 MCP 서버와 클라이언트를 만드는 공식 SDK입니다. 데코레이터 API를 사용하면 20줄 내외로 도구 하나를 노출하는 서버를 완성할 수 있습니다.

FastAPI·Flask처럼 익숙한 Python 패턴을 따르며, AnyIO 기반 비동기 I/O로 stdio·Streamable HTTP 전송을 지원합니다. 데이터 분석·머신러닝 도구를 MCP로 노출할 때 자연스러운 선택입니다.

어떤 문제를 해결하는가?

  • Python로 만든 사내 도구·모델을 MCP로 노출해야 하는 상황
  • FastAPI·데이터 파이프라인과 MCP 서버를 통합해야 하는 상황
  • uv·pip 등 Python 생태계 도구로 배포해야 하는 상황

주요 기능

데코레이터 API

@mcp.tool() 데코레이터로 도구를 간단히 정의

  • 활용 상황: 최소 코드로 서버 구축
  • 얻는 결과: Python 함수가 곧 MCP 도구
  • 제한 사항: 비동기 함수 패턴 이해 필요

다중 전송

stdio·Streamable HTTP 전송 지원

  • 활용 상황: 로컬·원격 서버 모두 구현
  • 얻는 결과: FastAPI와 통합 가능
  • 제한 사항: 원격 배포 시 인증 설정 필요

CLI 내장

mcp CLI로 서버 실행·테스트

  • 활용 상황: 빠른 개발 루프
  • 얻는 결과: uvx·pipx로 간편 배포
  • 제한 사항: CLI 옵션은 버전에 따라 다름

AnyIO 기반

asyncio·trio 등 Python 비동기 런타임 지원

  • 활용 상황: 기존 비동기 코드와 통합
  • 얻는 결과: 이벤트 루프 호환성
  • 제한 사항: 동기 코드는 별도 처리 필요

설치 및 실행

uv (권장)

uv 패키지 관리자로 빠르게 설치합니다.

uv add "mcp[cli]"

pip

pip로 설치합니다.

pip install "mcp[cli]"

pipx

CLI 도구로 격리 설치합니다.

pipx install "mcp[cli]"

실제 사용 예제

서버 만들기

데코레이터로 도구를 정의하고 서버를 실행합니다.

@mcp.tool() def add(a:int,b:int)->int: return a+b

서버 실행

stdio 전송으로 서버를 시작합니다.

mcp run server.py

클라이언트 연결

McpClient로 원격·로컬 서버에 연결합니다.

async with client_session(...) as client: await client.list_tools()

장점과 한계

장점

  • MIT 라이선스, 가장 많은 Python MCP 생태계
  • 데코레이터로 최소 코드 서버 구축
  • FastAPI·AnyIO와 자연스러운 통합
  • uv·pipx 등 Python 배포 도구와 호환

사용 전에 고려할 점

  • Python GIL로 대규모 동시성에는 제한
  • TypeScript SDK 대비 일부 고급 기능 지원 시점 차이
  • 비동기 패턴을 익혀야 함

비슷한 프로그램과 비교

프로그램특징이런 경우에 적합
MCP TypeScript SDKWeb 표준 기반 공식 SDKNode·Bun·Deno 환경
FastMCP고수준 Python 서버 프레임워크빠른 프로토타이핑
mcp-usePython 에이전트 프레임워크에이전트·서버 통합 개발

공식 자료 및 추가 학습

버전·지원 환경 정보는 2026-10-18 기준으로 공식 사이트에서 확인한 값입니다. 설치 명령은 사용하는 배포판과 버전에 따라 달라질 수 있으므로 공식 설치 문서를 함께 확인하세요.

실제 실행 화면

합성 예시 — 실제 실행 결과가 아닙니다. 화면은 합성 예시이며 실제 실행 결과가 아닙니다.

MCP Python SDK 설치와 서버 실행 예시

실제 운영 중인 서버

이 문서는 화면 표시용 가상 디렉터리의 항목입니다. 실제 서버 파일시스템과 연결되지 않으며, 파일 실행이나 시스템 명령을 수행하지 않습니다.