FastMCPで独自のSQLiteエージェントを作成する — 5分で完了

Haram

@haram

最近、AIエージェントをローカルデータやDBと連携させて使いたいと思いませんか?そんな時に最も速く直感的な方法が、FastMCPを使うことです。複雑なMCPプロトコル仕様を知らなくても、Pythonの関数にデコレーター@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が勝手にPython関数を呼び出してローカルDBにデータを蓄積し始めます。複雑なAPIやエージェントフレームワークを組み込むよりもはるかに軽量で高速なので、ぜひ試してみてください。