6.6 KiB
6.6 KiB
name, description
| name | description |
|---|---|
| gameobject-component-destroy | Destroy one or many components from target GameObject. Can't destroy missed components. Use 'gameobject-find' tool to find the target GameObject and 'gameobject-component-get' to get component details first. |
GameObject / Component / Destroy
Destroy one or many components from target GameObject. Can't destroy missed components. Use 'gameobject-find' tool to find the target GameObject and 'gameobject-component-get' to get component details first.
How to Call
HTTP API (Direct Tool Execution)
Execute this tool directly via the MCP Plugin HTTP API:
curl -X POST http://localhost:8080/api/tools/gameobject-component-destroy \
-H "Content-Type: application/json" \
-d '{
"gameObjectRef": "string_value",
"destroyComponentRefs": "string_value"
}'
With Authorization (if required)
curl -X POST http://localhost:8080/api/tools/gameobject-component-destroy \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_TOKEN" \
-d '{
"gameObjectRef": "string_value",
"destroyComponentRefs": "string_value"
}'
Input
| Name | Type | Required | Description |
|---|---|---|---|
gameObjectRef |
any |
Yes | Find GameObject in opened Prefab or in the active Scene. |
destroyComponentRefs |
any |
Yes | Component reference array. Used to find Component at GameObject. |
Input JSON Schema
{
"type": "object",
"properties": {
"gameObjectRef": {
"$ref": "#/$defs/com.IvanMurzak.Unity.MCP.Runtime.Data.GameObjectRef",
"description": "Find GameObject in opened Prefab or in the active Scene."
},
"destroyComponentRefs": {
"$ref": "#/$defs/com.IvanMurzak.Unity.MCP.Runtime.Data.ComponentRefList",
"description": "Component reference array. Used to find Component at GameObject."
}
},
"$defs": {
"System.Type": {
"type": "string"
},
"com.IvanMurzak.Unity.MCP.Runtime.Data.GameObjectRef": {
"type": "object",
"properties": {
"instanceID": {
"type": "integer",
"description": "instanceID of the UnityEngine.Object. If it is \u00270\u0027 and \u0027path\u0027, \u0027name\u0027, \u0027assetPath\u0027 and \u0027assetGuid\u0027 is not provided, empty or null, then it will be used as \u0027null\u0027. Priority: 1 (Recommended)"
},
"path": {
"type": "string",
"description": "Path of a GameObject in the hierarchy Sample \u0027character/hand/finger/particle\u0027. Priority: 2."
},
"name": {
"type": "string",
"description": "Name of a GameObject in hierarchy. Priority: 3."
},
"assetType": {
"$ref": "#/$defs/System.Type",
"description": "Type of the asset."
},
"assetPath": {
"type": "string",
"description": "Path to the asset within the project. Starts with \u0027Assets/\u0027"
},
"assetGuid": {
"type": "string",
"description": "Unique identifier for the asset."
}
},
"required": [
"instanceID"
],
"description": "Find GameObject in opened Prefab or in the active Scene."
},
"com.IvanMurzak.Unity.MCP.Runtime.Data.ComponentRef": {
"type": "object",
"properties": {
"index": {
"type": "integer",
"description": "Component \u0027index\u0027 attached to a gameObject. The first index is \u00270\u0027 and that is usually Transform or RectTransform. Priority: 2. Default value is -1."
},
"typeName": {
"type": "string",
"description": "Component type full name. Sample \u0027UnityEngine.Transform\u0027. If the gameObject has two components of the same type, the output component is unpredictable. Priority: 3. Default value is null."
},
"instanceID": {
"type": "integer",
"description": "instanceID of the UnityEngine.Object. If this is \u00270\u0027, then it will be used as \u0027null\u0027."
}
},
"required": [
"index",
"instanceID"
],
"description": "Component reference. Used to find a Component at GameObject."
},
"com.IvanMurzak.Unity.MCP.Runtime.Data.ComponentRefList": {
"type": "array",
"items": {
"$ref": "#/$defs/com.IvanMurzak.Unity.MCP.Runtime.Data.ComponentRef",
"description": "Component reference. Used to find a Component at GameObject."
},
"description": "Component reference array. Used to find Component at GameObject."
}
},
"required": [
"gameObjectRef",
"destroyComponentRefs"
]
}
Output
Output JSON Schema
{
"type": "object",
"properties": {
"result": {
"$ref": "#/$defs/com.IvanMurzak.Unity.MCP.Editor.API.Tool_GameObject\u002BDestroyComponentsResponse"
}
},
"$defs": {
"com.IvanMurzak.Unity.MCP.Runtime.Data.ComponentRefList": {
"type": "array",
"items": {
"$ref": "#/$defs/com.IvanMurzak.Unity.MCP.Runtime.Data.ComponentRef",
"description": "Component reference. Used to find a Component at GameObject."
},
"description": "Component reference array. Used to find Component at GameObject."
},
"com.IvanMurzak.Unity.MCP.Runtime.Data.ComponentRef": {
"type": "object",
"properties": {
"index": {
"type": "integer",
"description": "Component \u0027index\u0027 attached to a gameObject. The first index is \u00270\u0027 and that is usually Transform or RectTransform. Priority: 2. Default value is -1."
},
"typeName": {
"type": "string",
"description": "Component type full name. Sample \u0027UnityEngine.Transform\u0027. If the gameObject has two components of the same type, the output component is unpredictable. Priority: 3. Default value is null."
},
"instanceID": {
"type": "integer",
"description": "instanceID of the UnityEngine.Object. If this is \u00270\u0027, then it will be used as \u0027null\u0027."
}
},
"required": [
"index",
"instanceID"
],
"description": "Component reference. Used to find a Component at GameObject."
},
"com.IvanMurzak.Unity.MCP.Editor.API.Tool_GameObject\u002BDestroyComponentsResponse": {
"type": "object",
"properties": {
"DestroyedComponents": {
"$ref": "#/$defs/com.IvanMurzak.Unity.MCP.Runtime.Data.ComponentRefList",
"description": "List of destroyed components."
}
}
}
},
"required": [
"result"
]
}