unity.com
unity.com logo

Unity

Allow MCP clients to perform Unity Editor actions.

Created byApr 22, 2025

Unity MCP

Connect your Unity Editor to LLMs using the Model Context Protocol.
Unity MCP acts as a bridge, allowing AI assistants (like Claude, Cursor) to interact directly with your Unity Editor via a local MCP (Model Context Protocol) Client. Give your LLM tools to manage assets, control scenes, edit scripts, and automate tasks within Unity.

<picture><source media="(prefers-color-scheme: dark)" srcset="https://github.com/justinpbarnett/unity-mcp/assets/11047284/c279675a-dd58-406b-9613-5b16b5c6bb63"><source media="(prefers-color-scheme: light)" srcset="https://github.com/justinpbarnett/unity-mcp/assets/11047284/b54f891d-961b-4048-a9c4-3af46e2a52fc"><img alt="UnityMCP Workflow" width="100%" style="max-width: 600px; display: block; margin-left: auto; margin-right: auto;"></picture>

Key Features

  • ** Natural Language Control:** Instruct your LLM to perform Unity tasks.
  • ** Powerful Tools:** Manage assets, scenes, materials, scripts, and editor functions.
  • ** Automation:** Automate repetitive Unity workflows.
  • ** Extensible:** Designed to work with various MCP Clients.
Your LLM can use functions like:
  • read_console: Gets messages from or clears the console.
  • manage_script: Manages C# scripts (create, read, update, delete).
  • manage_editor: Controls and queries the editor's state and settings.
  • manage_scene: Manages scenes (load, save, create, get hierarchy, etc.).
  • manage_asset: Performs asset operations (import, create, modify, delete, etc.).
  • manage_gameobject: Manages GameObjects: create, modify, delete, find, and component operations.
  • execute_menu_item: Executes a menu item via its path (e.g., "File/Save Project").

How It Works

Unity MCP connects your tools using two components:
  1. Unity MCP Bridge: A Unity package running inside the Editor. (Installed via Package Manager).
  1. Unity MCP Server: A Python server that runs locally, communicating between the Unity Bridge and your MCP Client. (Installed manually).
Flow: [Your LLM via MCP Client] <-> [Unity MCP Server (Python)] <-> [Unity MCP Bridge (Unity Editor)]

Installation

Note: The setup is constantly improving as we update the package. Check back if you randomly start to run into issues.

Prerequisites

  • uv (Python package manager):
  • An MCP Client:

Step 1: Install the Unity Package (Bridge)

  1. Open your Unity project.
  1. Go to Window > Package Manager.
  1. Click + -> Add package from git URL....
  1. Enter:
  1. Click Add.
  1. The MCP Server should automatically be installed onto your machine as a result of this process.

Step 2: Configure Your MCP Client

