FastMCP로 자체 MCP 서버 구현해보기
FastMCP
패키지를 사용하여 MCP 서버를 구축하고, 이를 Cursor AI 에디터에 연동하는 방법을 정리합니다.
FastMCP 서버 작성
FastMCP는 간단한 데코레이터를 사용하여 MCP 서버를 쉽게 만들 수 있도록 도와주는 파이썬 라이브러리입니다. 다음은 FastMCP를 사용하여 간단한 MCP 서버를 작성하는 예제 코드입니다.
from fastmcp import FastMCP
# MCP 서버 생성
mcp = FastMCP("Demo")
@mcp.tool()
def get_message(message) -> str:
"""동작 구현"""
return message
@mcp.resource("greeting://{name}")
def get_greeting(name: str) -> str:
"""Get a personalized greeting"""
return f"Hello, {name}!"
@mcp.prompt()
def prompt(message: str) -> str:
return f"""
당신은 데이터의 메시지를 가공하는 AI 어시스턴트입니다.
사용 가능한 도구:
- get_message(message) - 메시지 확인
사용자 메시지: {message}
"""
if __name__ == "__main__":
mcp.run()
로컬 MCP 서버 실행
작성한 파이썬 파일을 다음과 같이 실행하여 MCP 서버를 시작할 수 있습니다.
# main.py 파일을 개발 모드로 실행
mcp dev main.py
서버가 정상적으로 실행되면 http://localhost:5173
주소로 접속하여 콘솔 화면을 확인할 수 있습니다.
Cursor AI에 MCP 등록
이제 로컬에서 실행 중인 MCP 서버를 Cursor AI 에디터에 등록할 차례입니다.
- Cursor AI의 설정(Settings) 화면으로 이동합니다.
- ‘add new global MCP Server’를 클릭합니다.
-
다음과 같이 로컬 MCP 서버 정보를 JSON 형식으로 입력합니다.
{ "mcpServers": { "lower_upper": { "command": "uv", "args": [ "run --with mcp mcp run /path/to/your/main.py" ] } } }