Skip to main content
Glama
SamDreamsMaker

Unity API Communicator MCP Server

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
UAC_HOSTNoUnity API Communicator hostlocalhost
UAC_PORTNoUnity API Communicator port7777
UAC_TIMEOUTNoRequest timeout in milliseconds10000

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
statusA

Get server status (read-only, no parameters required) [Category: core]

project_infoA

Get project info (read-only, no parameters required) [Category: core]

gameobject_createA

Create a new GameObject in the active Unity scene. Can create primitives (Cube, Sphere, Capsule, Cylinder, Plane, Quad) or empty GameObjects. Supports setting initial transform and parent.

gameobject_deleteA

Delete a GameObject from the scene by name. The object and all its children will be destroyed.

gameobject_transformA

Set the transform (position, rotation, scale) of a GameObject. Only provided fields are modified.

gameobject_listA

List all root GameObjects in the active scene with a 2-level hierarchy (root objects and their direct children). Returns name, active state, tag, layer, and child count.

gameobject_cloneB

Duplicate/clone a GameObject. The clone appears at the same position as the original.

gameobject_activeB

Enable or disable a GameObject (set active/inactive).

gameobject_tagC

Set the tag of a GameObject.

gameobject_layerA

Set the layer of a GameObject. Accepts layer number (0-31) or layer name.

gameobject_find_by_tagA

Find all GameObjects with a specific tag. Returns name, active state, and layer for each match.

gameobject_component_addA

Add a component to a GameObject. Use Unity component type names like Rigidbody, BoxCollider, AudioSource, Light, etc.

gameobject_component_removeC

Remove a component from a GameObject by type name.

gameobject_componentsB

List components (read-only, no parameters required) [Category: gameobject]

gameobject_hierarchyC

Set parent (POST /api/gameobject/hierarchy) [Category: gameobject]

gameobject_materialD

Set material (POST /api/gameobject/material) [Category: gameobject]

scene_activeA

Get information about the currently active scene: name, path, build index, dirty state, root object count.

scene_createA

Create a new empty scene. Mode 'Single' replaces current scene, 'Additive' adds alongside existing scenes.

scene_openA

Open/load an existing scene by its asset path (e.g. 'Assets/Scenes/Main.unity').

scene_saveB

Save the active scene. Optionally specify a new path to 'Save As'.

scene_closeB

Close a scene. Optionally save before closing.

scene_loadedA

List all currently loaded scenes with their name, path, dirty state, and which is active.

scene_setactiveC

Set a loaded scene as the active scene.

asset_createC

Create a new asset in the project. Supported types: Material, Script, Shader, ScriptableObject, AnimationClip, AnimatorController, and more.

asset_deleteC

Delete an asset from the project by its path.

asset_renameC

Rename an asset.

asset_moveC

Move an asset to a different folder.

assets_listB

List assets in the project. Filter by type and/or folder. Returns name, path, and type for each asset.

material_colorC

Set a color property on a material. Default property is '_Color' (main color). Color values are 0-1 floats.

material_floatB

Set a float property on a material (e.g. _Metallic, _Smoothness, _Glossiness).

material_textureC

Set a texture on a material. Default property is '_MainTex' (albedo/diffuse).

material_shaderC

Change the shader of a material (e.g. 'Standard', 'Universal Render Pipeline/Lit').

material_propertiesB

List all shader properties of a material with their current values, types, and names.

prefab_createC

Create a prefab asset from an existing scene GameObject. The prefab is saved as a .prefab file.

prefab_instantiateB

Instantiate a prefab in the current scene. Creates a prefab instance linked to the original asset.

prefab_applyC

Apply all overrides from a prefab instance back to the original prefab asset.

prefab_unpackC

Unpack a prefab instance, breaking the prefab link. Mode 'OutermostRoot' unpacks the top level, 'Completely' unpacks all nested prefabs.

build_settingsB

Get current build settings: active platform, enabled scenes, development mode, player settings (company, product, version).

build_player_settingsC

Update Player settings. All fields are optional — only provided fields are changed.

build_switch_platformB

Switch the active build platform. This may take time as Unity reimports assets.

build_startA

Start a build with the current build settings. Uses enabled scenes from Build Settings. This may take a long time.

build_platformsB

List all available build platforms and the currently active one.

console_logA

Log a message to the Unity Console. Supports Log, Warning, and Error types.

console_clearA

Clear the Unity Console and the internal log buffer.

console_logsB

Get captured console logs. Requires console listening to be started first.

console_startA

Start listening to Unity Console messages. Required before console_logs will capture anything.

console_stopA

Stop listening to Unity Console messages.

console_errorsB

Get error and warning counts from the console log buffer.

console_compilationB

Get compilation errors and warnings directly from Unity's internal log system (up to 100 entries).

selection_getA

Get the current editor selection: active GameObject, active object, and all selected objects with their types.

selection_setA

Select a GameObject by name in the editor. Optionally add to existing selection.

selection_assetB

Select and ping an asset in the Project window by its path.

selection_clearB

Clear the current editor selection.

selection_allC

Select all (POST /api/selection/all) [Category: selection]

selection_focusA

Focus the Scene View camera on the currently selected GameObject (equivalent to pressing F).

camera_createB

Create a new Camera GameObject in the scene with optional position, FOV, and orthographic mode.

camera_configureC

Configure an existing camera's properties: FOV, clip planes, orthographic mode, background color, depth.

camera_listB

List all cameras in the scene with their settings (FOV, orthographic, depth, clip planes).

camera_screenshotC

Take a screenshot using ScreenCapture.

camera_captureB

Capture what a specific camera sees using RenderTexture. Higher quality than screenshot. Falls back to main camera if not specified.

discoverA

Discover all endpoints (read-only, no parameters required) [Category: discovery]

categoriesA

List categories (read-only, no parameters required) [Category: discovery]

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/SamDreamsMaker/unity-api-communicator-mcp'

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