Unity + AI
Build Unity scenes with Claude Code
Unity and OpenAI both shipped official plugins that let an AI agent drive the Editor. Neither ships a single model. Here is how to connect one, and where to point it for the content.

Two things happened in quick succession. Unity published an official plugin for Claude Code, and OpenAI announced an official Unity plugin for Codex. Both do the same fundamental thing: they let an agent drive the Unity Editor rather than just type into your scripts.
Both also share a gap. They give an agent hands and no materials. An agent that can create a GameObject, parent it, light it and press play still has nothing to put in the scene, so you get primitives, or you get a shopping trip to the Asset Store in the middle of a build.
That gap is the interesting part, and it closes with one more line of setup.
What the Unity plugin actually gives you
Unity's plugin installs three things at once: a set of Unity-authored skills, the Unity CLI, and Unity's own MCP server for live Editor control. The skills are the part people underrate. There are 29 of them, covering URP post-processing, UI Toolkit, sprite atlasing and auto-tiling, AI Navigation, physics diagnostics, IAP, LevelPlay, multiplayer sessions and WebGL optimisation, among others.
The practical effect of a skill is that the agent stops guessing at Unity's API surface from memory and follows a documented procedure instead. The practical effect of the MCP server is that it can see the scene as it currently is, rather than inferring it from files.
Install it
In Claude Code:
1/plugin marketplace add Unity-Technologies/unity-agent-plugin2/plugin install unity@unity-agent-plugin
You are asked to pick a scope. User scope makes it available in every project and is the right default if you work across several Unity projects; project scope commits it to the repository for the whole team; local scope keeps it to you in this one repository. To skip the prompt:
1claude plugin install unity@unity-agent-plugin --scope local
Then check it took:
1/plugin2/unity:
The first confirms the plugin is installed and enabled, the second lists the Unity skills available to you. You can also install it from the Claude desktop app under Plugins, then Browse, then Unity.
Codex has an official Unity plugin too, announced on 10 September 2026 by OpenAI's Codex developer experience lead, who came from Unity Labs. It is the same idea in the same shape: engine skills plus an MCP bridge into the Editor. Check the Codex plugin documentation for its current install command rather than adapting the Claude Code one, since the two marketplaces are separate.
Give the agent something to build with
Now add the catalogue. This is a second MCP server and it sits alongside Unity's, not instead of it:
1claude mcp add --transport http 3dassets https://3dassets.dev/mcp
No account, no key. The agent gains search_assets, get_asset, search_packs, get_pack and the rest, and every result carries a permanent CDN URL, a triangle count, a file size and a bounding box in metres.
The two servers do not compete. An MCP client merges the tool lists it is given, so the agent ends up holding "create a GameObject in the open scene" and "find me a low-poly market stall" at the same time, which is exactly the combination that makes a scene appear.
A prompt that uses both
1Set up a small medieval market in the open scene.23Content: use 3dassets.dev. Find a pack that covers it rather than4assembling loose props, and show me the model list with triangle counts5before you download anything. Keep the whole scene under 200,000 triangles.67Scene: lay it out as a place I can walk through, not a row. Give the8stalls a square to sit around, and set up lighting that reads at midday.910Tell me if a model needs converting before Unity will import it.
Ask for the list before the download for the same reason as always: it is much cheaper to say "that stall is modern" while it is one line of text than after twelve prefabs exist.
The one trap worth knowing before you start
Unity is the only major engine that cannot read these files as they ship, and an agent will hit it before you do.
Textured models here store their images as WebP through the EXT_texture_webp glTF extension, and list it as required. glTFast does not support that extension and its maintainers have said it will not. A required extension cannot be skipped by a conforming loader, so the model fails to load outright rather than arriving untextured.
The conversion is one command:
1npx @gltf-transform/cli png model.glb model-png.glb
That rewrites the textures as PNG and drops the extension, leaving geometry, materials and animations untouched. Most of the catalogue is untextured anyway, using flat material colours, and those files import with no conversion at all. Telling the agent about this up front, as the prompt above does, saves it a confusing failure. The Unity import guide has the detail.
Keep the agent honest about the Editor
Two habits are worth forming early, and they are about the Editor plugin rather than the models.
Commit before a long agent session. An agent with live Editor control can change a lot of scene state quickly, and scene files are the least pleasant thing in a Unity project to untangle by hand. A clean commit is a much better undo than Ctrl+Z across an Editor restart.
Ask for the plan, approve the plan, then let it run. These plugins are at their best on work that is tedious and well specified: placing forty props to a rule, wiring the same component across a set, importing and configuring a batch. They are at their worst when asked to invent art direction. Give the direction yourself and let the agent do the placing.
What this is actually good for
The honest use case is not "build my game". It is the hour of work between having an idea and having something you can walk around in. An agent with Editor control and a 17,000 model catalogue can put a rough version of a level in front of you while you are still describing it, and a rough level you can walk through tells you more than any amount of planning.
Everything it fetches is CC0, so whatever survives that first hour is yours to ship, with nothing to attribute and no licence to track.
Next
The same pairing works in other engines: Unreal has a first-party MCP plugin as of 5.8, and Godot has several community ones. If you would rather import by hand, importing free models into Unity covers glTFast without an agent involved.

