Claude CodeとUnityをMCPでつなぐ ― MCP for Unity 導入手順とハマりどころ(Windows / Unity 6.3)

Claude CodeとUnityをMCP for Unityで連携する手順解説記事のアイキャッチ
目次

はじめに

Claude Code を使ってUnityのゲーム開発を進めていると、「コードは書いてくれるけど、シーンの組み立てやコンポーネントの設定は結局自分でやらないといけない」という壁にぶつかります。

これは、Unityのシーンやプレハブのファイルが 「fileID」や「guid」だらけのYAML(XMLやJSONのようなデータ記述形式の一種)で、テキストとして直接編集するのが現実的でないことが理由です。

この壁を越えてくれるのが MCP for Unity です。AIアシスタント(Claude Code など)を、起動中のUnityエディタに直接つないでくれるブリッジで、これを入れると「現在のシーンに赤・青・黄のキューブを作って」といった指示で、Claudeが実際にエディタを操作してシーンを組み立ててくれるようになります。

この記事では、Windows環境でMCP for UnityをClaude Codeにつなぐまでの手順を、実際に私がハマったポイントと一緒にまとめます。

日本語の情報がまだ少ない分野なので、これから試す方の備忘録になれば幸いです(私自身の忘備録も兼ねています)。

検証環境

  • OS: Windows(PowerShell 7.6.2)
  • Unity: 6.3 LTS(6000.3.9f1)
  • MCP for Unity: v9.7.1(CoplayDev/unity-mcp、MITライセンス・無料)
  • Claude Code(Claude Max プラン)
  • Python: 3.13.13
  • uv: 0.11.19

MCP for Unity は、UnrealとUnity向けのAIアシスタント「Aura」がスポンサー・メンテナンスしているオープンソースプロジェクトです。Unity社の公式製品ではありません。

全体像:一度きりの準備と、プロジェクトごとの作業

最初に作業の全体像を押さえておくと、見通しが良くなります。やることは大きく「一度だけやればいい準備」と「プロジェクトごとに繰り返す作業」に分かれます。

一度きりでOK(マシン全体に入るもの)

  • uv のインストール
  • Python のインストール
  • Claude Code CLI のインストール

プロジェクトごとに必要

  • MCP for Unity パッケージの追加
  • Claude Code へのクライアント設定(Configure)
  • 開発開始時のサーバ起動

つまり、一番手間のかかる前提ツールの準備は最初の一回だけ。2個目以降のプロジェクトでは、下半分の数分の作業を繰り返すだけで済みます。

STEP 1: 前提ツールのインストール(一度きり)

1-1. uv をインストールする

MCP for Unity の本体(MCPサーバ)はPythonで書かれていて、uv(Rust製の高速なPythonパッケージ・環境管理ツール)経由で起動されます。

PowerShellで以下を実行します。

irm https://astral.sh/uv/install.ps1 | iex

インストール後、PowerShellを開き直してからバージョンを確認します。

uv --version
uvx --version

両方ともバージョンが表示されればOKです。

1-2. Python をインストールする(最大のハマりどころ)

MCP for Unity は Python 3.10 以上を要求します(2026年6月時点)。ここで注意したいのが、最新メジャー版より一つ前の枯れたバージョンを選ぶことです。

出たばかりの最新版(執筆時点では3.14系)は、依存パッケージ側がまだ対応しきれていないことがあり、トラブルの原因になります。私は Python 3.13.13 を選びました。

python.org のダウンロードページから、3.13系の Windows installer (64-bit) を入手します。

インストーラの最初の画面で「Add python.exe to PATH」に必ずチェックを入れてください。ここを忘れると、後述するハマりに直結します。

Microsoft Store版のPythonは、Windowsのアプリ実行エイリアス周りでトラブルになりやすいので、python.org版を推奨します。

ハマりポイント①:python --version で「Python」としか出ない

私はインストール後、PATHへの追加チェックを入れ忘れていて、PowerShellpython --version を打つと番号が出ず「Python」とだけ返ってくる状態になりました。

PS C:\Users\user> python --version
Python

原因の切り分けに行ったことは、まず py(Python Launcher)で本体が入っているか確認しました。

py --version

ここで Python 3.13.13 と正しく出れば、Python本体は入っていると確定できます。問題は python コマンドが本物を指していないこと。

もう少し詳細を。PowerShellで以下のコマンドを入力します。

where.exe python

私の場合、出てきたのはこれだけでした。

C:\Users\user\AppData\Local\Microsoft\WindowsApps\python.exe