Connect your MCP Client (Claude, Cursor, etc.) to the Python server you installed in Step 1.
Option A: Auto-Configure (Recommended for Claude/Cursor)
  1. In Unity, go to Window > Unity MCP.
  1. Click Auto Configure Claude or Auto Configure Cursor.
  1. Look for a green status indicator and "Connected". (This attempts to modify the MCP Client's config file automatically).
Option B: Manual Configuration
If Auto-Configure fails or you use a different client:
  1. Find your MCP Client's configuration file. (Check client documentation).
  1. Edit the file to add/update the mcpServers section, using the exact paths from Step 1.
Windows:
(Remember to replace YOUR_USERNAME and use double backslashes \)
macOS:
(Replace YOUR_USERNAME if using ~/bin)
Linux:
(Replace YOUR_USERNAME)

Usage

  1. Open your Unity Project. The Unity MCP Bridge (package) should connect automatically. Check status via Window > Unity MCP.
  1. Start your MCP Client (Claude, Cursor, etc.). It should automatically launch the Unity MCP Server (Python) using the configuration from Installation Step 3.
  1. Interact! Unity tools should now be available in your MCP Client. Example Prompt: Create a 3D player controller.

Contributing

Help make Unity MCP better!
  1. Fork the main repository.
  1. Create a branch (feature/your-idea or bugfix/your-fix).
  1. Make changes.
  1. Commit (feat: Add cool new feature).
  1. Push your branch.
  1. Open a Pull Request against the master branch.

Troubleshooting

  • Unity Bridge Not Running/Connecting:
  • MCP Client Not Connecting / Server Not Starting:
  • Auto-Configure Failed:
Still stuck? Open an Issue.

License

MIT License. See LICENSE file.

Contact


Acknowledgments

Thanks to the contributors and the Unity team.

Unity MCP

Connect your Unity Editor to LLMs using the Model Context Protocol.
Unity MCP acts as a bridge, allowing AI assistants (like Claude, Cursor) to interact directly with your Unity Editor via a local MCP (Model Context Protocol) Client. Give your LLM tools to manage assets, control scenes, edit scripts, and automate tasks within Unity.

<picture><source media="(prefers-color-scheme: dark)" srcset="https://github.com/justinpbarnett/unity-mcp/assets/11047284/c279675a-dd58-406b-9613-5b16b5c6bb63"><source media="(prefers-color-scheme: light)" srcset="https://github.com/justinpbarnett/unity-mcp/assets/11047284/b54f891d-961b-4048-a9c4-3af46e2a52fc"><img alt="UnityMCP Workflow" width="100%" style="max-width: 600px; display: block; margin-left: auto; margin-right: auto;"></picture>

Key Features

  • ** Natural Language Control:** Instruct your LLM to perform Unity tasks.
  • ** Powerful Tools:** Manage assets, scenes, materials, scripts, and editor functions.
  • ** Automation:** Automate repetitive Unity workflows.
  • ** Extensible:** Designed to work with various MCP Clients.
Your LLM can use functions like:
  • read_console: Gets messages from or clears the console.
  • manage_script: Manages C# scripts (create, read, update, delete).
  • manage_editor: Controls and queries the editor's state and settings.
  • manage_scene: Manages scenes (load, save, create, get hierarchy, etc.).
  • manage_asset: Performs asset operations (import, create, modify, delete, etc.).
  • manage_gameobject: Manages GameObjects: create, modify, delete, find, and component operations.
  • execute_menu_item: Executes a menu item via its path (e.g., "File/Save Project").

How It Works

Unity MCP connects your tools using two components:
  1. Unity MCP Bridge: A Unity package running inside the Editor. (Installed via Package Manager).
  1. Unity MCP Server: A Python server that runs locally, communicating between the Unity Bridge and your MCP Client. (Installed manually).
Flow: [Your LLM via MCP Client] <-> [Unity MCP Server (Python)] <-> [Unity MCP Bridge (Unity Editor)]

Installation

Note: The setup is constantly improving as we update the package. Check back if you randomly start to run into issues.

Prerequisites

  • uv (Python package manager):
  • An MCP Client:

Step 1: Install the Unity Package (Bridge)

  1. Open your Unity project.
  1. Go to Window > Package Manager.
  1. Click + -> Add package from git URL....
  1. Enter:
  1. Click Add.
  1. The MCP Server should automatically be installed onto your machine as a result of this process.

Step 2: Configure Your MCP Client

Connect your MCP Client (Claude, Cursor, etc.) to the Python server you installed in Step 1.
Option A: Auto-Configure (Recommended for Claude/Cursor)
  1. In Unity, go to Window > Unity MCP.
  1. Click Auto Configure Claude or Auto Configure Cursor.
  1. Look for a green status indicator and "Connected". (This attempts to modify the MCP Client's config file automatically).
Option B: Manual Configuration
If Auto-Configure fails or you use a different client:
  1. Find your MCP Client's configuration file. (Check client documentation).
  1. Edit the file to add/update the mcpServers section, using the exact paths from Step 1.
Windows:
(Remember to replace YOUR_USERNAME and use double backslashes \)
macOS:
(Replace YOUR_USERNAME if using ~/bin)
Linux:
(Replace YOUR_USERNAME)

Usage

  1. Open your Unity Project. The Unity MCP Bridge (package) should connect automatically. Check status via Window > Unity MCP.
  1. Start your MCP Client (Claude, Cursor, etc.). It should automatically launch the Unity MCP Server (Python) using the configuration from Installation Step 3.
  1. Interact! Unity tools should now be available in your MCP Client. Example Prompt: Create a 3D player controller.

Contributing

Help make Unity MCP better!
  1. Fork the main repository.
  1. Create a branch (feature/your-idea or bugfix/your-fix).
  1. Make changes.
  1. Commit (feat: Add cool new feature).
  1. Push your branch.
  1. Open a Pull Request against the master branch.

Troubleshooting

  • Unity Bridge Not Running/Connecting:
  • MCP Client Not Connecting / Server Not Starting:
  • Auto-Configure Failed:
Still stuck? Open an Issue.

License

MIT License. See LICENSE file.

Contact


Acknowledgments

Thanks to the contributors and the Unity team.