FastMCP는 "MCP 서버를 빨리 만드는 Python 라이브러리"라고만 소개하기엔 조금 아깝다. README의 첫 예제는 FastMCP("Demo 🚀")를 만들고, Python 함수에 @mcp.tool을 붙인 뒤, mcp.run()을 호출하는 식으로 끝난다. 단순해 보이지만 이 구조가 repo의 핵심이다. MCP를 별도 프로토콜 작업으로 밀어내지 않고, Python 함수의 타입과 docstring, 실행 흐름 안으로 끌어온다.
FastMCP가 맡는 영역은 꽤 넓다. 함수 선언에서 schema, validation, documentation을 자동으로 만들고, 클라이언트는 URL로 서버에 연결한다. 그 뒤 transport negotiation, authentication, protocol lifecycle 같은 부분을 프레임워크가 처리한다. 서버 쪽에서는 tools, resources, prompts를 노출하고, 클라이언트 쪽에서는 local 또는 remote MCP 서버에 붙는 모델을 제공한다. README가 Servers, Apps, Clients를 세 축으로 나누는 이유가 여기 있다.
이 저장소가 지금 눈에 띄는 이유는 숫자 때문이기도 하다. README는 FastMCP 1.0이 2024년에 공식 MCP Python SDK에 들어갔고, 현재 standalone 프로젝트는 하루 100만 다운로드, 전체 언어권 MCP 서버의 70%가 어떤 형태로든 FastMCP를 쓴다고 설명한다. 이번 GitHub 트렌드에서도 Python repo로 rank 13, 오늘 stars 77을 기록했다.
하지만 더 흥미로운 대목은 후반의 Prefect Horizon 소개다. GitHub에서 MCP 서버를 배포하고, branch preview와 rollback을 제공하고, private registry, SSO, tool-level RBAC, audit log, observability, governance까지 다룬다고 적는다. 여기서 MCP는 더 이상 "LLM에 기능 하나 붙이는 방법"이 아니다. 회사 안의 에이전트가 어떤 도구를 실행할 수 있는지, 어떤 서버가 승인됐는지, 실패했을 때 되돌릴 수 있는지를 관리하는 인프라가 된다.
그래서 FastMCP의 관전 포인트는 플러그인보다 실행 모델에 있다. 빠른 데모는 입구다. 진짜 가치는 Python 함수에서 MCP tool schema가 나오고, 서버와 클라이언트가 같은 프로토콜 생애주기 안에서 움직이며, 나중에는 운영 게이트웨이까지 이어질 수 있다는 점이다. 개인 프로젝트에는 일부 기능이 무거울 수 있다. 반대로 조직에서 MCP 서버가 여러 개로 늘어나는 순간, 이런 프레임워크는 편의 기능이 아니라 사고를 줄이는 기본 장치가 된다.