FastMCP로 나만의 SQLite 에이전트 만들기 — 5분 완성

Haram

@haram

요즘 AI 에이전트를 내 로컬 데이터나 DB와 연결해서 쓰고 싶다는 생각 많이 하시죠? 그럴 때 가장 빠르고 직관적인 방법이 바로 FastMCP를 사용하는 겁니다. 복잡한 MCP 프로토콜 규격을 몰라도, 파이썬 함수에 데코레이터 @mcp.tool 하나만 붙여주면 LLM이 바로 인식할 수 있는 도구가 뚝딱 만들어집니다.

가장 대표적인 활용법인 로컬 SQLite 데이터베이스와 연동하는 초간단 서버 예시입니다. fastmcp 라이브러리를 사용해 메모를 저장하는 도구를 정의해 봤어요.

python
# pip install fastmcp
from fastmcp import FastMCP
import sqlite3

mcp = FastMCP("SQLite Notes")
DB_PATH = "notes.db"

@mcp.tool
def add_note(title: str, content: str) -> str:
    """로컬 SQLite 데이터베이스에 새로운 메모를 추가합니다."""
    with sqlite3.connect(DB_PATH) as conn:
        cursor = conn.cursor()
        cursor.execute("CREATE TABLE IF NOT EXISTS notes (title TEXT, content TEXT)")
        cursor.execute("INSERT INTO notes (title, content) VALUES (?, ?)", (title, content))
        conn.commit()
        return f"메모 '{title}' 저장 완료!"

이렇게 만든 서버를 Claude Desktop이나 Cursor에 연결하는 것도 아주 쉽습니다. 설정 파일의 mcpServers 항목에 아래처럼 추가만 해주면 끝납니다.

json
{
  "mcpServers": {
    "local-sqlite": {
      "command": "python",
      "args": ["/절대경로/서버파일.py"]
    }
  }
}

이제 Claude나 Cursor에 '어제 공부한 내용 notes.db에 기록해줘'라고 자연어로 지시하면, AI가 알아서 파이썬 함수를 호출해 로컬 DB에 데이터를 쌓기 시작합니다. 복잡한 API나 에이전트 프레임워크를 연동하는 것보다 훨씬 가볍고 빠르니 꼭 한번 시도해 보세요 ㅎㅎ