Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
UNITY_HUB_PATHNoUnity Hub executable pathC:\Program Files\Unity Hub\Unity Hub.exe
UNITY_MCP_DEBUGNoEnable debug logging for troubleshootingfalse
UNITY_BRIDGE_HOSTNoEditor bridge host127.0.0.1
UNITY_BRIDGE_PORTNoEditor bridge port (auto-discovered when using multi-instance)7890
UNITY_BRIDGE_TIMEOUTNoRequest timeout in ms30000
UNITY_PORT_RANGE_ENDNoEnd of port scan range7899
UNITY_PORT_RANGE_STARTNoStart of port scan range for multi-instance discovery7890
UNITY_RESPONSE_HARD_LIMITNoResponse size hard limit in bytes (truncation)4194304
UNITY_RESPONSE_SOFT_LIMITNoResponse size soft limit in bytes (warning)2097152
UNITY_REGISTRY_STALENESS_TIMEOUTNoRegistry entry staleness timeout in ms (crash detection)300000

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{}
resources
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
unity_list_instancesA

List running Unity Editor instances (name, port, version, clone flag, pluginVersion). With multiple instances, select one with unity_select_instance next.

unity_select_instanceA

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.

unity_hub_list_editorsA

List all Unity Editor versions currently installed via Unity Hub, including their installation paths.

unity_hub_available_releasesA

List Unity Editor versions available for download from Unity Hub.

unity_hub_install_editorB

Install a specific Unity Editor version. Optionally include platform modules (android, ios, webgl, linux, macos, windows-il2cpp).

unity_hub_install_modulesA

Install additional platform modules to an already-installed Unity Editor version.

unity_hub_get_install_pathA

Get the current default installation path for Unity Editors.

unity_hub_set_install_pathB

Set the default installation directory for Unity Editors.

unity_editor_pingA

Check if the Unity Editor bridge is running and responsive. Returns editor version, project name, and connection status.

unity_editor_stateB

Get the current Unity Editor state: play mode, compilation status, active scene, project path.

unity_scene_infoB

Get information about the currently open scene(s), including name, path, dirty state, and root game objects.

unity_scene_openA

Open a scene by its asset path (relative to Assets/). Refuses if any loaded scene has unsaved changes — pass saveFirst or discardUnsavedChanges.

unity_scene_saveA

Save the current scene. A never-saved scene requires path (saving without one would open Unity's interactive Save dialog).

unity_scene_newA

Create a new empty scene (REPLACES the current one). Refuses if any loaded scene has unsaved changes — pass saveFirst or discardUnsavedChanges.

unity_scene_hierarchyA

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.

unity_gameobject_createB

Create a new GameObject in the scene. Can specify primitive type (Cube, Sphere, Capsule, Cylinder, Plane, Quad), parent, and initial transform.

unity_gameobject_deleteA

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.

unity_gameobject_infoA

Get detailed info about a specific GameObject: transform, components, children, active state, tags, layer.

unity_gameobject_set_transformC

Set the transform (position, rotation, scale) of a GameObject.

unity_component_addA

Add a component to a GameObject. Supports built-in types (Rigidbody, BoxCollider, AudioSource, Light, Camera, etc.) and custom scripts.

unity_component_removeB

Remove a component from a GameObject.

unity_component_get_propertiesB

Get all serialized properties of a component on a GameObject.

unity_component_set_propertyA

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}.

unity_component_set_referenceA

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_component_batch_wireA

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_referenceableA

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.

unity_asset_listC

List assets in the project. Can filter by path, type, and search term.

unity_asset_importB

Import an external file into the Unity project as an asset.

unity_asset_deleteA

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.

unity_asset_create_prefabB

Create a prefab from an existing GameObject in the scene.

unity_asset_instantiate_prefabC

Instantiate a prefab into the current scene.

unity_script_createB

Create a new C# script file in the project with the given content.

unity_script_readB

Read the contents of a C# script file from the project.

unity_script_updateB

Update the contents of an existing C# script file.

unity_execute_codeA

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.

unity_material_createC

Create a new material asset with a specified shader and properties.

