Unity MCP

by ivanmurzak

8 stars
227 downloads
Not rated
GitHub Website

About

Server + Plugin for Unity Editor and Unity game. The Plugin allows to connect to MCP clients like Claude Desktop or others.

Details

Author
ivanmurzak
GitHub stars
8
Downloads
227
Categories
Developer Tools, Other, Productivity, AI, Automation, Infrastructure, Project Management
Tags
#integration

- ✔️ AI agents - Use the best agents from Anthropic, OpenAI, Microsoft, or any other provider with no vendor lock-in
- ✔️ Tools - A wide range of default MCP Tools for operating in Unity Editor
- ✔️ Skills - Generate skills for AI based on operating system, Unity version, plugins in the project
- ✔️ Code and Tests - Develop game mechanics and test them with AI agents
- ✔️ Runtime (in-game) - Use LLMs directly inside your compiled game for dynamic NPC behavior or debugging
- ✔️ Debug support - Let AI debug and fix the problems in a project
- ✔️ Natural conversation - Chat with AI like you would with a human
- ✔️ Flexible deployment - Works locally (stdio) and remotely (http) via configuration
- ✔️ Extensible - Create custom Tools in your project code

DOWNLOAD INSTALLER

Install the plugin via the .unitypackage installer or run npm install -g unity-mcp-cli then unity-mcp-cli install-plugin ./MyUnityProject. In Unity, open Window/AI Game Developer and click Auto-generate skills or Configure MCP. Alternatively, use the CLI: unity-mcp-cli setup-skills claude-code ./MyUnityProject.

Unity MCPis an AI-powered game development assistantfor Editor & Runtime. ConnectClaude,Cursor, &Windsurfto Unity via MCP. Automate workflows, generate code, andenable AI within your games.

Unlike other tools, this plugin worksinside your compiled game, allowing for real-time AI debugging and player-AI interaction.

💬 Join our Discord Server- Ask questions, showcase your work, and connect with other developers!

- ✔️AI agents- Use the best agents fromAnthropic,OpenAI,Microsoft, or any other provider with no vendor lock-in
- ✔️Tools- A wide range of default
MCP Toolsfor operating in Unity Editor
- ✔️Skills- Generate skills for AI based on operating system, Unity version, plugins in the project
- ✔️Code and Tests- Develop game mechanics and test them with AI agents
- ✔️Runtime (in-game)- Use LLMs directly inside your compiled game for dynamic NPC behavior or debugging
- ✔️Debug support- Let AI debug and fix the problems in a project
- ✔️Natural conversation- Chat with AI like you would with a human
- ✔️Flexible deployment- Works locally (stdio) and remotely (http) via configuration
- ✔️Extensible-
Create custom Tools in your project code

https://github.com/user-attachments/assets/228baf4d-4f00-4dce-939d-fb985ebdd8dd
-
Install plugin— download the.unitypackageinstaller or runopenupm add com.ivanmurzak.unity.mcp

Alternative:npx unity-mcp-cli install-plugin ./MyUnityProject— seeCLI documentation

Alternative:npx unity-mcp-cli setup-skills claude-code ./MyUnityProject— seeCLI documentation

That's it. Ask your AI"Create 3 cubes in a circle with radius 2"and watch it happen. ✨

The plugin ships with 70+ built-in tools across four categories. Each tool brings AI skill. All tools are available immediately after installation — no extra configuration required. Seedocs/default-mcp-tools.mdfor the full reference with detailed descriptions.

🧰 Browse the full MCP tools registry online:[ai-game.dev/docs/tools

- assets-copy- Copy the asset at path and stores it at newPath
- assets-create-folder- Creates a new folder in the specified parent folder
- assets-delete- Delete the assets at paths from the project
- assets-find- Search the asset database using the search filter string
- assets-find-built-in- Search the built-in assets of the Unity Editor
- assets-get-data- Get asset data from the asset file including all serializable fields and properties
- assets-material-create- Create new material asset with default parameters
- assets-modify- Modify asset file in the project
- assets-move- Move the assets at paths in the project (also used for rename)
- assets-prefab-close- Close currently opened prefab
- assets-prefab-create- Create a prefab from a GameObject in the current active scene
- assets-prefab-instantiate- Instantiates prefab in the current active scene
- assets-prefab-open- Open prefab edit mode for a specific GameObject
- assets-prefab-save- Save a prefab in prefab editing mode
- assets-refresh- Refreshes the AssetDatabase
- assets-shader-get-data- Get detailed data about a shader asset (properties, subshaders, passes)
- assets-shader-list-all- List all available shaders in the project assets and packages
- package-add- Install a package from the Unity Package Manager registry, Git URL, or local path
- package-list- List all packages installed in the Unity project (UPM packages)
- package-remove- Remove (uninstall) a package from the Unity project
- package-search- Search for packages in both Unity Package Manager registry and installed packages

- gameobject-component-add- Add Component to GameObject
- gameobject-component-destroy- Destroy one or many components from target GameObject
- gameobject-component-get- Get detailed information about a specific Component on a GameObject
- gameobject-component-list-all- List C# class names extended from UnityEngine.Component
- gameobject-component-modify- Modify a specific Component on a GameObject
- gameobject-create- Create a new GameObject in opened Prefab or in a Scene
- gameobject-destroy- Destroy GameObject and all nested GameObjects recursively
- gameobject-duplicate- Duplicate GameObjects in opened Prefab or in a Scene
- gameobject-find- Finds specific GameObject by provided information
- gameobject-modify- Modify GameObjects and/or attached component's fields and properties
- gameobject-set-parent- Set parent GameObject to list of GameObjects
- object-get-data- Get data of the specified Unity Object
- object-modify- Modify the specified Unity Object
- scene-create- Create new scene in the project assets
- scene-get-data- Retrieves the list of root GameObjects in the specified scene
- scene-list-opened- Returns the list of currently opened scenes in Unity Editor
- scene-open- Open scene from the project asset file
- scene-save- Save opened scene to the asset file
- scene-set-active- Set the specified opened scene as the active scene
- scene-unload- Unload scene from the opened scenes in Unity Editor
- screenshot-camera- Captures a screenshot from a camera and returns it as an image
- screenshot-game-view- Captures a screenshot from the Unity Editor Game View
- screenshot-isolated- Render a GameObject in isolation from a chosen angle (optional composite 2x2 view)
- screenshot-scene-view- Captures a screenshot from the Unity Editor Scene View

- console-clear-logs- Clears the MCP log cache and the Unity Editor Console window
- console-get-logs- Retrieves Unity Editor logs with filtering options
- editor-application-get-state- Returns information about the Unity Editor application state (playmode, paused, compilation)
- editor-application-set-state- Control the Unity Editor application state (start/stop/pause playmode)
- editor-selection-get- Get information about the current Selection in the Unity Editor
- editor-selection-set- Set the current Selection in the Unity Editor
- reflection-method-call- Call any C# method with input parameters and return results
- reflection-method-find- Find method in the project using C# Reflection (even private methods)
- script-delete- Delete the script file(s)
- script-execute- Compiles and executes C# code dynamically using Roslyn
- script-read- Reads the content of a script file
- script-update-or-create- Updates or creates script file with the provided C# code
- tests-run- Execute Unity tests (EditMode/PlayMode) with filtering and detailed results
- type-get-json-schema- Generate a JSON Schema for a C# type via reflection

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.