Unity MCP Server

324 tools. 194 can modify or destroy data without limits.

28 destructive tools with no built-in limits. Policy required.

Last updated:

194 can modify or destroy data
130 read-only
324 tools total

Community server · catalogue entry verified 11/06/2026

How to control Unity MCP Server ↓

Read (130) Write / Execute (166) Destructive / Financial (28)
Critical Risk

194 of Unity MCP Server's 324 tools can modify, destroy, or commit something on every call — and an agent calls them with no built-in limits.

PolicyLayer is an MCP gateway — it sits between your AI agents and Unity MCP Server, and nothing reaches the server without passing your rules. These are the rules we recommend:

Deny destructive operations
{
  "unity_amplify_remove_node": {
    "deny_if": [
      {
        "conditions": [],
        "on_deny": "Blocked by default. Requires approval."
      }
    ]
  }
}

Destructive tools should never be available to autonomous agents without human approval.

Rate limit write operations
{
  "unity_asmdef_remove_references": {
    "limits": [
      {
        "counter": "unity_asmdef_remove_references_per_hour",
        "window": "hour",
        "max": 30,
        "scope": "grant"
      }
    ]
  }
}

Prevents bulk unintended modifications from agents caught in loops.

Cap read operations
{
  "unity_project_info": {
    "limits": [
      {
        "counter": "unity_project_info_per_minute",
        "window": "minute",
        "max": 60,
        "scope": "grant"
      }
    ]
  }
}

Controls API costs and prevents retry loops from exhausting upstream rate limits.

  1. Create a free account and register Unity MCP Server — nothing to install.
  2. Add these rules — paste them, or build them visually. Tune the limits to your setup.
  3. Point your MCP client (Claude, Cursor, anything) at your gateway URL.
ENFORCE POLICY ON UNITY →

Free to start. No card required.

