PlugWiki
mcp-unity logo

MCP Unity Server for the Unity Editor: Setup for Claude, Cursor and Other Apps

CommunityLocal

Lets your AI assistant edit your open Unity project: scenes, objects, components, materials and prefabs.

MCP Unity is a community plugin that lets Claude, Cursor, Codex and other assistants work inside the Unity Editor. It is two parts: a Unity package that you add through the Package Manager, and a Node.js program that your AI app starts. The editor must be open for it to work. The assistant can create, move and delete objects, edit components and materials, load and save scenes, and run tests.

Good for

  • Unity developers who want an assistant to build and adjust scenes
  • Game designers who want to describe a change and have it applied in the editor
  • Teams who want the assistant to read Unity console errors and fix scripts

Works in

12 should work

Tap an app to see how to set it up and any known problems.

Install mcp-unity

Claude Code

  1. 1

    Copy this prompt.

    Add the mcp-unity server to Claude Code. Run this command:
    
    claude mcp add mcp-unity -- node ABSOLUTE/PATH/TO/mcp-unity/Server~/build/index.js
    
    Then check that it loaded and tell me if I need to sign in or restart.
  2. 2

    Paste it into Claude Code. It shows the change and asks before running it.

Requires Unity 6 or later, Node.js 18 or later, Unity Editor open.

Add the Unity package first: in Unity open Window > Package Manager, choose Add package from git URL and enter https://github.com/CoderGamester/mcp-unity.git. Then replace ABSOLUTE/PATH/TO with the path shown in Tools > MCP Unity > Server Window, or click the Configure button for your app there and Unity writes the config for you.

Built from the package data we hold. Not yet tested by us. Source.

Tools

  • Lists every object in the open scenes

    Returns the tree of objects in the scenes you have open, so the assistant can see what is there.

    Try: “What objects are in my current scene?”

    Read · get_scenes_hierarchy

  • Shows one object and its components

    Looks up one object and returns its components and the objects under it, to a depth you can limit.

    Try: “Show me the Player object and its components.”

    Read · get_gameobject

  • Shows the active scene and loaded scenes

    Reports which scene is active, whether it has unsaved changes, and which other scenes are loaded.

    Try: “Which scene is open and does it have unsaved changes?”

    Read · get_scene_info

  • Reads the Unity console messages

    Returns console entries a page at a time so a long log does not overflow the chat.

    Try: “Show the latest errors in the Unity console.”

    Read · get_console_logs

  • Shows a material's shader and settings

    Returns the shader and every property value of one material.

    Try: “What are the settings of the Ground material?”

    Read · get_material_info

  • Tells whether the game is playing or paused

    Reports if the editor is in play mode and whether it is paused.

    Try: “Is the game running?”

    Read · get_play_mode_status

  • Changes an object's name, tag, layer or state, or creates it

    Edits core properties such as name, tag, layer and active or static state. If no object exists at the path, it creates one.

    Try: “Rename Cube to Crate and set its tag to Pickup.”

    Write · update_gameobject

  • Changes a component's fields or adds the component

    Sets field values on a component of an object, and adds the component first if the object does not have it.

    Try: “Add a Rigidbody to Crate and set its mass to 5.”

    Write · update_component

  • Selects an object in the editor

    Highlights an object in the hierarchy so you can see it.

    Try: “Select the Main Camera.”

    Write · select_gameobject

  • Makes copies of an object

    Copies an object one or more times, with optional new names or a new parent.

    Try: “Duplicate the Tree object 10 times.”

    Write · duplicate_gameobject

  • Deletes an object from the scene

    Removes an object from the open scene, and by default everything under it.

    Try: “Delete the old Spawner object.”

    Delete · delete_gameobject

  • Moves an object under a different parent

    Changes where an object sits in the hierarchy.

    Try: “Move Lamp under the Room object.”

    Write · reparent_gameobject

Read from the source code

Permissions

high risk · 4 things to watch

High risk

The assistant can change and delete anything in your open Unity project and run editor menu items and tests. Commit your project to version control before each session, and leave remote connections and package installation off.

What it can do

  • Read your data
  • Create and change things
  • Delete things
  • Read-only mode

Watch out for

  • It can delete objects and scene files

    delete_gameobject removes an object and its children, and delete_scene removes a scene file and its Build Settings entry. Keep your project in version control and commit before an editing session. github.com

  • It can run menu items, tests and batches

    execute_menu_item can click any editor menu entry, run_tests runs project test code, and batch_execute groups many calls and can include deletes. Treat them as running code in your editor. github.com

  • Package installation is opt-in

    add_package is off by default because packages can run editor code when they compile. Leave Allow Package Installation off unless you need it. github.com

  • Remote connections open the editor to your network

    The Unity side listens on localhost by default. The Allow Remote Connections option binds it to every network interface, so use it only on a network you trust. github.com

Security advisories

No published security advisories as of Nov 1, 2026.

Technical details
Turning on read-onlyNo read-only mode is documented. Every tool is always registered, except add_package, which stays off until you allow it in the Unity window.
Talks toA local WebSocket between the Node program and the Unity Editor (localhost by default)
Sign-in and keysA per-project token in Library/McpUnity/bridge-token that the Node program and Unity share. No account or API key.

Questions

Is MCP Unity official?

No. It is a community project by CoderGamester. It is not made by Unity Technologies.

What do I need before installing?

Unity 6 or later and Node.js 18 or later. You add the Unity package from a git URL, then use the Configure button in Tools > MCP Unity > Server Window.

Does the Unity Editor have to be open?

Yes. The Node program talks to the running editor, so the tools work only while Unity is open with the server started.

Which apps does it work with?

The README names Claude Code, Cursor, Windsurf, GitHub Copilot, Codex CLI and others. Configure buttons in Unity write the config for several of them.

Can it install packages?

Only if you turn on Allow Package Installation in the MCP Unity window. It is off by default.

Is the connection safe?

The README says the Unity endpoint needs a per-project 256-bit token and rejects browser WebSocket handshakes. By default it listens on localhost only.

What changed in version 1.5.0?

The README says 1.5.0 rejects the older 1.4.x Node bridges, so upgrade both the Unity package and the Node part together.

Information

updated Nov 2, 2026

Publisher
Community
Transport
stdio
Auth
None
License
MIT
Last commit
Oct 11, 2026
Open issues
4

GitHubChangelogIssues

Other Unity MCP servers

Sources

Docs, issue trackers and discussions this page is built from. Issues, quotes and findings above link to their own source.

Show all 2
  1. github.com · github.com
  2. github.com · github.com

Facts from the official MCP registry, GitHub, npm, PyPI and the Docker catalog. Updated Nov 2, 2026.