unity_renderer_set_materialC

Assign a material to a GameObject's renderer.

unity_buildB

Start a build of the Unity project for a target platform.

unity_console_logB

Get recent Unity console log messages (errors, warnings, info).

unity_console_clearA

Clear the Unity console log.

unity_get_compilation_errorsA

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.

unity_play_modeB

Control Unity Editor play mode: enter play, pause, or stop.

unity_execute_menu_itemA

Execute a Unity Editor menu command by its path (e.g. 'File/Save', 'GameObject/3D Object/Cube', 'Window/General/Console').

unity_project_infoA

Get project information: name, path, Unity version, render pipeline, packages, build settings.

unity_prefab_infoA

Get detailed prefab information: overrides, variant status, added/removed components. Works on both prefab assets and scene instances.

unity_set_object_referenceA

[LEGACY] Set an object reference on a component. Prefer unity_component_set_reference (richer resolution).

unity_gameobject_duplicateB

Duplicate a GameObject with all its children and components.

unity_gameobject_set_activeB

Set a GameObject active or inactive.

unity_gameobject_reparentB

Move a GameObject under a new parent in the hierarchy.

unity_selection_getA

Get the currently selected GameObjects in the Unity Editor.

unity_selection_setC

Set the editor selection to specific GameObjects.

unity_selection_focus_scene_viewA

Control the Scene View camera: frame a GameObject, set pivot/rotation/zoom, toggle orthographic.

unity_selection_find_by_typeB

Find all GameObjects in the scene that have a specific component type (e.g. 'Rigidbody', 'Camera', 'Light', 'AudioSource', or custom scripts).

unity_search_by_componentB

Find all GameObjects in the scene that have a specific component type. Returns their paths and instance IDs.

unity_search_by_tagB

Find all GameObjects with a specific tag.

unity_search_by_layerB

Find all GameObjects on a specific layer.

unity_search_by_nameB

Find all GameObjects whose name contains a pattern. Supports substring matching or regex.

unity_search_assetsA

Search for assets in the project by name, type, and folder. Uses Unity's AssetDatabase search.

unity_search_missing_referencesB

Find all missing/broken object references and missing scripts in the scene. Essential for cleanup and debugging.

unity_scene_statsA

Get comprehensive scene statistics: total objects, vertices, triangles, lights, cameras, colliders, and top component types.

unity_undoA

Undo the single most recent step on Unity's global undo stack (Ctrl+Z). To revert a specific MCP action, prefer unity_undo_last.

unity_undo_lastA

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.)

unity_redoA

Redo the last undone operation in Unity Editor.

unity_undo_historyA

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.

unity_screenshot_gameA

Capture a screenshot of the Game View. The screenshot is saved on the next frame render.

unity_screenshot_sceneA

Capture a screenshot of the Scene View camera. Returns immediately with the saved file path.

unity_screenshot_editor_windowA

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).

unity_graphics_scene_captureB

Capture the current Scene View as an inline image. Returns base64 PNG that Claude can see directly. Use to visually inspect the scene layout.

unity_graphics_game_captureA

Capture the Game View camera as an inline image. Returns base64 PNG that Claude can see directly. Use to see what the player sees.

unity_packages_listA

List all installed Unity packages with their name, version, source, and status.

unity_packages_addA

Add/install a Unity package by identifier (e.g. 'com.unity.cinemachine' or 'com.unity.cinemachine@3.0.0').

unity_packages_removeC

Remove/uninstall a Unity package by name.

unity_packages_searchB

Search for Unity packages in the registry.

unity_packages_infoA

Get detailed info about an installed package including versions and dependencies.

unity_queue_infoA

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.

unity_agents_listA

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.

unity_agent_logA

Get the action log for a specific agent, showing the last 100 actions with timestamps.

unity_list_advanced_toolsA

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, …).

unity_advanced_toolA

Execute an advanced Unity tool by name (269 cached + plugin lazy-loaded; discover names via unity_list_advanced_tools search=/category=, parameters via tool=).

unity_get_project_contextA

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.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/AnkleBreaker-Studio/unity-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server