Unity MCPをVSCode Claude拡張機能で利用するまでの備忘録

CoplayDev Unity MCPを使ってみたい

掲題の通り、UnityでMCPを使ってみようと思い立ちました。
いつもVSCodeの拡張機能版Claudeを使っているためそこで使えるとうれしかったのですが、なかなかうまく認識されず。

結局Claude Code自身に設定の不備を教えてもらい解決したので、備忘録および起動手順をメモしておこうかと思います。

1. Unity側

プラグイン導入はさすがに省略。
PythonとUV、Claude CodeのCLIも適当にwinサイドにインストール。

Window -> MCP for Unity -> Toggle MCP Windowでウィンドウを開く。
よくわからんが、Toolsタブの「Project-Scoped Tools」にチェックを入れてみる。

その後、まずサーバーを起動。
起動が終わったら、次にClient ConfigurationのConfigureを押してみる。
終わったらVSCode立ち上げ。

2. VSCode側

Claude CLIのほうでclaude mcp listでconnectedになっていることを確認。
そのうえで、Claude CLIのほうでは問題なくツールが使えたものの、Claude Code拡張機能では相変わらず認識されず。

Claude Codeに分析させたところ、どうやら見ているmcp設定がCLIと拡張機能で違ったらしい。

当初、UnityMCP は ~/.claude.json の中の プロジェクト・ローカルスコープ(CLIが claude mcp add で登録したときの既定スコープ)に入っていた。

"projects": {
  "xxxxx": {
    "mcpServers": {
      "UnityMCP": { "type": "http", "url": "http://127.0.0.1:8080/mcp" }
    }
  }
}

スコープが「local(個人のCLI設定)」 で、トップレベル(user)や共有の .mcp.json には無い。VSCode拡張はこの ~/.claude.json 内のプロジェクト別ローカル設定を読み込まないため、サーバーが見えていなかった、とのこと。

ということで、Unityプロジェクトのルートに以下のような.mcp.jsonを作ってもらった。

{
  "mcpServers": {
    "UnityMCP": {
      "type": "http",
      "url": "http://127.0.0.1:8080/mcp"
    }
  }
}

これで新しいセッションを作ってやってみたら、何とか認識してくれました。

めでたしめでたし。

CLI使うのが環境構築的には楽なんだろうが、拡張機能のほうがよく使うからね。
この微妙な設定ファイルの違い、いつも引っ掛かります。

コメント

タイトルとURLをコピーしました