MCP Server for Unity with help for creating VRChat worlds
MCP Server for Unity with help for creating VRChat worlds. The unitymcp vrc mcp server wraps that behind the Model Context Protocol, so an assistant can use it through 9 defined tools rather than through you.
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.
Everything the assistant can do here goes through one of these:
list_unity_instances — Lists the Unity Editors currently running (name, project, instanceId) so you can pick oneselect_unity_instance — Chooses which Editor subsequent calls target by default (per session); calls can also override with instance=execute_editor_command — Compiles and runs LLM-authored C# in the Editor; returns result + logs. Optional timeoutMs (default 60s, max 300s) for heavy ops like large importsget_editor_state — Returns Unity/scene/project state on demand (bounded)get_object_details — Inspects one GameObject: transform, components, and size info (Renderer bounds, mesh vertex counts, shared mesh/material names)get_logs — Returns recent Unity console logsclear_logs — Clears the Editor's buffered console logs (e.g. stale errors from a failed snippet) so later get_logs reads aren't ambiguoustake_screenshot — Renders the Scene view or game camera to a JPEG/PNG image, so Claude can see the result of editsget_command_page — Fetches later pages of any oversized tool result that was paged — execute_editor_command, get_object_details, get_editor_state (used automatically)Installation goes through your MCP client rather than a global install: point it at npm on npm and it is fetched when the client starts. The copy-paste blocks for Claude Desktop, Claude Code and Cursor are further down this page.
Plenty of monitoring and observability servers cover similar ground. The differences that matter in practice are scope of access and how much setup stands between you and a working tool call. UnityMCP VRC's toolset — list_unity_instances, select_unity_instance, execute_editor_command and 6 more — is a fair guide to whether it matches your workflow. It is maintained by swax; worth a glance at recent repository activity before you build anything load-bearing on it.
SyncDev reviews every entry in this directory against the project's own documentation before publishing, and revisits them as servers change.
| Tool | What it does |
|---|---|
| list_unity_instances | Lists the Unity Editors currently running (name, project, instanceId) so you can pick one. |
| select_unity_instance | Chooses which Editor subsequent calls target by default (per session); calls can also override with instance=. |
| execute_editor_command | Compiles 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_state | Returns Unity/scene/project state on demand (bounded). |
| get_object_details | Inspects one GameObject: transform, components, and size info (Renderer bounds, mesh vertex counts, shared mesh/material names). |
| get_logs | Returns recent Unity console logs. |
| clear_logs | Clears the Editor's buffered console logs (e.g. stale errors from a failed snippet) so later get_logs reads aren't ambiguous. |
| take_screenshot | Renders the Scene view or game camera to a JPEG/PNG image, so Claude can see the result of edits. |
| get_command_page | Fetches later pages of any oversized tool result that was paged — execute_editor_command, get_object_details, get_editor_state (used automatically). |
{
"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.
Give your coding agent the full DevTools toolbox: traces, network, console, heap snapshots and Lighthouse.
Dashboards, Prometheus and Loki queries, incidents and alerts — observability by conversation.
Errors with full context — stack traces, issue triage and AI-powered root-cause analysis from Sentry's server.
Enables enhanced web research capabilities for large language models through intelligent search queuing and advanced content extraction.
Automates browser interactions and enables Large Language Models (LLMs) to interact with web pages through Playwright and Chrome DevTools Protocol
Guides tool usage by providing recommendations for MCP tools at each problem-solving stage.