unity-mcp-server
Union ♾️ - The Unity MCP Server
Documentation
> [!IMPORTANT]
> Union is deprecated. Use Unity's official MCP server.
Union ♾️ - The Unity MCP Server
> A Model Context Protocol server for Unity

Key Features
- 🖼️ Multimodal Vision: Your agent can see what you see. It can view the scene, look through any camera, watch play mode, and inspect asset thumbnails.
- 🔎 Powerful Search: Go beyond the project panel with simultaneous search across the hierarchy and project assets.
- ✔️ Superior Code Analysis: Leverage Unity's own compiler for code analysis that is more accurate than your agent's linter.
- ⏩ Quick Start: Get running in seconds with a single `mcp.json` configuration file.
- 🛠️ Extensible: Add your own project-specific tools with minimal boilerplate.
- 📅 Always Current: Kept up-to-date with the latest MCP protocol version — currently `2025-06-18` via the Official MCP C# SDK.
Compatibility
| Name | Compatible | Notes |
|---|---|---|
| Models | ||
| GPT-4.1 | ✅ | |
| Claude 4 Sonnet | ✅ | |
| Claude 4 Opus | ✅ | |
| Gemini 2.5 Pro | ✅ | |
| Gemini 2.5 Flash | ✅ | |
| o3 | ✅ | No image understanding |
| o4-mini | ✅ | |
| Unity Versions | ||
| Unity 6000.0.x | ✅ | Higher versions should be fine. Lower versions may work but untested. |
| Agents | ||
| Cursor | ✅ | |
| Rider AI | ✅ | |
| Claude Desktop | ✅ | |
| Claude Code | ✅ | Terminal requires Screen & System Audio Recording permissions on Mac |
| Operating Systems | ||
| Windows | ✅ | |
| Mac | ✅ | |
| Ubuntu | ❔ | Untested |
Setup
1. Install node.js
2. Configure `mcp.json`
{
"mcpServers": {
"unity": {
"command": "npx",
"args": ["-y", "@nurture-tech/unity-mcp-runner", "-unityPath", "", "-projectPath", ""]
}
}
}This will automatically install the `is.nurture.mcp` package in your unity project. Feel free to commit those changes to source control.
About the Tools
> Meet your Unity AI toolbox.
| Tool | Description |
|---|---|
| Assets | |
| `get_asset_contents` | Get the full contents of an asset or sub-asset. |
| `copy_asset` | Copy an asset to a new path. |
| `import_asset` | Import an asset from the filesystem into Unity. |
| `get_asset_importer` | Get the importer settings for an asset. |
| Prefabs | |
| `open_prefab` | Open a Unity prefab in isolation mode so that it can be edited. |
| Scenes | |
| `open_scene` | Open a scene |
| `close_scene` | Close an open scene |
| `save_scene` | Save the current scene. If the scene is not dirty, this will do nothing. |
| `get_game_object` | Get the details of a game object in a loaded scene or prefab by its hierarchy path. |
| `test_active_scene` | Test the active scene by entering play mode and running for a given number of seconds. |
| Scripting | |
| `create_script` | Create or replace a C# code file at the given path. This also checks to make sure the script compiles. |
| `execute_code` | Execute code inside the Unity editor. |
| `get_type_info` | Get public fields and methods on a Unity fully qualified type name, including the assembly. |
| Search | |
| `search` | Search project assets and scene objects. |
| Editor State | |
| `get_state` | Get the state of the Unity Editor. |
| `get_selection` | Get the objects the user has currently selected in the editor. |
| Vision | |
| `focus_game_object` | Focus on a game object in the scene view. |
| `screenshot` | Retrieve a preview of what is focused in the scene view. |
Known Issues
- The Google External Dependency Manager (EDMU) causes Unity to hang forever on startup when launched via Cursor on Windows. This is under investigation.
- The `test_active_scene` tool sometimes fails with the error message `Maximum call stack size exceeded.`
- The `search` tool occasionally fails with the error message `Search index is not ready yet. Please try again later.`
Adding Project-Specific Tools
Union uses the official C# MCP SDK.
1. Create a static class to hold your tools. Add the `[McpServerToolType]` annotation to the class.
2. Declare static methods to implement each tool. Add the `[McpServerTool]` annotation to each method.
3. Reference the Services directory for examples.
4. You will likely need to quit unity and restart your agent in order for it to see the new tools.
Usage Tips
Here are some tips to get the most out of Union:
- 🚀 Launch through your agent: Always launch Unity through your AI agent's MCP integration. Launching Unity from the Hub will prevent the MCP server from connecting.
- 📂 Per-project setup: If your agent supports it, configure the MCP server in your per-project settings. This allows you to seamlessly switch between Unity projects.
- ⚙️ Command-line arguments: You can pass additional arguments to Unity for advanced scenarios like running in `-batchmode` or `-nographics` for CI/CD pipelines. Add a `--` separator before the Unity-specific arguments:
{
"mcpServers": {
"unity": {
"command": "npx",
"args": [
"-y",
"@nurture-tech/unity-mcp-runner"
"-unityPath",
"",
"-projectPath",
".",
"--",
"-batchmode",
"-nographics"
]
}
}
}- ⚠️ Important: Do not use the `-logFile` command-line argument. The MCP server relies on Unity's standard output for communication.
- 🖥️ Split screen for vision: For tools like `screenshot`, ensure the Unity editor is visible on your screen otherwise it will end up screenshotting the foreground window.
Frequently asked questions
What is unity-mcp-server?
unity-mcp-server is Union ♾️ - The Unity MCP Server
How do I install unity-mcp-server?
Open the GitHub repository and follow its README. Most MCP servers are added to your client's MCP config, then called by your agent.
Is unity-mcp-server open source?
Yes — it is hosted on GitHub at https://github.com/nurture-tech/unity-mcp-server and has 33 stars.
Related MCP tools
Unity MCP acts as a bridge between AI assistants and your Unity Editor. Give your LLM tools to manage assets, control scenes, edit scripts, and automate tasks within Unity.
AI Skills, MCP Tools, and CLI for Unity Engine. Full AI develop and test loop. Use cli for quick setup. Efficient token usage, advanced tools. Any C# method may be turned into a tool by a single line. Works with Claude Code, Gemini, Copilot, Cursor and any other absolutely for free.
An MCP server that allows MCP clients like Claude Desktop or Cursor to perform actions in the Unity Editor C#-based implementation.
Model Context Protocol (MCP) plugin to connect with Unity Editor — designed for OpenAI, Gemini, Claude, Deepseek and Grok interoperability
Catalog of official Microsoft MCP (Model Context Protocol) server implementations for AI-powered data access and tool integration
an open source, extensible AI agent that goes beyond code suggestions - install, execute, edit, and test with any LLM
Run your own MCP server? See who uses it and what to fix.
Measure it with TrackMCP