📢 Webサイト閉鎖と移転のお知らせ
このWebサイトは2026年9月に閉鎖いたします。
新しい記事は移転先で追加しております。(旧サイトでは記事を追加しておりません)

170行目: 170行目:
KiCAD Python APIが正常にインポートできるか確認する。<br>
KiCAD Python APIが正常にインポートできるか確認する。<br>
  python3 -c "import pcbnew; print(pcbnew.Version())"
  python3 -c "import pcbnew; print(pcbnew.Version())"
<br><br>
== クライアント接続設定 ==
==== Claude Desktopからの接続 ====
Claude Desktopの設定ファイルを編集する。<br>
<br>
設定ファイルの場所は、以下の通りである。<br>
* Linuxの場合
*: ~/.config/Claude/claude_desktop_config.json
* Windowsの場合
*: %APPDATA%\Claude\claude_desktop_config.json
<br>
設定ファイルの内容を編集する。<br>
<syntaxhighlight lang="json">
{
  "mcpServers": {
    "kicad-server": {
      "command": "/home/<ユーザ名>/kicad-mcp-server/venv/bin/python",
      "args": ["/home/<ユーザ名>/kicad-mcp-server/server.py"],
      "env": {
        # RHEL / SUSEの場合
        "PYTHONPATH": "/usr/lib64/python3.x/site-packages"
        # Debianの場合
        "PYTHONPATH": "/usr/lib/python3/dist-packages"
      }
    }
  }
}
</syntaxhighlight>
<br>
環境変数 <code>PYTHONPATH</code> を設定することにより、KiCAD Python APIにアクセスできるようにする。<br>
<br>
Claude Desktopを再起動して、KiCAD MCPサーバが利用可能であることを確認する。<br>
<br><br>
== 設定 ==
KiCAD MCPサーバは、環境変数 または .envファイル を使用して設定することができる。<br>
<br>
==== 主要な設定オプション ====
<center>
{| class="wikitable"
|-
! 環境変数
! 説明
! 例
|-
| KICAD_SEARCH_PATHS
| KiCADプロジェクトを検索するディレクトリ<br>(カンマ区切りのリスト)
| ~/pcb,~/Electronics,~/Projects
|-
| KICAD_USER_DIR
| デフォルトのKiCADユーザディレクトリを上書きする。
| ~/Documents/KiCadProjects
|-
| KICAD_APP_PATH
| デフォルトのKiCADアプリケーションパスを上書きする。
| /Applications/KiCad9/KiCad.app
|}
</center>
<br>
環境設定ファイル (.envファイル) を作成する。<br>
<br>
.envファイルは、KiCAD MCPサーバのプロジェクトルートディレクトリに配置する。<br>
したがって、main.pyファイル や .env.exampleファイルと同じ階層、kicad-mcpディレクトリ直下に配置することが標準的である。<br>
<br>
* Linux
*: <syntaxhighlight lang="sh">
# .envファイル
KICAD_SEARCH_PATHS=~/pcb,~/Electronics,~/Projects
KICAD_USER_DIR=~/Documents/KiCadProjects
KICAD_APP_PATH=/usr/bin/kicad
</syntaxhighlight>
<br>
* Winodws
*: <syntaxhighlight lang="powershell">
# .envファイル
KICAD_SEARCH_PATHS=C:/Users/<ユーザ名>/pcb,C:/Users/<ユーザ名>/Electronics,C:/Users/<ユーザ名>/Projects
KICAD_USER_DIR=C:/Users/<ユーザ名>/Documents/KiCadProjects
KICAD_APP_PATH=C:/Program Files/KiCad/9.0/bin/kicad.exe
</syntaxhighlight>
<br><br>
== プロジェクト構造 ==
KiCAD MCPサーバは、モジュール構造で構成されている。<br>
<br>
kicad-mcp/
├── README.md                      # プロジェクトドキュメント
├── main.py                        # サーバを実行するエントリーポイント
├── requirements.txt                # Python依存関係
├── .env.example                    # 環境設定の例
├── kicad_mcp/                      # メインパッケージディレクトリ
│  ├── __init__.py
│  ├── server.py                  # MCPサーバのセットアップ
│  ├── config.py                  # 設定定数と設定項目
│  ├── context.py                  # ライフサイクル管理と共有コンテキスト
│  ├── resources/                  # リソースハンドラ
│  ├── tools/                      # ツールハンドラ
│  ├── prompts/                    # プロンプトテンプレート
│  └── utils/                      # ユーティリティ関数
├── docs/                          # ドキュメント
└── tests/                          # ユニットテスト
<br>
下表に、各ディレクトリの役割を示す。<br>
<br>
<center>
{| class="wikitable"
|-
! ディレクトリ
! 説明
|-
| kicad_mcp/resources/
| KiCADプロジェクトファイル、回路図、PCBレイアウト等のリソースを処理するハンドラを格納する。<br>これらのハンドラは、MCPクライアントからのリソース要求に応答する。
|-
| kicad_mcp/tools/
| KiCADの操作を実行するツールのハンドラを格納する。<br>各ツールは特定の機能 (DRCの実行、Gerberファイルの出力等) を提供する。
|-
| kicad_mcp/prompts/
| AIアシスタントが使用するプロンプトテンプレートを格納する。<br>これらのテンプレートは、特定のタスクに対して適切なコンテキストを提供する。
|-
| kicad_mcp/utils/
| ファイル操作、パスの検証、ログ処理等の共通ユーティリティ関数を格納する。
|-
| docs/
| APIドキュメント、使用例、開発ガイド等の詳細なドキュメントを格納する。
|-
| tests/
| 各モジュールのユニットテストおよび統合テストを格納する。
|}
</center>
<br><br>
<br><br>