Smart AI Life Knowledge Base

Smart AI Life 実践ガイド

生成AI、ローカルLLM、スマートホーム自動化で日々の暮らしをゆたかに整える実践ドキュメント。

【Antigravity自律運用】FastMCPでMac環境を完全操縦するカスタムツールの設計と実装

【背景・読者の切実な課題】 AIエージェントに「ターミナル操作」「ファイル編集」「ブラウザ自動操作」「Docker管理」を任せようとしても、従来の個別スクリプトや拡張機能では設定がバラバラで、権限管理やツール仕様の不整合ですぐに破綻します。

🚀 生成AI×リスキリングSponsored / PR

オーナー指示は test。本稿では、まず test を目的に Mac 上で FastMCP を起動し、1 つのツールを Antigravity / Hermes Agent から呼び出す最小構成を確認する。ここから Shell・Docker・AppleScript・SQLite を安全に MCP 化し、複数サーバーを連鎖呼び出しする基盤へ拡張する。

1. FastMCP がローカルツールを統一する

Model Context Protocol は、AIエージェントと外部ツールを接続する共通仕様として公開以降、実装・検証が継続されている。最新のリファレンスと仕様は Model Context Protocol の GitHub で確認できる。発表時点の仕様だけで判断せず、現在のサーバー実装・クライアント設定・ツール定義が実際に動作するかを追跡することだ。

FastMCP は Python のデコレータでツールを定義し、ローカル MCP サーバーとして公開する。まず test として、単一ツールを起動してエージェントから呼び出せるかを確認する。ここで成功すれば、後続の Shell・Docker・AppleScript 拡張も同じ形式で増やせる。

2. FastMCP 最小サーバーの作り方

from fastmcp import FastMCP
mcp = FastMCP("test-mac-tool")
@mcp.tool
def echo(message: str) -> str:
return f"test: {message}"
mcp.run()

  • サーバー名に test を含め、どの検証用サーバーかを判別可能にする。
  • 入出力は型付きで定義し、不正な文字列や巨大な返答を避ける。
  • 起動ログを JSON で保存し、ツール呼び出し順を確認できるようにする。

3. Mac 操縦のキラーツールを安全に MCP 化する

🚀 生成AI×リスキリングSponsored / PR