安裝
使用 AI Game Dev 應用程式、godot-cli、Godot Asset Library 或 release zip 安裝 Godot MCP 附加元件,並為你的 .csproj 加上正確的 NuGet 套件。
本頁說明將 Godot MCP 加入 Godot C# 專案的所有方法,以及每種方法各自替你做了什麼。如果你只想讓它能運作,請使用桌面應用程式或 godot-cli:兩者都會一步完成安裝附加元件、修改你的 .csproj,並啟用外掛。手動方式(Asset Library、release zip)還需要兩個容易漏掉的額外步驟。
需求
| 需求項目 | 說明 |
|---|---|
| Godot | Godot 4.3 或更新版本,且為 .NET (mono) 版。此附加元件以 Godot.NET.Sdk 4.3.0 作為最低建置基準;專案的 CI 會在 4.3、4.4、4.5、4.6 與 4.7 上啟動它。 |
| .NET | .NET 8 SDK(net8.0)。 |
| 專案 | 根目錄含有 C# .csproj 的 Godot 專案。 |
godot-cli(選用) | Node.js ^20.19.0 或 >=22.12.0。 |
| 作業系統 | Windows、macOS 或 Linux。 |
選項 1:AI Game Dev 桌面應用程式
AI Game Dev 應用程式 可以將 Godot MCP 安裝到你選擇的專案,然後開啟已連線到你帳號的編輯器。它自帶安裝程式副本,因此你不需要 Node.js 或 npm。應用程式一律安裝最新發行的附加元件,並執行與 godot-cli install-plugin 相同的三件事:把附加元件檔案放到 addons/godot_mcp/、將 NuGet 套件與擴充目錄加入你的 .csproj,並在 project.godot 中啟用外掛。
從下載頁面下載應用程式。安裝方式與如何選擇專案請見應用程式安裝;應用程式的命令列說明請見 App CLI。
選項 2:godot-cli(終端機)
godot-cli 是 Godot MCP 的 npm 套件。它的 install-plugin 指令是完整的安裝程式,而且可以安全地重複執行:第二次執行不會有任何變更。
npm install -g godot-cli
godot-cli install-plugin ./MyGodotProjectinstall-plugin 依序執行的工作:
- 從 Godot-MCP GitHub release 下載
godot-mcp-addon-<version>.zip(僅透過 HTTPS、僅限 github.com),並放到res://addons/godot_mcp/。版本預設為 CLI 本身的版本。 - 將已安裝附加元件所需的 NuGet
PackageReference加入你的.csproj,版本取自附加元件本身,並修正過期的版本。 - 加入擴充目錄的
<EmbeddedResource>,並設定<EnableDynamicLoading>true</EnableDynamicLoading>。 - 在
project.godot的[editor_plugins]區段中啟用外掛。
實用的變化用法:
# A specific addon release
godot-cli install-plugin --version 0.34.0 ./MyGodotProject
# Offline or development install from a local copy of the addon
godot-cli install-plugin --source ./Godot-MCP/addons/godot_mcp ./MyGodotProject
# No project yet: scaffold a Godot C# project first
godot-cli create-project --dotnet ./MyGodotProject你也可以不全域安裝直接執行:npx godot-cli install-plugin ./MyGodotProject。所有旗標都列在 godot-cli 參考文件。
選項 3:Godot Asset Library
- 在 Godot 編輯器中,開啟上方的 AssetLib 分頁。
- 搜尋 Godot-MCP 並開啟該資源。
- 依序點擊 Download、Install。Godot 會將附加元件解壓縮到
res://addons/godot_mcp/。 - 將 NuGet 套件與 catalog 那行加入你的
.csproj(見下文)。 - 啟用外掛(見下文)。
Asset Library 的項目一律指向某個已標記的發行版本,因此你會拿到已知良好的快照。它只包含附加元件檔案:第 4 步與第 5 步仍須由你完成。
選項 4:GitHub release zip 或原始碼複本
從 Godot-MCP releases 頁面下載 godot-mcp-addon-<version>.zip 並解壓縮到專案根目錄。壓縮檔中已包含 addons/godot_mcp/,因此檔案會落在 res://addons/godot_mcp/。你也可以從儲存庫的 clone 複製 addons/godot_mcp/ 資料夾。接著執行下方兩個手動步驟。
手動步驟:NuGet 套件與擴充目錄
Godot 會把專案中每個 .cs 檔編譯成單一組件,因此你的 .csproj 必須參考與附加元件相同的 NuGet 套件,否則附加元件無法編譯。請將以下內容加入你的 .csproj(這些是附加元件 0.34.0 的版本):
<ItemGroup>
<PackageReference Include="com.IvanMurzak.ReflectorNet" Version="5.5.1" />
<PackageReference Include="com.IvanMurzak.McpPlugin" Version="8.14.0" />
</ItemGroup>
<!-- Editor-only: exported games ship no RQL and no Roslyn. -->
<ItemGroup>
<PackageReference Include="com.IvanMurzak.Rql" Version="0.3.0" Condition="'$(Configuration)' != 'ExportDebug' and '$(Configuration)' != 'ExportRelease'" />
<PackageReference Include="com.IvanMurzak.CodeExec" Version="0.4.0" Condition="'$(GodotMcpCodeExecInGame)' == 'true' or ('$(Configuration)' != 'ExportDebug' and '$(Configuration)' != 'ExportRelease')" />
<PackageReference Include="com.IvanMurzak.CodeExec.Roslyn" Version="0.4.0" Condition="'$(GodotMcpCodeExecInGame)' == 'true' or ('$(Configuration)' != 'ExportDebug' and '$(Configuration)' != 'ExportRelease')" />
<PackageReference Include="Microsoft.CodeAnalysis.CSharp" Version="4.12.0" Condition="'$(GodotMcpCodeExecInGame)' == 'true' or ('$(Configuration)' != 'ExportDebug' and '$(Configuration)' != 'ExportRelease')" />
</ItemGroup>
<!-- Without this line the dock's Extensions list is empty. -->
<ItemGroup>
<EmbeddedResource Include="addons/godot_mcp/extensions.catalog.json" LogicalName="Godot-MCP.extensions.catalog.json" />
</ItemGroup>| 套件 | 版本(附加元件 0.34.0) | 用途 |
|---|---|---|
com.IvanMurzak.ReflectorNet | 5.5.1 | 反射與序列化核心 |
com.IvanMurzak.McpPlugin | 8.14.0 | 將編輯器連線到伺服器的 MCP 用戶端 |
com.IvanMurzak.Rql | 0.3.0 | RQL,編輯器工具背後的查詢語言(僅限編輯器) |
com.IvanMurzak.CodeExec | 0.4.0 | 為 script-execute 執行 C# 片段(除非你主動啟用,否則僅限編輯器) |
com.IvanMurzak.CodeExec.Roslyn | 0.4.0 | Code-Exec 的 Roslyn 轉接器 |
Microsoft.CodeAnalysis.CSharp | 4.12.0 | Roslyn C# 編譯器 |
版本必須與你安裝的 addon 相符。每個發行版都會在 README 中列出這些版本,而發行版 zip 也會將它們放在 addons/godot_mcp/nuget-deps.json 中;godot-cli install-plugin 會讀取該檔案,因此它絕不會弄錯版本。開發分支已將 com.IvanMurzak.McpPlugin 推進到 8.18.0,所以更新時請再確認一次。
另外,請在你的 .csproj 的 <PropertyGroup> 中保留 <EnableDynamicLoading>true</EnableDynamicLoading>。Godot 自己的 C# 範本就有這一行。少了它,用 Play 啟動的遊戲就無法建立任何 C# 腳本。
你不需要複製 DLL。執行 dotnet restore(或從 Godot 建置),addon 在編輯器階段就會從你的 NuGet 快取中找到這些套件。
手動步驟:啟用外掛
開啟 Project, Project Settings, Plugins 並啟用 Godot-MCP。建置 C# 專案(編輯器中的 Build 按鈕,或 godot-cli build)。載入成功時,Output 面板會印出:
[Godot-MCP] plugin loadedAI Game Developer 停駐面板會出現在右上方的停駐區。接著請繼續閱讀開始使用。
更新與移除
- 用你當初安裝時所用的同一個工具來更新:重新執行
godot-cli install-plugin(可選擇加上--version)、使用應用程式,或從 Asset Library 安裝新版本並手動更新 NuGet 版本。 - 用
godot-cli update更新 CLI 本身。 godot-cli remove-plugin ./MyGodotProject會在project.godot中停用該 addon。它不會刪除addons/godot_mcp/或.csproj中的項目;若想移除這些內容,請手動刪除。
匯出的遊戲
RQL、Code-Exec 和 Roslyn 套件帶有 Condition,會讓它們不被納入 ExportDebug 與 ExportRelease 建置,因此你匯出的遊戲不會包含它們。addon 的編輯器工具只在編輯器中編譯,永遠不會進入遊戲建置。從執行中的遊戲公開工具屬於選用功能,詳見自訂工具。