Unity MCP server

Allow MCP clients to perform Unity Editor actions.
Back to servers
Setup instructions
Provider
Justin Barnett
Release date
Mar 18, 2025
Language
C#
Stats
3.5K stars

MCP for Unity is a powerful tool that enables AI assistants like Claude and Cursor to interact directly with your Unity Editor through the Model Context Protocol (MCP). This bridge allows AI to perform tasks like managing assets, controlling scenes, editing scripts, and automating workflows within Unity.

Installation

Prerequisites

  • Python: Version 3.12 or newer
  • Unity Hub & Editor: Version 2021.3 LTS or newer
  • uv (Python toolchain manager):
    # macOS / Linux
    curl -LsSf https://astral.sh/uv/install.sh | sh
    
    # Windows (PowerShell)
    winget install --id=astral-sh.uv  -e
    
  • An MCP Client: Claude Desktop, Claude Code, Cursor, etc.

Step 1: Install the Unity Package

Via Git URL

  1. Open your Unity project
  2. Go to Window > Package Manager
  3. Click + -> Add package from git URL...
  4. Enter:
    https://github.com/CoplayDev/unity-mcp.git?path=/MCPForUnity
    
  5. Click Add
  6. The MCP server is installed automatically by the package on first run or via Auto-Setup

Via OpenUPM

  1. Install the OpenUPM CLI
  2. Open a terminal and navigate to your Unity project directory
  3. Run openupm add com.coplaydev.unity-mcp

Step 2: Configure Your MCP Client

Option A: Auto-Setup (Recommended)

  1. In Unity, go to Window > MCP for Unity
  2. Click Auto-Setup
  3. Look for a green status indicator 🟢 and "Connected ✓"

Option B: Manual Configuration

If Auto-Setup fails:

  1. Find your MCP Client's configuration file
    • Claude (macOS): ~/Library/Application Support/Claude/claude_desktop_config.json
    • Claude (Windows): %APPDATA%\Claude\claude_desktop_config.json
  2. Edit the file to add/update the mcpServers section

For Windows:

{
  "mcpServers": {
    "UnityMCP": {
      "command": "uv",
      "args": [
        "run",
        "--directory",
        "C:\\Users\\YOUR_USERNAME\\AppData\\Local\\UnityMCP\\UnityMcpServer\\src",
        "server.py"
      ]
    }
  }
}

For macOS:

{
  "mcpServers": {
    "UnityMCP": {
      "command": "uv",
      "args": [
        "run",
        "--directory",
        "/Users/YOUR_USERNAME/Library/AppSupport/UnityMCP/UnityMcpServer/src",
        "server.py"
      ]
    }
  }
}

Usage

  1. Open your Unity Project. The MCP for Unity package should connect automatically. Check status via Window > MCP for Unity.

  2. Start your MCP Client (Claude, Cursor, etc.). It should automatically launch the MCP for Unity Server (Python) using the configuration from Installation Step 2.

  3. Interact! Unity tools should now be available in your MCP Client.

    Example Prompts:

    • Create a 3D player controller
    • Create a tic-tac-toe game in 3D
    • Create a cool shader and apply to a cube

Available Tools

Your AI assistant can use various functions through MCP:

  • 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)
  • manage_shader: Performs shader CRUD operations
  • manage_gameobject: Manages GameObjects and their components
  • execute_menu_item: Executes Unity Editor menu items
  • apply_text_edits: Precise text edits with precondition hashes
  • script_apply_edits: Structured C# method/class edits
  • validate_script: Fast validation to catch syntax/structure issues

Troubleshooting

Unity Bridge Not Running/Connecting

  • Ensure Unity Editor is open
  • Check the status window: Window > MCP for Unity
  • Restart Unity

MCP Client Not Connecting / Server Not Starting

  • Verify Server Path: Double-check the --directory path in your MCP Client's JSON config
  • Verify uv: Make sure uv is installed and working (uv --version)
  • Run Manually: Try running the server directly from the terminal to see errors:
    cd /path/to/your/UnityMCP/UnityMcpServer/src
    uv run server.py
    

For additional help, join the Discord community.

How to install this MCP server

For Claude Code

To add this MCP server to Claude Code, run this command in your terminal:

claude mcp add-json "unityMCP" '{"command":"uv","args":["--directory","/path/to/your/unity-mcp/Python","run","server.py"]}'

See the official Claude Code MCP documentation for more details.

For Cursor

There are two ways to add an MCP server to Cursor. The most common way is to add the server globally in the ~/.cursor/mcp.json file so that it is available in all of your projects.

If you only need the server in a single project, you can add it to the project instead by creating or adding it to the .cursor/mcp.json file.

Adding an MCP server to Cursor globally

To add a global MCP server go to Cursor Settings > Tools & Integrations and click "New MCP Server".

When you click that button the ~/.cursor/mcp.json file will be opened and you can add your server like this:

{
    "mcpServers": {
        "unityMCP": {
            "command": "uv",
            "args": [
                "--directory",
                "/path/to/your/unity-mcp/Python",
                "run",
                "server.py"
            ]
        }
    }
}

Adding an MCP server to a project

To add an MCP server to a project you can create a new .cursor/mcp.json file or add it to the existing one. This will look exactly the same as the global MCP server example above.

How to use the MCP server

Once the server is installed, you might need to head back to Settings > MCP and click the refresh button.

The Cursor agent will then be able to see the available tools the added MCP server has available and will call them when it needs to.

You can also explicitly ask the agent to use the tool by mentioning the tool name and describing what the function does.

For Claude Desktop

To add this MCP server to Claude Desktop:

1. Find your configuration file:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
  • Linux: ~/.config/Claude/claude_desktop_config.json

2. Add this to your configuration file:

{
    "mcpServers": {
        "unityMCP": {
            "command": "uv",
            "args": [
                "--directory",
                "/path/to/your/unity-mcp/Python",
                "run",
                "server.py"
            ]
        }
    }
}

3. Restart Claude Desktop for the changes to take effect

Want to 10x your AI skills?

Get a free account and learn to code + market your apps using AI (with or without vibes!).

Nah, maybe later