Upgrade to Pro — share decks privately, control downloads, hide ads and more …

今話題のMCPサーバーをFastAPIでサッと作ってみた

 今話題のMCPサーバーをFastAPIでサッと作ってみた

2025.4.27
甲斐国もくもく会 x 山梨WordPress Meetup 〜春のLT大会〜 LT

Yuuki Shimizu

April 27, 2025
Tweet

More Decks by Yuuki Shimizu

Other Decks in Programming

Transcript

  1. 山梨のIT系イベント開催情報サイト を運営しています! 3 Yamanashi Developer Hub https://hub.yamanashi.dev 宣伝 • 山梨県で開催されるIT系イベントを

    一覧表示 • 県内の方はもちろん、県外から遊びに来 る方も、ぜひ活用してください! 地元貢献と勉強のため 💪
  2. どんな MCP サーバーがあるの?🤔 • ここにまとめられている ◦ https://github.com/modelcontextprotocol/servers ◦ まとめられているもの以外も、探せばたくさんありそう 8

    GitHub MCP Server GitHub リポジトリ管理、ファイル操作、プルリクエスト処理 PostgreSQL MCP Server PostgreSQLデータベースへの読み取り Google Drive MCP Server Google Driveのファイルアクセス、検索、ドキュメントやスプレッドシートの操作 Slack MCP Server Slack メッセージ管理、チャンネル操作、ユーザー情報取得 Notion MCP Server Notionのページやデータベースへの読み書き、Markdown形式のコンテンツ操作 非公式も含めて 400件 以上!!
  3. FastAPI-MCP 組み込みでやったこと(1/2) • FastAPI-MCPライブラリをインストール pip install fastapi-mcp • FastAPI-MCPライブラリをインポート from

    fastapi_mcp import FastApiMCP • MCPツール化したい既存のエンドポイントにtags, idを指定 @app.get("/events", response_model=List[Event], tags=["events"], operation_id="get_events") async def read_events(... 12
  4. FastAPI-MCP 組み込みでやったこと(2/2) • MCPサーバーの実装 13 mcp = FastApiMCP( app, name="yamanashi-tech-events-server",

    description="API to retrieve information on tech events in Yamanashi Prefecture", base_url="http://localhost:8000", include_operations=["get_events"] ) mcp.mount()
  5. 14 FastAPI アプリケーション connpass API MCP サーバー AI アシスタント MCP

    クライアント 山梨のテックイベントの開催情報を教えて! 山梨県で開催されるテックイベントについて、以下の情報が 見つかりました! 【開催予定のイベント】...... 󰘋 🤖 Yamanashi Tech Events API
  6. 16

  7. 18

  8. 19

  9. 20

  10. 21

  11. このLTで伝えたいことを3行で • MCP サーバーが既に多くリリースされているので、 普段使いしているツールも MCP で操作できちゃうかも • もし MCP

    サーバーを作るなら、FastAPI-MCP が サッと作れて良さそう • 山梨のITコミュニティの発見に   Yamanashi Developer Hub をぜひ活用してね 😉 23