DESTRUCTIVE 28 tools
Destructive unity_amplify_remove_node Remove a node from the currently open Amplify Shader Editor graph by its unique ID. Cannot remove the master/o Destructive unity_animation_remove_curve Remove an entire animation curve binding from a clip. Useful for cleaning up or restructuring animations. Destructive unity_animation_remove_event Remove an animation event by its index. Use get_animation_events first to find the index. Destructive unity_animation_remove_keyframe Remove a keyframe from an animation curve by its index. Use get_curve_keyframes first to find the index. Destructive unity_animation_remove_layer Remove a layer from an Animator Controller by index. Cannot remove the base layer (index 0). Destructive unity_animation_remove_parameter Remove a parameter from an Animator Controller by name. Destructive unity_animation_remove_state Remove a state from an Animator Controller layer. Destructive unity_animation_remove_transition Remove a transition from an Animator Controller state. Can target by source/destination names or by index. Destructive unity_asset_delete Delete an asset from the project. Destructive unity_component_remove Remove a component from a GameObject. Destructive unity_console_clear Clear the Unity console log. Destructive unity_editorprefs_delete Delete an EditorPrefs key. Destructive unity_gameobject_delete Delete a GameObject from the scene by path or name. Destructive unity_input_remove_action Remove an action (and its bindings) from an action map. Destructive unity_input_remove_map Remove an action map from an Input Action Asset. Destructive unity_navmesh_clear Clear all baked NavMeshes from the scene. Destructive unity_packages_remove Remove/uninstall a Unity package by name. Destructive unity_playerprefs_delete Delete a PlayerPrefs key. Destructive unity_playerprefs_delete_all Delete ALL PlayerPrefs. Use with caution. Destructive unity_prefab_remove_component Remove a component from a GameObject inside a prefab asset — no scene instance needed. Destructive unity_prefab_remove_gameobject Delete a child GameObject from inside a prefab asset — no scene instance needed. Cannot remove the prefab ro Destructive unity_shadergraph_remove_node Remove a node from a Shader Graph by its ID. Also removes all edges connected to the node. Destructive unity_spriteatlas_delete Delete a SpriteAtlas asset. Destructive unity_terrain_clear_detail Clear all detail/grass from the terrain, optionally filtering by prototype index. Destructive unity_terrain_clear_trees Clear all trees from the terrain, optionally filtering by prototype index. Destructive unity_terrain_remove_layer Remove a texture layer from the terrain by index. Destructive unity_terrain_remove_tree_prototype Remove a tree prototype from the terrain by index. Also removes all placed instances of that prototype. Destructive unity_undo_clear Clear undo history. Can clear for a specific object or all undo history.
EXECUTE 25 tools
Execute unity_particle_playback Control particle system playback: play, stop, pause, restart, or clear. Execute unity_advanced_tool Execute an advanced/specialized Unity tool by name. Use unity_list_advanced_tools Execute unity_build Start a build of the Unity project for a target platform. Execute unity_execute_code Execute arbitrary C code inside the Unity Editor. The code runs in the editor context with access to all Unity Execute unity_execute_menu_item Execute a Unity Editor menu command by its path (e.g. Execute unity_mppm_start Start the currently active scenario. By default also enters Play mode on the main editor Execute unity_mppm_stop Stop the running scenario. By default also exits Play mode on the main editor so Execute unity_scene_new Create a new empty scene. Execute unity_testing_run_tests Start a Unity Test Runner test run. Returns a job ID immediately — use unity_testing_get_job to poll for progr Execute unity_amplify_focus_node Focus the Amplify Shader Editor view on a specific node, centering and optionally zooming to it. Execute unity_profiler_analyze Run a comprehensive performance analysis combining memory, rendering stats, profiler frame data, and scene com Execute unity_selection_focus_scene_view Control the Scene View camera: frame a GameObject, set pivot/rotation/zoom, toggle orthographic. Execute unity_debugger_enable Enable or disable the Frame Debugger. When enabled, Unity pauses rendering after a specific draw call so you c Execute unity_hub_install_editor Install a specific Unity Editor version. Optionally include platform modules (android, ios, webgl, linux, maco Execute unity_hub_install_modules Install additional platform modules to an already-installed Unity Editor version. Execute unity_mppm_activate_player Activate a Virtual Player (clone Unity Editor process). index must be 2, 3, or 4 Execute unity_mppm_activate_scenario Load/activate a specific scenario by its asset path. Execute unity_navmesh_bake Bake the NavMesh for AI navigation. Optionally configure agent radius, height, slope, and climb. Execute unity_navmesh_set_destination Set the destination for a NavMeshAgent (requires Play mode). Execute unity_play_mode Control Unity Editor play mode: enter play, pause, or stop. Execute unity_profiler_enable Enable or disable the Unity Profiler. Optionally enable deep profiling for detailed call stacks (has significa Execute unity_scene_open Open a scene by its asset path (relative to Assets/). Execute unity_sceneview_set_camera Control the Scene View camera: set pivot, rotation, zoom, orthographic mode, look-at target, or frame selectio Execute unity_texture_reimport Force reimport a texture to apply pending changes. Execute unity_uma_rebuild_global_library Rebuild or repair the UMA Global Library (UMAAssetIndexer).
WRITE 141 tools
Write unity_asmdef_remove_references Remove assembly references from an existing .asmdef file. Write unity_spriteatlas_remove Remove packables from a SpriteAtlas. Write unity_prefab_transfer_variant_overrides Transfer (copy) overrides from one prefab variant to another variant of the same base. Reads the property modi Write unity_amplify_add_node Add a node to the currently open Amplify Shader Editor graph. The ASE window must be open with a shader loaded Write unity_amplify_close Close the Amplify Shader Editor window. By default saves the graph before closing to prevent save dialogs. Write unity_amplify_connect Connect two nodes in the Amplify Shader Editor graph. Connects an output port of one node to an input port of Write unity_amplify_create_from_template Create a new Amplify shader from a predefined template (surface, unlit, urp_lit, transparent, post_process). T Write unity_amplify_create_shader Create a new Amplify Shader Editor shader file with proper ASE serialization markers. The shader can then be o Write unity_amplify_disconnect Disconnect a specific port on a node in the Amplify Shader Editor graph. Write unity_amplify_disconnect_all Remove all connections from a specific node in the Amplify Shader Editor graph (both input and output connecti Write unity_amplify_duplicate_node Duplicate a node in the Amplify Shader Editor graph. Creates a new node of the same type at a slight offset fr Write unity_amplify_move_node Move a node to a new position in the Amplify Shader Editor graph. Write unity_amplify_open Open a shader in the Amplify Shader Editor window for visual editing. Only available when Amplify is installed Write unity_amplify_save Save the currently open Amplify Shader Editor graph to disk. If the shader has never been saved, auto-determin Write unity_amplify_set_node_property Set a property or field value on a node in the Amplify Shader Editor graph via reflection. If the property nam Write unity_animation_add_event Add an animation event that calls a function at a specific time during playback. Can pass string, int, or floa Write unity_animation_add_keyframe Add a keyframe to an animation curve with full tangent and weight control. Creates the curve if it doesn Write unity_animation_add_layer Add a new layer to an Animator Controller. Write unity_animation_add_parameter Add a parameter to an Animator Controller (Float, Int, Bool, or Trigger). Write unity_animation_add_state Add a state to an Animator Controller layer. Can optionally assign an animation clip and set as default state. Write unity_animation_add_transition Add a transition between states in an Animator Controller. Supports conditions, exit time, and AnyState transi Write unity_animation_assign_controller Assign an Animator Controller to a GameObject (adds Animator component if needed). Write unity_animation_create_blend_tree Create a blend tree in an Animator Controller for smooth blending between animations. Supports 1D, 2D (Freefor Write unity_animation_create_clip Create a new empty Animation Clip asset. Write unity_animation_create_controller Create a new Animator Controller asset at the specified path. Write unity_animation_set_clip_curve Set an animation curve on a clip. Define keyframes to animate any property (position, rotation, scale, custom) Write unity_animation_set_clip_settings Set animation clip settings: looping, root motion, mirroring, speed, frame rate, and more. Write unity_asmdef_add_references Add assembly references to an existing .asmdef file. Supports assembly names (e.g. Write unity_asmdef_create Create a new Assembly Definition (.asmdef) file for code containerisation and compilation optimisation. Assemb Write unity_asmdef_create_ref Create an Assembly Definition Reference (.asmref) file. This lets you include scripts from a different folder Write unity_asmdef_set_platforms Set the include/exclude platform lists for an assembly definition. Use includePlatforms to restrict to specifi Write unity_asmdef_update_settings Update settings on an assembly definition: rootNamespace, allowUnsafeCode, autoReferenced, noEngineReferences, Write unity_asset_create_prefab Create a prefab from an existing GameObject in the scene. Write unity_asset_import Import an external file into the Unity project as an asset. Write unity_asset_instantiate_prefab Instantiate a prefab into the current scene. Write unity_audio_create_source Create or configure an AudioSource on a GameObject. Can attach to existing object or create new one. Write unity_audio_set_global Set global audio settings (master volume, pause). Write unity_component_add Add a component to a GameObject. Supports built-in types (Rigidbody, BoxCollider, AudioSource, Light, Camera, Write unity_component_batch_wire Wire multiple object references in a single call. Efficient for setting up many references at once (e.g. wirin Write unity_component_set_property Set a property value on a component. Supports floats, ints, strings, bools, vectors, colors, and object refere Write unity_component_set_reference Set an object reference on a component property. Dedicated tool for wiring references between GameObjects, com Write unity_constraint_add Add an animation constraint (position, rotation, scale, aim, parent, lookat) to a GameObject with optional sou Write unity_editorprefs_set Set an EditorPrefs value. Specify type: string (default), int, float, bool. Write unity_gameobject_create Create a new GameObject in the scene. Can specify primitive type (Cube, Sphere, Capsule, Cylinder, Plane, Quad Write unity_gameobject_duplicate Duplicate a GameObject with all its children and components. Write unity_gameobject_reparent Move a GameObject under a new parent in the hierarchy. Write unity_gameobject_set_active Set a GameObject active or inactive. Write unity_gameobject_set_transform Set the transform (position, rotation, scale) of a GameObject. Write unity_hub_set_install_path Set the default installation directory for Unity Editors. Write unity_input_add_action Add an action to an action map in an Input Action Asset. Write unity_input_add_binding Add a simple (non-composite) binding to an action. Use for single-key bindings like Write unity_input_add_composite_binding Add a composite binding (e.g. WASD, arrows) to an action. Composites combine multiple keys into a single value Write unity_input_add_map Add a new action map to an Input Action Asset. Write unity_lighting_create Create a new light in the scene (Point, Directional, Spot, or Area). Write unity_lighting_create_light_probe_group Create a light probe group in the scene. Write unity_lighting_create_reflection_probe Create a reflection probe in the scene. Write unity_lighting_set_environment Set environment lighting: ambient mode/color, fog, skybox material. Write unity_lod_create Create or configure a LODGroup on a GameObject with specified number of LOD levels. Write unity_material_create Create a new material asset with a specified shader and properties. Write unity_mppm_create_scenario Create an MPPM ScenarioConfig asset programmatically. Unity 6+ (MPPM 2.0). Write unity_mppm_deactivate_player Deactivate a Virtual Player previously activated via unity_mppm_activate_player. Write unity_navmesh_add_agent Add a NavMeshAgent component to a GameObject with optional settings (speed, angular speed, acceleration, stopp Write unity_navmesh_add_obstacle Add a NavMeshObstacle component to a GameObject. Write unity_packages_add Add/install a Unity package by identifier (e.g. Write unity_particle_create Create a new Particle System with optional initial settings. Write unity_particle_set_emission Configure particle emission: rate over time, rate over distance. Write unity_particle_set_main Configure the main module of a Particle System: duration, lifetime, speed, size, gravity, simulation space. Write unity_particle_set_shape Configure the emission shape: Sphere, Hemisphere, Cone, Box, Circle, Edge, etc. Write unity_physics_raycast Cast a ray in the physics world and return hit information. Supports single or all-hits mode. Write unity_physics_set_collision_layer Set whether two physics layers should collide or ignore each other. Write unity_physics_set_gravity Get or set the global physics gravity vector. Write unity_playerprefs_set Set a PlayerPrefs value. Specify type: string (default), int, float. Write unity_prefab_add_component Add a component to a GameObject inside a prefab asset — no scene instance needed. Supports built-in types (R Write unity_prefab_add_gameobject Create a new child GameObject inside a prefab asset — no scene instance needed. Optionally create as a primi Write unity_prefab_apply_overrides Apply all overrides from a prefab instance in the scene back to the source prefab asset. Write unity_prefab_apply_variant_override Apply overrides from a prefab variant back to its base prefab. Can apply all overrides or filter by componentT Write unity_prefab_create_variant Create a prefab variant from an existing base prefab. Variants inherit from the base and can override specific Write unity_prefab_revert_overrides Revert all overrides on a prefab instance, restoring it to match the source prefab. Write unity_prefab_revert_variant_override Revert overrides on a prefab variant so it matches its base prefab again. Can revert all overrides or filter b Write unity_prefab_set_property Set a serialized property value on a component inside a prefab asset — no scene instance needed. Supports fl Write unity_prefab_set_reference Wire an ObjectReference property on a component inside a prefab asset — no scene instance needed. Can refere Write unity_prefab_unpack Unpack a prefab instance, converting it to regular GameObjects. Write unity_redo Redo the last undone operation in Unity Editor. Write unity_renderer_set_material Assign a material to a GameObject Write unity_scene_save Save the current scene. Write unity_script_create Create a new C script file in the project with the given content. Write unity_script_update Update the contents of an existing C script file. Write unity_scriptableobject_create Create a new ScriptableObject asset from a C type. The type must already exist as a compiled script. Write unity_scriptableobject_set_field Set a field value on a ScriptableObject asset. Supports int, float, bool, string, and enum types. Write unity_select_instance Select which Unity Editor instance to work with for this session. Write unity_selection_set Set the editor selection to specific GameObjects. Write unity_set_object_reference [LEGACY — prefer unity_component_set_reference] Set an object reference property on a component via the pref Write unity_settings_set_physics Modify physics settings like gravity, solver iterations, sleep threshold, etc. Write unity_settings_set_player Modify player settings like company name, product name, bundle version, run in background. Write unity_settings_set_quality_level Set the active quality level by name or index. Write unity_settings_set_time Modify time settings: fixed timestep, max delta time, time scale (for slow-mo or fast-forward). Write unity_shadergraph_add_node Add a new node to a Shader Graph. Supports common types: Add, Multiply, Subtract, Divide, Lerp, Color, Float, Write unity_shadergraph_connect Connect two nodes in a Shader Graph by creating an edge between an output slot and an input slot. Write unity_shadergraph_create Create a new Shader Graph from a template. Templates: urp_lit, urp_unlit, urp_sprite_lit, urp_sprite_unlit, ur Write unity_shadergraph_disconnect Disconnect two nodes in a Shader Graph by removing the edge between them. Write unity_shadergraph_open Open a shader graph in the Shader Graph editor window for visual editing. Requires Shader Graph package. Write unity_shadergraph_set_node_property Set a property value on a Shader Graph node. Can modify any serialized property like color values, float input Write unity_spriteatlas_add Add sprites, textures, or folders to a SpriteAtlas. Write unity_spriteatlas_create Create a new SpriteAtlas asset at the given path. Write unity_spriteatlas_settings Update SpriteAtlas packing and texture settings. Write unity_taglayer_add_tag Add a new tag to the project. Write unity_taglayer_set_layer Assign a layer to a GameObject, optionally including children. Write unity_taglayer_set_static Set a GameObject as static or not, optionally including children. Write unity_taglayer_set_tag Assign a tag to a GameObject. Write unity_terrain_add_detail_prototype Add a detail/grass prototype to the terrain. Use texturePath for grass billboards or prefabPath for mesh detai Write unity_terrain_add_layer Add a texture layer to the terrain for painting. Write unity_terrain_add_tree_prototype Add a tree prefab prototype to the terrain for tree placement. Write unity_terrain_create Create a new Terrain in the scene with configurable size and heightmap resolution. Write unity_terrain_create_grid Create a grid of connected terrain tiles for large worlds. Automatically sets up terrain neighbors for seamles Write unity_terrain_export_heightmap Export terrain heightmap to a RAW file or PNG texture. Write unity_terrain_fill_layer Fill the entire terrain with a single texture layer (sets that layer to 100% everywhere). Write unity_terrain_flatten Flatten the entire terrain to a uniform height. Write unity_terrain_import_heightmap Import a heightmap from a RAW file or texture asset into the terrain. Write unity_terrain_noise Apply Perlin noise to the entire terrain heightmap. Great for generating natural-looking terrain. Write unity_terrain_paint_detail Paint terrain detail/grass at a normalized position with a brush. Write unity_terrain_paint_layer Paint a terrain texture layer at a normalized position with brush radius, opacity and falloff. Write unity_terrain_place_trees Place trees on the terrain. Supports random scatter over an area or manual positions. Scatter mode supports st Write unity_terrain_raise_lower Raise or lower terrain height at a normalized position with a brush radius and falloff. Use positive delta to Write unity_terrain_resize Resize an existing terrain Write unity_terrain_scatter_detail Randomly scatter detail/grass across the entire terrain or a region. Write unity_terrain_set_height Set terrain height at a position with optional radius falloff. Coordinates are normalized (0-1). Write unity_terrain_set_heights_region Set heights for a rectangular region of the heightmap. Heights are normalized 0-1. Write unity_terrain_set_holes Create or fill holes in the terrain at a region. Holes make the terrain transparent and non-collidable. Write unity_terrain_set_neighbors Set terrain neighbor connections for seamless LOD transitions between tiles. Write unity_terrain_set_settings Modify terrain rendering and physics settings like pixel error, base map distance, detail density, etc. Write unity_terrain_smooth Smooth terrain heights at a normalized position to reduce sharp edges. Uses kernel averaging. Write unity_texture_set_import Set texture import settings: type, compression, max size, filter mode, wrap mode, mipmaps, etc. Write unity_texture_set_normalmap Quick-set a texture as a Normal Map. Write unity_texture_set_sprite Quick-set a texture as a Sprite with optional pixels-per-unit and single/multiple mode. Write unity_ui_create_canvas Create a UI Canvas with an EventSystem. Render modes: Write unity_ui_create_element Create a UI element: text, image, button, panel, slider, toggle, or inputfield. Write unity_ui_set_image Set properties on a UI Image component (color, sprite, imageType, raycastTarget). Write unity_ui_set_text Set properties on a UI Text component (text content, fontSize, color, alignment). Write unity_uma_register_assets Register UMA assets (Slot, Overlay, or WardrobeRecipe) in the UMA Global Library so they are available at runt Write unity_undo Undo the last operation in Unity Editor. Write unity_vfx_open Open a Visual Effect Graph in the VFX Graph editor window. Requires Visual Effect Graph package.
READ 130 tools
Read unity_project_info Get project information: name, path, Unity version, render pipeline, packages, build settings. Read unity_agent_log Get the action log for a specific agent, showing the last 100 actions with timestamps. Read unity_agents_list List all active agent sessions connected to the AB Unity MCP bridge. Shows each agent Read unity_amplify_get_connections Get all connections between nodes in the currently open Amplify Shader Editor graph. Shows which output ports Read unity_amplify_get_node_types List all available Amplify Shader Editor node types by reflecting over the ASE assembly. Returns type names, c Read unity_amplify_get_nodes Get all nodes in the currently open Amplify Shader Editor graph. Returns node IDs, types, positions, and port Read unity_amplify_info Get detailed info about an Amplify shader: properties, render queue, pass count, and Amplify metadata (node co Read unity_amplify_list List all shaders created with Amplify Shader Editor. Detects Amplify shaders by scanning for ASE serialization Read unity_amplify_list_functions List all Amplify Shader Functions in the project. Functions are reusable node groups (similar to Shader Graph Read unity_amplify_master_node_info Get detailed information about the master/output node of the currently open Amplify shader graph, including al Read unity_amplify_node_info Get detailed information about a specific node in the Amplify Shader Editor graph, including all input/output Read unity_amplify_status Check if Amplify Shader Editor is installed in the project. Returns available commands, shader count, and func Read unity_animation_clip_info Get detailed information about an Animation Clip: curves, length, events, loop settings. Read unity_animation_controller_info Get detailed information about an Animator Controller: layers, states, transitions, parameters. Read unity_animation_get_blend_tree Get the structure and configuration of a blend tree including all child motions, thresholds, positions, and ti Read unity_animation_get_curve_keyframes Get all keyframes from an animation curve binding with full tangent data (inTangent, outTangent, inWeight, out Read unity_animation_get_events List all animation events on a clip with their function names, times, and parameters. Read unity_asmdef_info Get detailed info about an Assembly Definition file: name, references, platforms, settings. Read unity_asmdef_list List all Assembly Definition files in the project. Returns name, path, reference count, and platform info for Read unity_asset_list List assets in the project. Can filter by path, type, and search term. Read unity_audio_info Get info about all AudioSources and AudioListeners in the scene. Read unity_component_get_properties Get all serialized properties of a component on a GameObject. Read unity_component_get_referenceable Discover what objects can be assigned to an ObjectReference property. Returns matching scene objects and proje Read unity_console_log Get recent Unity console log messages (errors, warnings, info). Useful for debugging. Read unity_constraint_info Get all constraints on a GameObject with their type, active state, weight, and source count. Read unity_debugger_event_details Get detailed information about a specific Frame Debugger event: shader name, pass, keywords, vertex/index/inst Read unity_debugger_events List all rendering events (draw calls) captured by the Frame Debugger. The Frame Debugger must be enabled firs Read unity_editor_state Get the current Unity Editor state: play mode, compilation status, active scene, project path. Read unity_editorprefs_get Get an EditorPrefs value by key. Specify type: string (default), int, float, bool. Read unity_gameobject_info Get detailed info about a specific GameObject: transform, components, children, active state, tags, layer. Read unity_get_compilation_errors Get C compilation errors and warnings from the Unity Editor. Read unity_get_project_context Get project-specific context and documentation that the team has prepared for AI agents. Read unity_graphics_asset_preview Get a visual preview thumbnail of any Unity asset (prefab, material, texture, mesh, etc.) as an inline image. Read unity_graphics_game_capture Capture the Game View camera as an inline image. Returns base64 PNG that Claude can see directly. Use to see w Read unity_graphics_lighting_summary Get a summary of all lights in the scene, or details about a specific light. Returns type, color, intensity, r Read unity_graphics_material_info Get detailed material information: shader name, render queue, all properties (colors, floats, vectors, texture Read unity_graphics_mesh_info Get detailed mesh geometry information: vertex count, triangle count, submeshes, UV channels, blend shapes, bo Read unity_graphics_renderer_info Get detailed Renderer component information: renderer type, materials list, mesh reference, bounds, shadow set Read unity_graphics_scene_capture Capture the current Scene View as an inline image. Returns base64 PNG that Claude can see directly. Use to vis Read unity_graphics_texture_info Get detailed texture information: dimensions, format, compression, mipmaps, memory estimate, import settings, Read unity_hub_available_releases List Unity Editor versions available for download from Unity Hub. Read unity_hub_get_install_path Get the current default installation path for Unity Editors. Read unity_hub_list_editors List all Unity Editor versions currently installed via Unity Hub, including their installation paths. Read unity_input_info Get detailed info about an Input Action Asset: maps, actions, bindings, and control schemes. Read unity_lighting_info Get info about all lights in the scene plus environment/fog settings. Read unity_list_advanced_tools List all available advanced/specialized Unity tools organized by category. Read unity_list_instances List all running Unity Editor instances that the MCP can connect to. Read unity_lod_info Get LODGroup info: LOD levels, screen transition heights, renderer counts. Read unity_memory_breakdown Get detailed memory breakdown by asset type: textures, meshes, materials, shaders, audio clips, animation clip Read unity_memory_snapshot Take a detailed memory snapshot using the Memory Profiler package (com.unity.memoryprofiler). Requires the pac Read unity_memory_status Check Memory Profiler status: whether the com.unity.memoryprofiler package is installed, available commands, a Read unity_memory_top_assets Get the top N memory-consuming assets across all types. Shows asset name, type, size, and asset path. Optional Read unity_mppm_info Get multiplayer play mode information including CurrentPlayer state, tags, and MPPM package version. Read unity_mppm_list_players List the 4 MPPM virtual-player slots and their current state Read unity_mppm_list_scenarios List all MPPM (Multiplayer PlayMode) scenarios in the project with details about instances and configurations. Read unity_mppm_status Get the current scenario status including running state, active scenario name, and progress. Read unity_navmesh_info Get NavMesh information: vertex/triangle count, agents, obstacles, agent types. Read unity_packages_info Get detailed info about an installed package including versions and dependencies. Read unity_packages_list List all installed Unity packages with their name, version, source, and status. Read unity_packages_search Search for Unity packages in the registry. Read unity_particle_info Get detailed Particle System info: main module, emission, shape, and all module enable states. Read unity_physics_collision_matrix Get the physics collision matrix showing which layers collide with each other. Read unity_physics_overlap_sphere Find all colliders within a sphere. Useful for area-of-effect queries. Read unity_playerprefs_get Get a PlayerPrefs value by key. Specify type: string (default), int, float. Read unity_prefab_get_hierarchy Get the full hierarchy tree of a prefab asset directly from disk — no scene instance needed. Shows all GameO Read unity_prefab_get_properties Read all serialized properties of a component on a GameObject inside a prefab asset — no scene instance need Read unity_prefab_info Get detailed prefab information: overrides, variant status, added/removed components. Works on both prefab ass Read unity_prefab_variant_info Get variant information for a prefab asset: whether it Read unity_profiler_frame_data Get CPU profiler frame data as a hierarchical timing breakdown. Shows function names, total/self time, call co Read unity_profiler_memory Get detailed memory usage breakdown: total allocated, reserved, Mono heap used/size, graphics driver memory, t Read unity_queue_info Get the current state of the multi-agent request queue: total queued requests, active agents, per-agent queue Read unity_queue_ticket_status Check the status of a specific queue ticket by ID. Returns the ticket Read unity_scene_hierarchy Get the full hierarchy tree of all GameObjects in the active scene, including their components and children. Read unity_scene_info Get information about the currently open scene(s), including name, path, dirty state, and root game objects. Read unity_scene_stats Get comprehensive scene statistics: total objects, vertices, triangles, lights, cameras, colliders, and top co Read unity_sceneview_info Get Scene View camera info: pivot position, rotation, zoom, orthographic mode, 2D mode. Read unity_screenshot_game Capture a screenshot of the Game View. The screenshot is saved on the next frame render. Read unity_screenshot_scene Capture a screenshot of the Scene View camera. Returns immediately with the saved file path. Read unity_script_read Read the contents of a C script file from the project. Read unity_scriptableobject_info Get all serialized properties and values of a ScriptableObject asset. Read unity_scriptableobject_list_types List all available ScriptableObject types in the project. Useful for discovering what SO types can be created. Read unity_search_assets Search for assets in the project by name, type, and folder. Uses Unity Read unity_search_by_component Find all GameObjects in the scene that have a specific component type. Returns their paths and instance IDs. Read unity_search_by_layer Find all GameObjects on a specific layer. Read unity_search_by_name Find all GameObjects whose name contains a pattern. Supports substring matching or regex. Read unity_search_by_shader Find all renderers using a specific shader. Read unity_search_by_tag Find all GameObjects with a specific tag. Read unity_search_missing_references Find all missing/broken object references and missing scripts in the scene. Essential for cleanup and debuggin Read unity_selection_find_by_type Find all GameObjects in the scene that have a specific component type (e.g. Read unity_selection_get Get the currently selected GameObjects in the Unity Editor. Read unity_settings_physics Get physics settings: gravity, solver iterations, sleep threshold, contact offset, bounce threshold. Read unity_settings_player Get player settings: company name, product name, version, color space, scripting backend, target architecture. Read unity_settings_quality Get current quality settings: level, shadows, anti-aliasing, LOD bias, vsync, and all quality levels available Read unity_settings_render_pipeline Get information about the current render pipeline (Built-in, URP, HDRP). Read unity_settings_time Get time settings: fixedDeltaTime, maximumDeltaTime, timeScale. Read unity_shader_get_properties Get exposed properties of any shader (.shader or .shadergraph). Shows property name, display name, type (Color Read unity_shader_list List all shaders in the project (both .shader and .shadergraph files). Works without Shader Graph package. Fil Read unity_shadergraph_get_edges Get all edges (connections) in a Shader Graph. Returns source and target node IDs with slot IDs, showing how n Read unity_shadergraph_get_node_types List all available Shader Graph node types by reflecting over the ShaderGraph assembly. Returns type names, ca Read unity_shadergraph_get_nodes Get all nodes in a Shader Graph file. Returns node IDs, types, positions, and basic property data by parsing t Read unity_shadergraph_info Get detailed info about a specific shader graph: exposed properties (with types, ranges), node count, features Read unity_shadergraph_list List all Shader Graph (.shadergraph) assets in the project. Requires Shader Graph package. Shows shader name, Read unity_shadergraph_list_subgraphs List all Sub Graph (.shadersubgraph) assets in the project. Sub Graphs are reusable node groups for Shader Gra Read unity_shadergraph_status Check which graph packages are installed: Shader Graph (com.unity.shadergraph) and Visual Effect Graph (com.un Read unity_spriteatlas_info Get SpriteAtlas details: packables, texture settings, packing settings. Read unity_spriteatlas_list Find all SpriteAtlas assets in the project, optionally filtered by folder. Read unity_taglayer_info Get all tags, layers, and sorting layers in the project. Read unity_terrain_get_height Sample the terrain height at a world position. Read unity_terrain_get_heights_region Get heights for a rectangular region of the heightmap. Returns normalized 0-1 values. Read unity_terrain_get_steepness Get the terrain steepness (slope angle in degrees) and surface normal at a world position. Read unity_terrain_get_tree_instances Get all tree instances on the terrain. Returns positions, prototype indices, scales, and count. Read unity_terrain_info Get detailed terrain information: size, resolution, layers, tree/detail counts, settings. Read unity_terrain_list List all terrains in the scene with their names, positions, sizes, and basic info. Read unity_testing_get_job Get the status and results of a test run job. If no jobId is provided, returns the latest job. Read unity_testing_list_tests List available tests in the Unity project. Returns test names, categories, and run state. Read unity_texture_info Get texture info and import settings: size, format, compression, sprite mode, filter, wrap, mip maps, etc. Read unity_ui_info Get UI information: canvases, text/image/button counts. Read unity_uma_get_project_config Get project-specific UMA configuration by querying existing assets. Returns detected races, UMA materials, war Read unity_uma_inspect_fbx Inspect an FBX file to list all SkinnedMeshRenderers with vertex counts, weighted bones (keepList), and bone c Read unity_uma_list_global_library List assets registered in the UMA Global Library. Can filter by type (Slot, Overlay, Race, WardrobeRecipe) and Read unity_uma_list_uma_materials List all UMAMaterial assets in the project with their channel counts. Useful for choosing the right material w Read unity_uma_list_wardrobe_slots List all wardrobe slot names available for a given UMA race (e.g. Read unity_uma_verify_recipe Validate a UMA WardrobeRecipe by checking that all referenced slots and overlays exist in the Global Library, Read unity_undo_history Get information about the current undo group. Read unity_vfx_list List all Visual Effect Graph assets in the project. Requires Visual Effect Graph package (com.unity.visualeffe Read unity_editor_ping Check if the Unity Editor bridge is running and responsive. Returns editor version, project name, and connecti Read unity_graphics_prefab_render Render a prefab from a configurable angle as an inline image. Returns base64 PNG that Claude can see directly. Read unity_physics_overlap_box Find all colliders within a box volume. Read unity_prefab_compare_variant Compare a prefab variant to its base prefab. Returns all overrides: modified properties, added/removed compone Read unity_profiler_stats Get current rendering statistics: draw calls, batches, triangles, vertices, set-pass calls, frame time, render

Other MCP servers with similar tools — same risk classification, starter policies for each.

Can an AI agent delete data through the Unity MCP Server MCP server? +

Yes. The Unity MCP Server server exposes 28 destructive tools including unity_amplify_remove_node, unity_animation_remove_curve, unity_animation_remove_event. These permanently remove resources with no undo. PolicyLayer blocks destructive tools by default so they never reach the upstream server.

How do I prevent bulk modifications through Unity MCP Server? +

The Unity MCP Server server has 141 write tools including unity_asmdef_remove_references, unity_spriteatlas_remove, unity_prefab_transfer_variant_overrides. Set a rate limit in your policy -- for example, 10 calls per hour prevents an agent from making more than 10 modifications per hour. PolicyLayer enforces this at the gateway, before calls reach Unity MCP Server.

How many tools does the Unity MCP Server MCP server expose? +

324 tools across 5 categories: Destructive, Execute, Financial, Read, Write. 130 are read-only. 194 can modify, create, or delete data.

How do I enforce a policy on Unity MCP Server? +

Register the Unity MCP Server MCP server in PolicyLayer, apply the suggested rules above (adjust the limits to your use case), and point your AI client at the PolicyLayer proxy URL instead of the server directly. Your agents keep the same tools; PolicyLayer evaluates every call against policy before it executes. Nothing to install, live in minutes.

Enforce policy on every Unity MCP Server tool call.

Deterministic rules across all 324 Unity MCP Server tools. Per-identity grants. Full audit log. Live in minutes. Nothing to install.

Free to start. No card required.

324 Unity MCP Server tools catalogued and risk-classified — across an index of 42,500+ MCP servers.

// GET IN TOUCH

Have a question or want to learn more? Send us a message.

Message sent.

We'll get back to you soon.