servers / unity-mcp-server

unity-mcp-server

communitystdiolocaldestructive capablehealthy

Unity MCP Server — 268 tools for AI-assisted game development. Connect Claude, Cursor, or any MCP client to Unity Editor & Unity Hub. Scene management, GameObjects, components, builds, profiling, Shader Graph, Amplify, terrain, physics, NavMesh, animation, MPPM multiplayer & more. Free & open source by AnkleBreaker Studio.


01Tools · 80

How to read this: tool names here are observed from a live tools/list handshake. The Risk label is a heuristic inferred from the tool name (write/destructive verbs), not from executing the tool — a conservative guess, not a verified capability. We never escalate risk from a description. Found one that's wrong? Tell us — we fix on report.

ToolRiskSide effectsApproval
unity_console_log
Get recent Unity console log messages (errors, warnings, info).
readfalseunknown
unity_search_by_layer
Find all GameObjects on a specific layer.
readfalseunknown
unity_execute_code
Execute arbitrary C# code inside the Unity Editor. The code runs in the editor context with access to all Unity APIs. Useful for one-off operations, queries, and automation. Return values are serialized to JSON.
writetrueunknown
unity_screenshot_game
Capture a screenshot of the Game View. The screenshot is saved on the next frame render.
readfalseunknown
unity_hub_available_releases
List Unity Editor versions available for download from Unity Hub.
readfalseunknown
unity_undo
Undo the single most recent step on Unity's global undo stack (Ctrl+Z). To revert a specific MCP action, prefer unity_undo_last.
unknownunknownunknown
unity_scene_new
Create a new empty scene (REPLACES the current one). Refuses if any loaded scene has unsaved changes — pass saveFirst or discardUnsavedChanges.
unknownunknownunknown
unity_renderer_set_material
Assign a material to a GameObject's renderer.
writetrueunknown
unity_component_set_reference
Wire an object reference on a component property. Resolves by asset path, scene GameObject name, component type, or instance ID (richer than set_property for ObjectReference fields).
writetrueunknown
unity_component_get_referenceable
Discover what objects can be assigned to an ObjectReference property. Returns matching scene objects and project assets filtered by the expected type. Useful before wiring references to know what's available.
readfalseunknown
unity_set_object_reference
[LEGACY] Set an object reference on a component. Prefer unity_component_set_reference (richer resolution).
writetrueunknown
unity_selection_find_by_type
Find all GameObjects in the scene that have a specific component type (e.g. 'Rigidbody', 'Camera', 'Light', 'AudioSource', or custom scripts).
readfalseunknown
unity_asset_delete
Delete an asset — to the OS trash by default (NOT undoable via unity_undo_last). Deleting a FOLDER is recursive and refuses without recursive:true.
destructivetruetrue
unity_packages_remove
Remove/uninstall a Unity package by name.
destructivetruetrue
unity_component_get_properties
Get all serialized properties of a component on a GameObject.
readfalseunknown
unity_get_project_context
Get the project docs/guidelines the team prepared for AI agents (from Assets/MCP/Context/). No args = all context; pass a category for one document. Call early in a session.
readfalseunknown
unity_script_update
Update the contents of an existing C# script file.
writetrueunknown
unity_component_batch_wire
Wire multiple object references in one call (e.g. a manager to all its panels). Each entry: target GameObject, property, reference to assign.
unknownunknownunknown
unity_editor_state
Get the current Unity Editor state: play mode, compilation status, active scene, project path.
readfalseunknown
unity_packages_info
Get detailed info about an installed package including versions and dependencies.
readfalseunknown
unity_selection_get
Get the currently selected GameObjects in the Unity Editor.
readfalseunknown
unity_gameobject_info
Get detailed info about a specific GameObject: transform, components, children, active state, tags, layer.
readfalseunknown
unity_scene_stats
Get comprehensive scene statistics: total objects, vertices, triangles, lights, cameras, colliders, and top component types.
readfalseunknown
unity_agent_log
Get the action log for a specific agent, showing the last 100 actions with timestamps.
readfalseunknown
unity_scene_info
Get information about the currently open scene(s), including name, path, dirty state, and root game objects.
readfalseunknown
unity_graphics_scene_capture
Capture the current Scene View as an inline image. Returns base64 PNG that Claude can see directly. Use to visually inspect the scene layout.
readfalseunknown
unity_packages_search
Search for Unity packages in the registry.
readfalseunknown
unity_advanced_tool
Execute an advanced Unity tool by name (269 cached + plugin lazy-loaded; discover names via unity_list_advanced_tools search=/category=, parameters via tool=).
readfalseunknown
unity_get_compilation_errors
Get C# compilation errors/warnings via CompilationPipeline — independent of the console buffer (survives console clear and log flooding). Prefer this over unity_console_log for compile issues.
readfalseunknown
unity_search_missing_references
Find all missing/broken object references and missing scripts in the scene. Essential for cleanup and debugging.
readfalseunknown
unity_search_by_name
Find all GameObjects whose name contains a pattern. Supports substring matching or regex.
readfalseunknown
unity_list_instances
List running Unity Editor instances (name, port, version, clone flag, pluginVersion). With multiple instances, select one with unity_select_instance next.
readfalseunknown
unity_component_set_property
Set a property value on a component. Supports floats, ints, strings, bools, vectors, colors, and object references. For ObjectReference properties, pass value as: an asset path string, a scene object name string, null to clear, or an object with {assetPath}, {instanceId}, or {gameObject, componentType}.
writetrueunknown
unity_project_info
Get project information: name, path, Unity version, render pipeline, packages, build settings.
readfalseunknown
unity_scene_hierarchy
Get the hierarchy tree of all GameObjects in the active scene, including their components and children. Dense by default: per-node fields at their default value (active=true, tag=Untagged, layer=Default, origin position, Transform) are omitted — an absent field means the default.
readfalseunknown
unity_gameobject_set_transform
Set the transform (position, rotation, scale) of a GameObject.
writetrueunknown
unity_asset_list
List assets in the project. Can filter by path, type, and search term.
readfalseunknown
unity_build
Start a build of the Unity project for a target platform.
unknownunknownunknown
unity_play_mode
Control Unity Editor play mode: enter play, pause, or stop.
unknownunknownunknown
unity_packages_list
List all installed Unity packages with their name, version, source, and status.
readfalseunknown
unity_search_by_tag
Find all GameObjects with a specific tag.
readfalseunknown
unity_list_advanced_tools
Discover advanced Unity tools (execute them via unity_advanced_tool) without loading full schemas: search=keywords → matching tools; category=name → its tools with parameter names; tool=name → that tool's full parameter schema; no args → all category names with counts (e.g. animation, terrain, shadergraph, probuilder, uma, physics, lighting, ui, …).
readfalseunknown
unity_agents_list
List all active agent sessions connected to the AB Unity MCP bridge. Shows each agent's ID, connection time, last activity, current action, total actions count, queued/completed request counts, and average response time.
readfalseunknown
unity_hub_list_editors
List all Unity Editor versions currently installed via Unity Hub, including their installation paths.
readfalseunknown
unity_queue_info
Get the current state of the multi-agent request queue: total queued requests, active agents, per-agent queue depths, and completed cache size. Useful for monitoring when multiple agents are working on the same Unity project.
readfalseunknown
unity_undo_history
List recent MCP actions with undo state: per-agent attribution, whether each is still undoable, target, and the current undo group. Use it to decide what unity_undo_last reverts or to pick an agentId.
readfalseunknown
unity_packages_add
Add/install a Unity package by identifier (e.g. 'com.unity.cinemachine' or 'com.unity.cinemachine@3.0.0').
writetrueunknown
unity_screenshot_scene
Capture a screenshot of the Scene View camera. Returns immediately with the saved file path.
readfalseunknown
unity_editor_ping
Check if the Unity Editor bridge is running and responsive. Returns editor version, project name, and connection status.
readfalseunknown
unity_hub_install_editor
Install a specific Unity Editor version. Optionally include platform modules (android, ios, webgl, linux, macos, windows-il2cpp).
unknownunknownunknown
unity_scene_open
Open a scene by its asset path (relative to Assets/). Refuses if any loaded scene has unsaved changes — pass saveFirst or discardUnsavedChanges.
unknownunknownunknown
unity_graphics_game_capture
Capture the Game View camera as an inline image. Returns base64 PNG that Claude can see directly. Use to see what the player sees.
readfalseunknown
unity_search_by_component
Find all GameObjects in the scene that have a specific component type. Returns their paths and instance IDs.
readfalseunknown
unity_asset_create_prefab
Create a prefab from an existing GameObject in the scene.
writetrueunknown
unity_scene_save
Save the current scene. A never-saved scene requires `path` (saving without one would open Unity's interactive Save dialog).
unknownunknownunknown
unity_screenshot_editor_window
Capture a specific Editor window (Inspector, Project, Console, custom) to a PNG file via Win32 PrintWindow — works even when occluded, no focus steal. USE ONLY ON EXPLICIT USER REQUEST — never proactively or for your own inspection. WINDOWS EDITOR ONLY: on macOS/Linux it returns { success:false, platform } — do not retry, tell the user it's unavailable there. For game/scene views use unity_screenshot_game / unity_screenshot_scene (cross-platform).
readfalseunknown
unity_prefab_info
Get detailed prefab information: overrides, variant status, added/removed components. Works on both prefab assets and scene instances.
readfalseunknown
unity_hub_get_install_path
Get the current default installation path for Unity Editors.
readfalseunknown
unity_redo
Redo the last undone operation in Unity Editor.
unknownunknownunknown
unity_hub_install_modules
Install additional platform modules to an already-installed Unity Editor version.
unknownunknownunknown
unity_execute_menu_item
Execute a Unity Editor menu command by its path (e.g. 'File/Save', 'GameObject/3D Object/Cube', 'Window/General/Console').
writetrueunknown
unity_search_assets
Search for assets in the project by name, type, and folder. Uses Unity's AssetDatabase search.
readfalseunknown
unity_select_instance
Select the Unity Editor instance this session targets; subsequent unity_* calls route there. Identify it by projectName (stable) or port (dynamic — can change across editor restarts). PARALLEL SAFETY: after selecting, include port on every unity_* call when multiple agents share this MCP process.
unknownunknownunknown
unity_gameobject_duplicate
Duplicate a GameObject with all its children and components.
unknownunknownunknown
unity_component_add
Add a component to a GameObject. Supports built-in types (Rigidbody, BoxCollider, AudioSource, Light, Camera, etc.) and custom scripts.
writetrueunknown
unity_script_read
Read the contents of a C# script file from the project.
readfalseunknown
unity_selection_set
Set the editor selection to specific GameObjects.
writetrueunknown
unity_gameobject_create
Create a new GameObject in the scene. Can specify primitive type (Cube, Sphere, Capsule, Cylinder, Plane, Quad), parent, and initial transform.
writetrueunknown
unity_hub_set_install_path
Set the default installation directory for Unity Editors.
writetrueunknown
unity_material_create
Create a new material asset with a specified shader and properties.
writetrueunknown
unity_gameobject_reparent
Move a GameObject under a new parent in the hierarchy.
unknownunknownunknown
unity_gameobject_delete
Delete a GameObject by path or name. Refuses if its runtime mesh is shared by other objects (ProBuilder clones) — reports sharedWith; pass force:true to override.
destructivetruetrue
unity_selection_focus_scene_view
Control the Scene View camera: frame a GameObject, set pivot/rotation/zoom, toggle orthographic.
readfalseunknown
unity_undo_last
Revert the most recent undoable MCP action as a whole (create/edit/boolean, not one internal step — each write runs in its own named undo group). With agentId, targets that agent's most recent action. Unity's undo is LINEAR: reverting an action also reverts anything newer stacked on it, so this refuses to cascade and lists what would be affected unless force:true. (execute-code and reads are never targets.)
unknownunknownunknown
unity_console_clear
Clear the Unity console log.
unknownunknownunknown
unity_gameobject_set_active
Set a GameObject active or inactive.
writetrueunknown
unity_asset_import
Import an external file into the Unity project as an asset.
unknownunknownunknown
unity_asset_instantiate_prefab
Instantiate a prefab into the current scene.
unknownunknownunknown
unity_script_create
Create a new C# script file in the project with the given content.
writetrueunknown
unity_component_remove
Remove a component from a GameObject.
destructivetruetrue

02Install & source
npx -y anklebreaker-unity-mcp@latest
npx

03Access granted
Execute code · write

The access this server can exercise, inferred from its verified tools — not a declared OAuth scope.


05Provenance & freshness
sourcesGitHub repo search [p4]
last_checked2026-08-28 14:27Z
next_check2026-08-28 17:27Z
cadenceevery 3h
verifiedmetadata:passed metadata:passed metadata:passed metadata:passed metadata:passed metadata:passed metadata:passed metadata:passed metadata:passed metadata:passed
index_statusindex9 unique facts >= 5

06Badge

Add the “as seen on MCPExplorer” badge to your README. unity-mcp-server MCP — as seen on mcpexplorer.com

[![unity-mcp-server MCP — as seen on mcpexplorer.com](https://mcpexplorer.com/badge/unity-mcp-server.svg)](https://mcpexplorer.com/servers/unity-mcp-server)

Next step

This is one server. A loadout combines the right servers, governance, and proven plays for a whole job — assembled deliberately, not tool-dumped.

Explore loadouts →
unity-mcp-server — MCPExplorer