AnkleBreaker UnityCAUTION
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
Overview
From the repository's own README, as read at the audited commit. Badges and raw HTML are left out.
[](https://github.com/AnkleBreaker-Studio/unity-mcp-server/actions/workflows/test.yml?query=branch%3Amain) [](https://github.com/AnkleBreaker-Studio/unity-mcp-plugin/actions/workflows/checks.yml?query=branch%3Amain)
Build worlds. Coordinate agents. See every action. Connect your AI assistants to scene authoring, running games, multiplayer scenarios, tests, builds and profiling through Model Context Protocol. Built by AnkleBreaker Studio for workflows that span more than one editor and one assistant.
Get started · Watch the demos · Measured improvements · Multiple projects · Tool catalog · Changelog
Counts reflect the checked-in definitions; optional tools require their corresponding Unity packages. The advanced proxy also discovers routes advertised by newer plugins.
Watch it build a playable prototype
Neon brick breaker: scene construction, materials, gameplay scripts and visual iteration, with the assistant and Unity visible together.
[](https://cdn.jsde
6819db2b35f5OBSERVED · 2026-10-02Connect
Built from this server's own package name, version and transport as found in its source — not copied from anyone's documentation, so it cannot drift against a page we do not control.
claude mcp add anklebreaker-unity-mcp -- npx -y [email protected]
{
"mcpServers": {
"anklebreaker-unity-mcp": {
"command": "npx",
"args": [
"-y",
"[email protected]"
]
}
}
}Exposed tools (200)
175 read · 140 write · 34 destructive. Blast radius: 34 tools can delete or overwrite — an agent that can be talked into calling a tool can be talked into calling this one.
| Tool | Risk | Description |
|---|---|---|
unity_advanced_tool | write | Execute an advanced Unity tool by name (${advanced.length} cached + plugin lazy-loaded; |
unity_agent_log | read | Get the action log for a specific agent, showing the last 100 actions with timestamps. |
unity_agents_list | read | List all active agent sessions connected to the AB Unity MCP bridge. Shows each agent |
unity_amplify_add_node | write | Add a node to the currently open Amplify Shader Editor graph. The ASE window must be open with a shader loaded. Use unity_amplify_get_node_types to discover available node types first. |
unity_amplify_close | read | Close the Amplify Shader Editor window. By default saves the graph before closing to prevent save dialogs. |
unity_amplify_connect | read | Connect two nodes in the Amplify Shader Editor graph. Connects an output port of one node to an input port of another node. |
unity_amplify_create_from_template | write | Create a new Amplify shader from a predefined template (surface, unlit, urp_lit, transparent, post_process). The shader file is created and can then be opened in ASE. |
unity_amplify_create_shader | write | Create a new Amplify Shader Editor shader file with proper ASE serialization markers. The shader can then be opened in ASE for visual editing. |
unity_amplify_disconnect | read | Disconnect a specific port on a node in the Amplify Shader Editor graph. |
unity_amplify_disconnect_all | destructive | Remove all connections from a specific node in the Amplify Shader Editor graph (both input and output connections). |
unity_amplify_duplicate_node | read | Duplicate a node in the Amplify Shader Editor graph. Creates a new node of the same type at a slight offset from the original. |
unity_amplify_focus_node | read | Focus the Amplify Shader Editor view on a specific node, centering and optionally zooming to it. |
unity_amplify_get_connections | read | Get all connections between nodes in the currently open Amplify Shader Editor graph. Shows which output ports connect to which input ports. |
unity_amplify_get_node_types | read | List all available Amplify Shader Editor node types by reflecting over the ASE assembly. Returns type names, categories, and descriptions. Requires Amplify to be installed. |
unity_amplify_get_nodes | read | Get all nodes in the currently open Amplify Shader Editor graph. Returns node IDs, types, positions, and port counts. The ASE window must be open with a shader loaded. |
unity_amplify_info | read | Get detailed info about an Amplify shader: properties, render queue, pass count, and Amplify metadata (node count, version, features like custom expressions, functions, texture samples). |
unity_amplify_list | read | List all shaders created with Amplify Shader Editor. Detects Amplify shaders by scanning for ASE serialization markers in .shader files. Only available when Amplify is installed. |
unity_amplify_list_functions | read | List all Amplify Shader Functions in the project. Functions are reusable node groups (similar to Shader Graph Sub Graphs). Only available when Amplify is installed. |
unity_amplify_master_node_info | read | Get detailed information about the master/output node of the currently open Amplify shader graph, including all its input ports and properties. |
unity_amplify_move_node | write | Move a node to a new position in the Amplify Shader Editor graph. |
unity_amplify_node_info | read | Get detailed information about a specific node in the Amplify Shader Editor graph, including all input/output ports with names, data types, and connection status. |
unity_amplify_open | read | Open a shader in the Amplify Shader Editor window for visual editing. Only available when Amplify is installed. |
unity_amplify_remove_node | destructive | Remove a node from the currently open Amplify Shader Editor graph by its unique ID. Cannot remove the master/output node. |
unity_amplify_save | write | Save the currently open Amplify Shader Editor graph to disk. If the shader has never been saved, auto-determines a save path from the shader name or uses the provided path. |
unity_amplify_set_node_property | write | Set a property or field value on a node in the Amplify Shader Editor graph via reflection. If the property name is wrong, returns a list of available properties. |
unity_amplify_status | read | Check if Amplify Shader Editor is installed in the project. Returns available commands, shader count, and function count. Only works when Amplify Shader Editor is imported. |
unity_animation_add_event | write | Add an animation event that calls a function at a specific time during playback. Can pass string, int, or float parameters. |
unity_animation_add_keyframe | write | Add a keyframe to an animation curve with full tangent and weight control. Creates the curve if it doesn |
unity_animation_add_layer | write | Add a new layer to an Animator Controller. |
unity_animation_add_parameter | write | Add a parameter to an Animator Controller (Float, Int, Bool, or Trigger). |
unity_animation_add_state | write | Add a state to an Animator Controller layer. Can optionally assign an animation clip and set as default state. |
unity_animation_add_transition | write | Add a transition between states in an Animator Controller. Supports conditions, exit time, and AnyState transitions. |
unity_animation_assign_controller | read | Assign an Animator Controller to a GameObject (adds Animator component if needed). |
unity_animation_clip_info | read | Get detailed information about an Animation Clip: curves, length, events, loop settings. |
unity_animation_controller_info | read | Get detailed information about an Animator Controller: layers, states, transitions, parameters. |
unity_animation_create_blend_tree | write | Create a blend tree in an Animator Controller for smooth blending between animations. Supports 1D, 2D (FreeformDirectional, FreeformCartesian, SimpleDirectional), and Direct blend types. |
unity_animation_create_clip | write | Create a new empty Animation Clip asset. |
unity_animation_create_controller | write | Create a new Animator Controller asset at the specified path. |
unity_animation_get_blend_tree | read | Get the structure and configuration of a blend tree including all child motions, thresholds, positions, and time scales. |
unity_animation_get_curve_keyframes | read | Get all keyframes from an animation curve binding with full tangent data (inTangent, outTangent, inWeight, outWeight, weightedMode). Essential for precise animation editing. |
unity_animation_get_events | read | List all animation events on a clip with their function names, times, and parameters. |
unity_animation_remove_curve | destructive | Remove an entire animation curve binding from a clip. Useful for cleaning up or restructuring animations. |
unity_animation_remove_event | destructive | Remove an animation event by its index. Use get_animation_events first to find the index. |
unity_animation_remove_keyframe | destructive | Remove a keyframe from an animation curve by its index. Use get_curve_keyframes first to find the index. |
unity_animation_remove_layer | destructive | Remove a layer from an Animator Controller by index. Cannot remove the base layer (index 0). |
unity_animation_remove_parameter | destructive | Remove a parameter from an Animator Controller by name. |
unity_animation_remove_state | destructive | Remove a state from an Animator Controller layer. |
unity_animation_remove_transition | destructive | Remove a transition from an Animator Controller state. Can target by source/destination names or by index. |
unity_animation_set_clip_curve | write | Set an animation curve on a clip. Define keyframes to animate any property (position, rotation, scale, custom). |
unity_animation_set_clip_settings | write | Set animation clip settings: looping, root motion, mirroring, speed, frame rate, and more. |
unity_animation_set_object_reference_curve | write | Set an OBJECT-REFERENCE (PPtr) animation curve — the curve type Unity uses for 2D sprite-frame |
unity_asmdef_add_references | write | Add assembly references to an existing .asmdef file. Supports assembly names (e.g. |
unity_asmdef_create | write | Create a new Assembly Definition (.asmdef) file for code containerisation and compilation optimisation. Assembly definitions split your project code into separate assemblies, reducing recompilation time and enforcing clean dependency boundaries. |
unity_asmdef_create_ref | write | Create an Assembly Definition Reference (.asmref) file. This lets you include scripts from a different folder into an existing assembly, useful for extending packages or splitting code across directories while keeping them in the same compilation unit. |
unity_asmdef_info | read | Get detailed info about an Assembly Definition file: name, references, platforms, settings. |
unity_asmdef_list | read | List all Assembly Definition files in the project. Returns name, path, reference count, and platform info for each. |
unity_asmdef_remove_references | destructive | Remove assembly references from an existing .asmdef file. |
unity_asmdef_set_platforms | write | Set the include/exclude platform lists for an assembly definition. Use includePlatforms to restrict to specific platforms (e.g. [ |
unity_asmdef_update_settings | write | Update settings on an assembly definition: rootNamespace, allowUnsafeCode, autoReferenced, noEngineReferences, defineConstraints, etc. Only supply the properties you want to change. |
unity_asset_create_prefab | write | Create a prefab from an existing GameObject in the scene. |
unity_asset_delete | destructive | Delete an asset — to the OS trash by default (NOT undoable via unity_undo_last). |
unity_asset_import | write | Import an external file into the Unity project as an asset. |
unity_asset_instantiate_prefab | read | Instantiate a prefab into the current scene. |
unity_asset_list | read | List assets in the project. Can filter by path, type, and search term. |
unity_audio_create_source | write | Create or configure an AudioSource on a GameObject. Can attach to existing object or create new one. |
unity_audio_info | read | Get info about all AudioSources and AudioListeners in the scene. |
unity_audio_set_global | write | Set global audio settings (master volume, pause). |
unity_build | read | Build the project for a target platform. |
unity_component_add | write | Add a component to a GameObject. Supports built-in types (Rigidbody, BoxCollider, AudioSource, Light, Camera, etc.) and custom scripts. |
unity_component_batch_wire | read | Wire multiple object references in one call (e.g. a manager to all its panels). Each entry: target GameObject, property, reference to assign. |
unity_component_get_properties | read | Get all serialized properties of a component on a GameObject. |
unity_component_get_referenceable | read | 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 |
unity_component_remove | destructive | Remove a component from a GameObject. |
unity_component_set_property | write | Set a serialized component property: numbers, strings, bools, vectors, colors, enums or object references. |
unity_component_set_reference | write | 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). |
unity_console_clear | destructive | Clear the Unity console log. |
unity_console_log | read | Get recent Unity console log messages (errors, warnings, info). |
unity_constraint_add | write | Add an animation constraint (position, rotation, scale, aim, parent, lookat) to a GameObject with optional source. |
unity_constraint_info | read | Get all constraints on a GameObject with their type, active state, weight, and source count. |
unity_debugger_enable | write | Enable or disable the Frame Debugger. When enabled, Unity pauses rendering after a specific draw call so you can inspect the GPU state. Uses reflection to access internal Unity APIs (Unity 6+). |
unity_debugger_event_details | read | Get detailed information about a specific Frame Debugger event: shader name, pass, keywords, vertex/index/instance counts, render target, batch break cause, and mesh info. The Frame Debugger must be enabled first. |
unity_debugger_events | read | List all rendering events (draw calls) captured by the Frame Debugger. The Frame Debugger must be enabled first. Returns event index, type, and name for each draw call. |
unity_editor_ping | read | Check if the Unity Editor bridge is running and responsive. Returns editor version, project name, and connection status. |
unity_editor_state | read | Get the current Unity Editor state: play mode, compilation status, active scene, project path. |
unity_editorprefs_delete | destructive | Delete an EditorPrefs key. |
unity_editorprefs_get | read | Get an EditorPrefs value by key. Specify type: string (default), int, float, bool. |
unity_editorprefs_set | write | Set an EditorPrefs value. Specify type: string (default), int, float, bool. |
unity_execute_code | write | Run C# in the Unity Editor with Unity API access. Return a small JSON result. If an error has executionCompleted=true, the code already ran; inspect its effects before retrying. |
unity_execute_menu_item | write | Execute a Unity Editor menu command by its path (e.g. |
unity_experimental_new_thing | read | not core-listed |
unity_gameobject_create | write | Create a new GameObject in the scene. Can specify primitive type (Cube, Sphere, Capsule, Cylinder, Plane, Quad), parent, and initial transform. |
unity_gameobject_delete | destructive | Delete a GameObject by path or name. Refuses if its runtime mesh is shared by other |
unity_gameobject_duplicate | read | Duplicate a GameObject with all its children and components. |
unity_gameobject_info | read | Get detailed info about a specific GameObject: transform, components, children, active state, tags, layer. |
unity_gameobject_reparent | write | Move a GameObject under a new parent in the hierarchy. |
unity_gameobject_set_active | write | Set a GameObject active or inactive. |
unity_gameobject_set_transform | write | Set the transform (position, rotation, scale) of a GameObject. |
unity_get_compilation_errors | read | Get C# compilation errors/warnings via CompilationPipeline — independent of the console buffer |
unity_get_project_context | read | Get the project docs/guidelines the team prepared for AI agents (from Assets/MCP/Context/). |
unity_graphics_asset_preview | read | Inline PNG from Unity |
unity_graphics_game_capture | read | Render one camera to inline PNG, without Game View composition or overlay UI. Whole-pixel sizes within device limits, at most 33554432 pixels. |
unity_graphics_lighting_summary | read | Get a summary of all lights in the scene, or details about a specific light. Returns type, color, intensity, range, spot angle, shadow settings, and render mode. |
unity_graphics_material_info | read | Get detailed material information: shader name, render queue, all properties (colors, floats, vectors, textures), keywords, and a visual preview thumbnail. Works on material assets or scene GameObjects. |
unity_graphics_mesh_info | read | Get mesh metadata: vertex count, triangle count (including triangulated quads), submeshes, populated UV channels 0-7, blend shapes, bone count and bounds. Works on mesh assets or scene GameObjects with MeshFilter/SkinnedMeshRenderer. |
unity_graphics_prefab_render | read | Return Unity |
unity_graphics_renderer_info | read | Get detailed Renderer component information: renderer type, materials list, mesh reference, bounds, shadow settings, sorting layer, lightmap index. Use for rendering analysis. |
unity_graphics_scene_capture | read | Render the Scene View camera to inline PNG. Whole-pixel sizes within device limits, at most 33554432 pixels. |
unity_graphics_texture_info | read | Get detailed texture information: dimensions, format, compression, mipmaps, memory estimate, import settings, and a visual preview thumbnail. Use for texture analysis and optimization. |
unity_hub_available_releases | read | List Unity Editor versions available for download from Unity Hub. |
unity_hub_get_install_path | write | Get the current default installation path for Unity Editors. |
unity_hub_install_editor | write | Install a specific Unity Editor version. Optionally include platform modules (android, ios, webgl, linux, macos, windows-il2cpp). |
unity_hub_install_modules | write | Install additional platform modules to an already-installed Unity Editor version. |
unity_hub_list_editors | read | List all Unity Editor versions currently installed via Unity Hub, including their installation paths. |
unity_hub_set_install_path | write | Set the default installation directory for Unity Editors. |
unity_input_add_action | write | Add an action to an action map in an Input Action Asset. |
unity_input_add_binding | write | Add a simple (non-composite) binding to an action. Use for single-key bindings like |
unity_input_add_composite_binding | write | Add a composite binding (e.g. WASD, arrows) to an action. Composites combine multiple keys into a single value (1DAxis for up/down, 2DVector for WASD). |
unity_input_add_map | write | Add a new action map to an Input Action Asset. |
unity_input_create | write | Create a new Input Action Asset (.inputactions file) for Unity |
unity_input_info | read | Get detailed info about an Input Action Asset: maps, actions, bindings, and control schemes. |
unity_input_remove_action | destructive | Remove an action (and its bindings) from an action map. |
unity_input_remove_map | destructive | Remove an action map from an Input Action Asset. |
unity_lighting_create | write | Create a new light in the scene (Point, Directional, Spot, or Area). |
unity_lighting_create_light_probe_group | write | Create a light probe group in the scene. |
unity_lighting_create_reflection_probe | write | Create a reflection probe in the scene. |
unity_lighting_info | read | Get info about all lights in the scene plus environment/fog settings. |
unity_lighting_set_environment | write | Set environment lighting: ambient mode/color, fog, skybox material. |
unity_list_advanced_tools | write | Discover advanced Unity tools (execute them via unity_advanced_tool) without loading full schemas: |
unity_list_instances | read | List running Unity Editor instances (name, port, version, clone flag, pluginVersion). |
unity_lod_create | write | Create or configure a LODGroup on a GameObject with specified number of LOD levels. |
unity_lod_info | read | Get LODGroup info: LOD levels, screen transition heights, renderer counts. |
unity_material_create | write | Create a new material asset with a specified shader and properties. |
unity_memory_breakdown | read | Get detailed memory breakdown by asset type: textures, meshes, materials, shaders, audio clips, animation clips, fonts, render textures, and scriptable objects. Shows count, total size, and optionally top assets per category. Works without the Memory Profiler package (uses built-in Profiler APIs). |
unity_memory_snapshot | read | Take a detailed memory snapshot using the Memory Profiler package (com.unity.memoryprofiler). Requires the package to be installed. The snapshot can be inspected in the Memory Profiler window. Returns an error with alternatives if the package is not installed. |
unity_memory_status | read | Check Memory Profiler status: whether the com.unity.memoryprofiler package is installed, available commands, and a quick memory summary. Always call this first before other memory profiler commands. |
unity_memory_top_assets | read | Get the top N memory-consuming assets across all types. Shows asset name, type, size, and asset path. Optionally filter by type (texture, mesh, audio, material, shader, animation, font, rendertexture). Works without the Memory Profiler package. |
unity_mppm_activate_player | read | Activate a Virtual Player (clone Unity Editor process). index must be 2, 3, or 4 |
unity_mppm_activate_scenario | read | Load/activate a specific scenario by its asset path. |
unity_mppm_create_scenario | write | Create an MPPM ScenarioConfig asset programmatically. Unity 6+ (MPPM 2.0). |
unity_mppm_deactivate_player | read | Deactivate a Virtual Player previously activated via unity_mppm_activate_player. |
unity_mppm_info | read | Get multiplayer play mode information including CurrentPlayer state, tags, and MPPM package version. |
unity_mppm_list_players | read | List the 4 MPPM virtual-player slots and their current state |
unity_mppm_list_scenarios | read | List all MPPM (Multiplayer PlayMode) scenarios in the project with details about instances and configurations. |
unity_mppm_start | write | Start the currently active scenario. By default also enters Play mode on the main editor |
unity_mppm_status | read | Get the current scenario status including running state, active scenario name, and progress. |
unity_mppm_stop | write | Stop the running scenario. By default also exits Play mode on the main editor so |
unity_navmesh_add_agent | write | Add a NavMeshAgent component to a GameObject with optional settings (speed, angular speed, acceleration, stopping distance, radius, height). |
unity_navmesh_add_obstacle | write | Add a NavMeshObstacle component to a GameObject. |
unity_navmesh_bake | read | Bake the NavMesh for AI navigation. Optionally configure agent radius, height, slope, and climb. |
unity_navmesh_clear | destructive | Clear all baked NavMeshes from the scene. |
unity_navmesh_info | read | Get NavMesh information: vertex/triangle count, agents, obstacles, agent types. |
unity_navmesh_set_destination | write | Set the destination for a NavMeshAgent (requires Play mode). |
unity_packages_add | write | Add/install a Unity package by identifier (e.g. |
unity_packages_info | read | Get detailed info about an installed package including versions and dependencies. |
unity_packages_list | read | List all installed Unity packages with their name, version, source, and status. |
unity_packages_remove | destructive | Remove/uninstall a Unity package by name. |
unity_packages_search | read | Search for Unity packages in the registry. |
unity_particle_create | write | Create a new Particle System with optional initial settings. |
unity_particle_info | read | Get detailed Particle System info: main module, emission, shape, and all module enable states. |
unity_particle_playback | destructive | Control particle system playback: play, stop, pause, restart, or clear. |
unity_particle_set_emission | write | Configure particle emission: rate over time, rate over distance. |
unity_particle_set_main | write | Configure the main module of a Particle System: duration, lifetime, speed, size, gravity, simulation space. |
unity_particle_set_shape | write | Configure the emission shape: Sphere, Hemisphere, Cone, Box, Circle, Edge, etc. |
unity_physics_collision_matrix | read | Get the physics collision matrix showing which layers collide with each other. |
unity_physics_overlap_box | read | Find all colliders within a box volume. |
unity_physics_overlap_sphere | read | Find all colliders within a sphere. Useful for area-of-effect queries. |
unity_physics_raycast | read | Cast a ray in the physics world and return hit information. Supports single or all-hits mode. |
unity_physics_set_collision_layer | write | Set whether two physics layers should collide or ignore each other. |
unity_physics_set_gravity | write | Get or set the global physics gravity vector. |
unity_play_mode | write | Control Unity Editor play mode: enter play, pause, or stop. |
unity_playerprefs_delete | destructive | Delete a PlayerPrefs key. |
unity_playerprefs_delete_all | destructive | Delete ALL PlayerPrefs. Use with caution. |
unity_playerprefs_get | read | Get a PlayerPrefs value by key. Specify type: string (default), int, float. |
unity_playerprefs_set | write | Set a PlayerPrefs value. Specify type: string (default), int, float. |
unity_prefab_add_component | write | Add a component to a GameObject inside a prefab asset — no scene instance needed. Supports built-in types (Rigidbody, BoxCollider, etc.) and custom scripts. |
unity_prefab_add_gameobject | write | Create a new child GameObject inside a prefab asset — no scene instance needed. Optionally create as a primitive (Cube, Sphere, etc.) with position/rotation/scale. |
unity_prefab_apply_overrides | write | Apply all overrides from a prefab instance in the scene back to the source prefab asset. |
unity_prefab_apply_variant_override | write | Apply overrides from a prefab variant back to its base prefab. Can apply all overrides or filter by componentType and/or gameObject path. This pushes the variant |
unity_prefab_compare_variant | read | Compare a prefab variant to its base prefab. Returns all overrides: modified properties, added/removed components, and added/removed GameObjects. The variant must be a Prefab Variant asset. |
unity_prefab_create_variant | write | Create a prefab variant from an existing base prefab. Variants inherit from the base and can override specific properties. |
unity_prefab_get_hierarchy | read | Get the full hierarchy tree of a prefab asset directly from disk — no scene instance needed. Shows all GameObjects, components, and nested children inside the prefab. |
unity_prefab_get_properties | read | Read all serialized properties of a component on a GameObject inside a prefab asset — no scene instance needed. Use prefabPath to target nested children (e.g. |
unity_prefab_info | read | Get detailed prefab information: overrides, variant status, added/removed components. Works on both prefab assets and scene instances. |
unity_prefab_remove_component | destructive | Remove a component from a GameObject inside a prefab asset — no scene instance needed. |
unity_prefab_remove_gameobject | destructive | Delete a child GameObject from inside a prefab asset — no scene instance needed. Cannot remove the prefab root. |
unity_prefab_revert_overrides | read | Revert all overrides on a prefab instance, restoring it to match the source prefab. |
unity_prefab_revert_variant_override | read | Revert overrides on a prefab variant so it matches its base prefab again. Can revert all overrides or filter by componentType and/or gameObject path. |
unity_prefab_set_property | write | Set a serialized property value on a component inside a prefab asset — no scene instance needed. Supports floats, ints, strings, bools, vectors, colors, enums. |
unity_prefab_set_reference | write | Wire an ObjectReference property on a component inside a prefab asset — no scene instance needed. Can reference project assets (materials, textures, prefabs, ScriptableObjects) or other GameObjects within the same prefab. |
unity_prefab_transfer_variant_overrides | write | Transfer (copy) overrides from one prefab variant to another variant of the same base. Reads the property modifications from the source variant and applies them to the target variant. |
unity_prefab_unpack | read | Unpack a prefab instance, converting it to regular GameObjects. |
unity_prefab_variant_info | read | Get variant information for a prefab asset: whether it |
unity_probuilder_bevel_edges | read | Bevel (chamfer) the edges of the selected faces by |
unity_probuilder_boolean | read | Boolean CSG operation between two solid meshes, producing a new editable ProBuilder object. |
unity_probuilder_center_pivot | read | Recenter the object |
unity_probuilder_combine | write | Merge two or more ProBuilder objects into a single ProBuilder mesh (the first object). |
unity_probuilder_create_shape | write | Create a parametric ProBuilder shape as a new, fully-editable mesh GameObject. |
unity_probuilder_delete_faces | destructive | Delete the selected faces from the mesh (creates holes / open geometry). |
unity_probuilder_export_mesh | read | Export the object |
unity_probuilder_extrude_faces | read | Extrude selected faces outward along their normals (or as individual faces). |
Trust audit
CAUTIONgrade B · trust 87/100 Install with care. The audit found things worth knowing before you trust its output.
| Layer | What it checks | Result |
|---|---|---|
| L0 | Provenance & inventory | PASS |
| L1 | Static analysis of the code | WARN |
| L2 | Instruction surface (what it tells the agent) | PASS |
| L3 | Class-specific surface | WARN |
| L4 | Behavioural (sandbox) | SKIPPED |
What the source does
- Filesystem
- declared (1 observation(s))
- Network
- declared (3 observation(s))
- Shell
- none-observed
- Dependencies
- pinned
- Secrets in source
- none-found
Findings (20)
"NEVER call the Unity HTTP bridge directly (e.g. http://127.0.0.1:7890/api/...).",
// AnkleBreaker Unity MCP — Tool definitions for Unity Editor operations (via HTTP bridge)
unity_amplify_disconnect_all, unity_amplify_remove_node, unity_animation_remove_curve, unity_animation_remove_event, unity_animation_remove_keyframe, unity_animation_remove_layer, unity_animation_remo
.mcpbignore
const root = new URL("../../", import.meta.url);const { debugLog } = await import("../../src/state-persistence.js");await import("../../src/index.js");await import("../../src/index.js");const { AgentStateStore, agentState } = await import("../../src/agent-state.js");const url = new URL(req.url, `http://127.0.0.1:${this.port}`);try { await check(`http://127.0.0.1:${server.address().port}`); }Undo checkpoint: plugin `b41af31` now verifies native group membership, editor-session identity and native entry signatures before targeted rollback. Four baseline failures and an additional group-col
Test job persistence checkpoint: plugin `4182701`, server validation `cf701a6`. The plugin now retains available details, failure diagnostics, filters and running-test timing across script reload, wit
Test Runner checkpoint: plugin `ad7e8ad`, server validation `8a852bb`. The [testing guide](testing.md) and [report](validation/unity66-testing.json) record 19 controlled checks and four successful rea
Plugin session-retention checkpoint: plugin `3f3ac1c`, server `3eaa697`. The [guide](session-retention.md) and [report](validation/unity66-session-retention.json) reproduce 5,000 recently completed id
7. Review long-lived caches. MCP request cancellation now has shared-work, HTTP-body, retry, discovery and polling coverage, plus live proof that accepted Unity work can finish after observation stops
docs/unity-mcp-showcase-brickbreaker.gif
docs/unity-mcp-showcase-castle.gif
docs/unity-mcp-showcase-village.gif
icon.png
Gates applied: no_behavioural_pass.
6819db2b35f5full audit observations/trust-audit/mcp-server/anklebreaker-studio__anklebreaker-unity.json · Report an issue / request a re-scanAudit history
Every audit this server has had. A grade with a past is a grade somebody is still checking.
| Date | Source | Verdict | Grade | Score | Change |
|---|---|---|---|---|---|
| 2026-10-02 | 6819db2b35f5 | CAUTION | B | 87 | first audit |
Questions
What is the AnkleBreaker Unity MCP server?
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
What tools does AnkleBreaker Unity expose?
200 in total: 175 read-only, 140 that write, and 34 that can delete or overwrite (unity_amplify_disconnect_all, unity_amplify_remove_node, unity_animation_remove_curve, unity_animation_remove_event, unity_animation_remove_keyframe). Every one is listed on this page with its risk.
Is AnkleBreaker Unity safe to connect to an agent?
With care. The audit graded it B (87/100) and found 20 things worth knowing before you trust this server, listed below with the exact line each was found on. Separately from the audit: 34 of its tools can destroy data, so scope the token you give it to what you actually need.
What credentials does AnkleBreaker Unity need?
No credential environment variables were found in its source, so it appears to need none.
How does AnkleBreaker Unity run?
It speaks stdio, so it runs as a local process your client starts. It is published on npm as anklebreaker-unity-mcp at 2.35.6.
How current is this page?
The grade is for one exact copy of the source (6819db2b35f5), read on 2026-10-02. The repository is watched and re-audited when it changes.