2026-01-13 / Tech
Google Antigravity AI エージェントに自作の Python MCP サーバーを接続する方法を完全解説します。
📋 前提条件
- Python 3.10+ がインストール済み
uvパッケージマネージャーがインストール済み- 仮想環境 (
.venv) が作成済み fastmcpパッケージがインストール済み
📁 推奨プロジェクト構造
project_root/
├── .venv/ # 仮想環境
├── pyproject.toml # パッケージ定義
├── my_mcp_server/
│ ├── __init__.py # 必須!
│ └── server.py # MCPサーバー本体
└── another_server/
├── __init__.py
├── server.py
└── utils.py
🔧 Step-by-Step 設定手順
1. pyproject.toml を作成
[project]
name = "my-project"
version = "0.1.0"
requires-python = ">=3.10"
dependencies = [
"fastmcp",
"numpy",
# その他の依存関係
]
[build-system]
requires = ["setuptools", "wheel"]
build-backend = "setuptools.build_meta"
[tool.setuptools.packages.find]
where = ["."]
include = ["my_mcp_server*", "another_server*"]
重要:
[tool.setuptools.packages.find]を使用することで、サブパッケージが自動検出されます。
2. __init__.py を各ディレクトリに配置
空ファイルでOK。これがないとPythonはディレクトリをパッケージとして認識しません。
# PowerShell
New-Item -ItemType File -Path my_mcp_server/__init__.py
3. Editable モードでインストール
cd project_root
uv pip install -e .
-e (Editable) の意味: ソースコードへのシンボリックリンクを作成。コードを編集すると即座に反映される。開発時は必須。
4. mcp_config.json を設定
ファイルパス: C:\Users\{USER}\.gemini\antigravity\mcp_config.json
{
"mcpServers": {
"my-server": {
"command": "C:/path/to/.venv/Scripts/python.exe",
"args": [
"-m",
"my_mcp_server.server"
],
"cwd": "C:/path/to/project_root",
"env": {
"API_KEY": "your-api-key"
}
}
}
}
5. Antigravity で接続確認
MCP管理画面 → サーバー名 → Configure → "Enabled" になれば成功!
⚠️ よくあるエラーと解決策
| エラー | 原因 | 解決策 |
|---|---|---|
ImportError: attempted relative import... |
スクリプトとして直接実行 | args を ["-m", "package.module"] に変更 |
ModuleNotFoundError |
パッケージ未インストール | uv pip install -e . を実行 |
sqlite3.OperationalError |
DBディレクトリが存在しない | os.makedirs(dir, exist_ok=True) を追加 |
No such file or directory |
パスが間違っている | 絶対パス + cwd を設定 |
📝 mcp_config.json 設定キー一覧
| キー | 説明 | 例 |
|---|---|---|
command |
Python実行ファイルのフルパス | "C:/.venv/Scripts/python.exe" |
args |
コマンドライン引数 | ["-m", "package.server"] |
cwd |
作業ディレクトリ (必須) | "C:/project_root" |
env |
環境変数 | {"KEY": "value"} |
✅ ベストプラクティス
- パスはスラッシュ (
/) で統一 — JSONでのエスケープ問題を回避 -mでモジュール実行 — 相対インポートが正しく動作cwdを必ず設定 — パッケージルートを明示uv pip install -e .— 開発時は必須- __init__.py を忘れずに — 全サブディレクトリに配置