UnityMCP VRC MCP Server

MCP Server for Unity with help for creating VRChat worlds

Local serverstdioTypeScript

What is the UnityMCP VRC MCP Server?

MCP Server for Unity with help for creating VRChat worlds

What it actually does

Drive the Unity Editor from Claude (or any MCP client). A Unity Editor plugin hosts a small HTTP server inside the Editor, and a small MCP server (Node/TypeScript) sends it one request per tool call and exposes the tools to Claude — run C# in the Editor, read editor/scene state, and pull Unity console logs.

  • Many Editors, many Claude sessions. — Each Editor's plugin hosts its own HTTP server on a
  • Run real C#. — execute_editor_command runs LLM-authored C# (its own usings,
  • Unity 2022.3 → Unity 6. — The command sandbox compiles with Mono's in-process compiler
  • Bounded state. — get_editor_state returns scene/project state on demand, capped so
  • See what it's doing. — take_screenshot renders the Scene or game camera back to Claude
  • Survives recompiles. — A domain reload just drops the HTTP listener for a moment — there's

More MCP options

Compare MCP servers by category, or browse hosted MCP servers if you prefer an endpoint over a local process.

Maintainer setup documentation.

Recorded tools

Check the linked publisher documentation and your connected client's tool list. Names and availability can vary with the server version and account permissions.

ToolWhat it does
list_unity_instancesLists the Unity Editors currently running (name, project, instanceId) so you can pick one.
select_unity_instanceChooses which Editor subsequent calls target by default (per session); calls can also override with instance=.
execute_editor_commandCompiles and runs LLM-authored C# in the Editor; returns result + logs. Optional timeoutMs (default 60s, max 300s) for heavy ops like large imports.
get_editor_stateReturns Unity/scene/project state on demand (bounded).
get_object_detailsInspects one GameObject: transform, components, and size info (Renderer bounds, mesh vertex counts, shared mesh/material names).
get_logsReturns recent Unity console logs.
clear_logsClears the Editor's buffered console logs (e.g. stale errors from a failed snippet) so later get_logs reads aren't ambiguous.
take_screenshotRenders the Scene view or game camera to a JPEG/PNG image, so Claude can see the result of edits.
get_command_pageFetches later pages of any oversized tool result that was paged — execute_editor_command, get_object_details, get_editor_state (used automatically).

How to install the UnityMCP VRC MCP Server

{
  "mcpServers": {
    "unity": {
      "command": "node",
      "args": ["C:\\git\\UnityMCP\\unity-mcp-server\\build\\index.js"]
    }
  }
}

Configuration as documented by the project. Restart the client after saving.

Example prompts to try

  • “Use UnityMCP VRC to list unity instances.”
  • “Use UnityMCP VRC to select unity instance.”
  • “Use UnityMCP VRC to execute editor command.”

Frequently asked questions

Unity 2022.3 through Unity 6. The command sandbox automatically uses the appropriate compiler (Mono for .NET Framework projects, Roslyn for .NET Standard projects).