この WindowsApps\python.exe は、本物のPythonではなく、Windowsが用意している「Microsoft Storeへの案内役」のダミーファイルです。Pythonとしての機能は持っておらず、本物がPATHにないときに代わりに反応してしまうため、python と打っても正しく動きません。

ハマりポイント②:アプリ実行エイリアスの一覧に出ないこともある

「設定 → アプリ → アプリ実行エイリアス」でpythonのスタブをオフにする方法がよく紹介されますが、私の環境では一覧にpythonの項目自体がありませんでした。一覧に出ないケースもあるので、出なくても焦らなくて大丈夫です。

解決法:Modify で PATH を追加する

Pythonのバージョンやアプリ実行エイリアスだ出なくても入れ直す必要はありません。設定の追加だけで直ります。

  1. 「設定 → アプリ → インストールされているアプリ」で「Python 3.13.13」を探す
  2. 「…」メニューから「変更(Modify)」を選ぶ
  3. インストーラの「Modify」で進み、「Advanced Options」の画面で「Add Python to environment variables」にチェックを入れて適用

完了後、PowerShellを開き直して「where.exe python」を再確認します。

本物のパスが1行目に出てくれば成功です。

C:\Users\user\AppData\Local\Programs\Python\Python313\python.exe
C:\Users\user\AppData\Local\Microsoft\WindowsApps\python.exe

1-3. Claude Code CLI をインストールする

すでにClaude Codeを使っている場合はスキップでOKです。まだの場合、PowerShellで以下を実行します。

irm https://claude.ai/install.ps1 | iex
claude doctor

STEP 2: Unityプロジェクトへの導入(プロジェクトごと)

ここからは、Unityプロジェクトごとに行う作業です。最初は本番プロジェクトではなく、空のテスト用プロジェクトで試すことを強くおすすめします(シーンを直接操作するツールなので、事故防止のため)。

私は Universal 3D テンプレートを選択し空プロジェクトを作って検証しました。

2-1. パッケージを追加する

パッケージマネージャのイメージ画像

Unityで Window → Package Manager を開き、左上の「」→「Add package from git URL…」を選び、以下を貼り付けて Add します。

https://github.com/CoplayDev/unity-mcp.git?path=/MCPForUnity#main

ネットワーク経由で取得・インポートされるので、完了まで少し待ちます。

2-2. セットアップ画面で前提を確認する

パッケージが入ると、セットアップ画面が自動で開きます。Python と UV の両方が緑のチェックになっていればOKです。

ハマりポイント③:Refresh が効かない → 再起動が必要

私の場合、Pythonを入れるにUnityを起動していたため、Pythonを緑にしようと「Refresh」を押しても、いつまでも「Not Found」のままでした。

これは、WindowsのプログラムはPATHを起動した瞬間のスナップショットとして持つためです。後からPATHを直しても、すでに動いているUnityには反映されません。

対処は Unityの再起動 です。ただし、エディタを閉じるだけでは不十分なことがあり、私は最終的に PC全体を再起動 してようやく緑になりました(Unity Hubやバックグラウンドのプロセスが古い環境を引き継いでいたためと思われます)。

PATHを変更したら、関連アプリ、最悪PCの再起動が必要、と覚えておくと安心です。

両方緑になったら「Done」を押します。

2-3. Claude Code をクライアント設定する

UnityのMCP for Unity設定パネル。Claude CodeがConfigured、サーバがSession Activeになっている状態

Window → MCP for Unity を開くと、設定パネル(Connectタブ)が表示されます。

ここで、大きな緑の「Configure All Detected Clients」は押さないようにします。これを押すと検出された全クライアント(Codex、Gemini CLI など)まで設定してしまうためです。

今回使うClaude Codeだけを設定します。

  • Per-client setup」を開く
  • Client ドロップダウンを「Claude Code」に変更する
  • 状態が「Not Configured」になっていることを確認し、「Configure」ボタンを押す
  • 緑の「Configured」に変われば成功

設定はClaude Codeの .claude.json に、プロジェクトのパス単位で書き込まれます。なので新しいプロジェクトでは、この Configure を再度行う必要があります。

パネルには「Install Skills」ボタンもあります。これを押すと、Claude CodeにUnity操作用のスキルが入り、ツールの使い方を理解しやすくなります。

2-4. サーバを起動する

