Before you ship
Keep the addon out of every exported build, and prove it with a scan of the pck.
1. Disable the plugin before exporting
Project → Project Settings → Plugins, untick Swallowtail. Disabling removes the two injected autoloads, MCPGameInspector and MCPGameInput, from project.godot. Re-enabling puts them back, so the toggle costs nothing per release.
2. Exclude the addon files in every export preset
In the Export window, Resources tab, add to Filters to exclude files/folders:
addons/swallowtail/*Add mcp_commands/* too if the project defines project-local commands. The default “Export all resources” mode ships unreferenced scripts, so the filter matters even with the plugin disabled. Check every preset, since each carries its own filter.
3. Scan the build
A green export means the exporter ran. The receipt is the pck itself: the addon name and the autoload names must score zero, and a known game path must be present so you know the scan read the right file.
grep -a -c 'swallowtail' Game.pck # 0, or the addon shippedgrep -a -c 'MCPGame' Game.pck # 0 covers project.binary's autoload listgrep -a -c 'res://scenes' Game.pck # above 0: the game itself is in there$t = [Text.Encoding]::ASCII.GetString([IO.File]::ReadAllBytes("Game.pck"))([regex]::Matches($t, 'swallowtail')).Count # 0, or the addon shipped([regex]::Matches($t, 'MCPGame')).Count # 0 covers project.binary's autoload list([regex]::Matches($t, 'res://scenes')).Count # above 0: the game itself is in thereswallowtail export <preset> runs the export from the terminal and exits non-zero when Godot wrote no file. The Shipping and export guide covers the rest of the release pipeline: the headless loop, per-platform receipts, and Android packages, which carry no loose pck.