Script edits land either as exact ranges guarded by a SHA or as structured method-level operations, so a change goes where it was aimed. Reflection and docs let an agent confirm a type exists before writing against it, and the group system keeps 47 tools from crowding out its judgement.
A bridge into the Unity Editor: 47 tool entrypoints covering scenes and GameObjects, components, materials and prefabs, physics, graphics and UI Toolkit, C# scripts, packages, the profiler, builds and the test runner. Several take an action argument, so one tool stands in for a family of operations, and the set is split into groups that stay hidden until you turn them on.
- GameObjects created, modified, duplicated, moved and deleted, and found by name, tag, layer, component type or path
- Components added, removed and reconfigured, with materials, shaders and procedural textures managed the same way
- Scenes and prefabs opened, edited and saved — prefab stage work included — with hierarchies read back in pages
- C# scripts created, validated and edited either as exact text ranges guarded by a SHA precondition or as structured method- and class-level operations
- Unity's live API inspected by reflection and its documentation fetched, so a type or member is checked before code is written against it
- Builds triggered across platforms and profiles, tests started as a job and polled to completion, and the editor console read
- The profiler driven — sessions, counters, memory snapshots, Frame Debugger — alongside rendering, physics, animation, camera and VFX settings
- Assets generated with your own provider keys and imported: images, audio and 3D models, plus local model files
- Many calls sent as one batch, with fail-fast and parallelism set on the call
- Only the core group visible by default: animation, ui, vfx, scripting_ext, testing, probuilder, profiling and docs are activated per session through the manage_tools meta-tool, which keeps the prompt small and the routing sharp
Unity 2021.3 LTS or newer and Python 3.10 or newer with uv — the setup wizard walks you through both if they are missing. Install the package into the project by git URL, from the Asset Store, or with openupm add com.coplaydev.unity-mcp, then use Window → MCP for Unity to start the server and configure detected clients. The default transport is HTTP at http://localhost:8080/mcp; clients without HTTP, Claude Desktop among them, are wired over stdio through uvx from the mcpforunityserver package. The Editor has to be open on the project — every tool acts on what it has loaded, and execute_code runs C# inside it. Asset generation is bring-your-own-key, with provider keys held in the editor's secure store, and the probuilder group needs com.unity.probuilder installed.
One command — openupm add com.coplaydev.unity-mcp