Transport が「HTTP Local」(http://127.0.0.1:8080)になっている状態で、Server セクションの「Start Server」を押します。

「Session Active」と緑で表示され、別ウィンドウでサーバのコンソール(FastMCP)が立ち上がれば起動成功です。

このサーバのコンソールウィンドウは閉じないでください。 これがサーバ本体で、閉じるとセッションが切れて接続できなくなります(後述のハマりポイント④)。

STEP 3: Claude Code から接続を確認する

ここで重要なのが、Claude Codeを「対象のUnityプロジェクトのフォルダ」で起動することです。Claude Codeはフォルダ単位でMCP設定を読むため、Configureしたプロジェクトのパスと同じ場所で起動しないと繋がりません。

cd D:\Unity\MCPTEST
claude

起動したら /mcp と打って、サーバ一覧を確認します。

Local MCPs 
(...\.claude.json [project: D:\Unity\MCPTEST])
> UnityMCP · ✓ connected · 43 tools

UnityMCP · ✓ connected と出れば接続成功です。

ハマりポイント④:UnityMCP が「failed」になる

私は最初、ここで UnityMCP · × failed と表示されてしまいました。設定は正しく書き込まれているのに、接続だけが失敗する状態です。

原因は、サーバのコンソールウィンドウを閉じてしまっていたことでした。HTTP Local構成では、このサーバが司令塔として動き続けている必要があります。

コンソールを開いたままにして再確認したところ、無事 connected になりました。

もっと身軽な構成もあります。 Transportを「HTTP Local」から「stdio」に切り替えると、Claude Codeが起動時に自動でサーバを立ち上げてくれるため、サーバのコンソールを別途開いておく必要がなくなります。「毎回サーバを起動するのが面倒」という方は、stdioを検討してみてください(transportを変えたらClaude Codeの再起動が必要です)。

STEP 4: 動作テスト

Claude Codeへの指示でUnityのシーンに生成された赤・青・黄の3つのキューブ

接続できたら、定番のテストプロンプトを投げてみます。Universal 3D(URP)プロジェクトの場合、マテリアルが灰色にならないよう、最初からURP指定を入れておくのが確実です。

Claude Code に、こう打ちます。

現在のシーンに、赤・青・黄の3つのキューブを、X軸方向に1ユニットずつ離して配置してください。このプロジェクトはURPなので、マテリアルはURP/Litシェーダーを使ってください。

数秒後、Unityのヒエラルキーに3つのキューブが現れ、シーンビューで赤・青・黄に色づいて見えれば大成功です。Claude Codeがツール実行の許可を求めてきたら、許可して進めます。

もしキューブが灰色のままなら、「キューブが灰色です。URP/Litシェーダーでマテリアルを作り直して、赤・青・黄を割り当ててください」と続けて指示すれば直ります。

運用のコツ

開発中は、次の 3つを起動したままにしておくのが基本です。

  1. Unityエディタ … 操作される対象(主役)
  2. MCPServer のコンソール(FastMCP)… HTTP Local構成のサーバ本体
  3. Claude Code … 指示を出すクライアント

また、Unityエディタを再起動したときは、MCPServerも起動し直しになります(Unity内のプラグインがサーバと繋ぎ直す必要があるため)。

開発開始時の流れをまとめると、こうなります。

  1. Unityを起動し、対象プロジェクトを開く
  2. MCP for Unity パネルでサーバが起動しているか確認(Session Active)し、起動していなければ Start Server
  3. 対象プロジェクトのフォルダで Claude Code を起動
  4. /mcp で接続を確認して開発開始

トラブルシュートまとめ

症状原因対処
python --version で「Python」とだけ出るPATHに本物のPythonがなく、Storeスタブが反応しているModifyで「Add Python to PATH」を有効化
py は通るが python がダメ同上where.exe python で正体確認 → Modify
セットアップ画面でRefreshしてもPythonが緑にならないUnityが古いPATHを握ったままUnity、必要ならPCを再起動
/mcp で UnityMCP が failedサーバのコンソールが閉じているコンソールを開いたままにする / stdioへの切替も検討
キューブが灰色で生成されるURPなのにStandardシェーダーが使われた「URP/Litで作り直して」と再指示

おわりに

MCP for Unity を一度つないでしまえば、Claude Code に日本語で指示するだけでUnityのシーンが組み上がっていく、という体験ができます。

最初の前提ツール(特にPython周り)でつまずきやすいですが、そこさえ越えれば、2個目以降のプロジェクトはほんの数分で導入できます。

つまずいたら、この記事のトラブルシュートを思い出してもらえれば。良いゲーム開発を。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次