Unnamed Skill
Execute C# code dynamically in Unity Editor via uloop CLI. Use for editor automation: (1) Prefab/material wiring and AddComponent operations, (2) Reference wiring with SerializedObject, (3) Scene/hierarchy edits and batch operations. NOT for file I/O or script authoring.
$ Installer
git clone https://github.com/hatayama/uLoopMCP /tmp/uLoopMCP && cp -r /tmp/uLoopMCP/.claude/skills/uloop-execute-dynamic-code ~/.claude/skills/uLoopMCP// tip: Run this command in your terminal to install the skill
SKILL.md
name: uloop-execute-dynamic-code description: Automate Unity Editor operations. Use when you need to: (1) Wire prefabs/materials and AddComponent operations, (2) Modify references with SerializedObject/PrefabUtility, (3) Batch edit scene/hierarchy or Inspector values. Executes C# code dynamically via uloop CLI.
uloop execute-dynamic-code
Execute C# code dynamically in Unity Editor.
Usage
uloop execute-dynamic-code --code '<c# code>'
Parameters
| Parameter | Type | Description |
|---|---|---|
--code | string | C# code to execute (direct statements, no class wrapper) |
--compile-only | boolean | Compile without execution |
--auto-qualify-unity-types-once | boolean | Auto-qualify Unity types |
Code Format
Write direct statements only (no classes/namespaces/methods). Return is optional.
// Using directives at top are hoisted
using UnityEngine;
var x = Mathf.PI;
return x;
String Literals (Shell-specific)
| Shell | Method |
|---|---|
| bash/zsh/MINGW64/Git Bash | 'Debug.Log("Hello!");' |
| PowerShell | 'Debug.Log(""Hello!"");' |
Allowed Operations
- Prefab/material wiring (PrefabUtility)
- AddComponent + reference wiring (SerializedObject)
- Scene/hierarchy edits
- Inspector modifications
- File I/O with System.IO (requires Full Access)
Security Levels
| Level | Name | Available APIs |
|---|---|---|
| 0 | Disabled | None (compilation and execution disabled) |
| 1 | Restricted | UnityEngine., UnityEditor., System.Collections.* (System.IO, System.Net.Http, reflection blocked) |
| 2 | Full Access | All APIs including System.IO.*, System.Reflection.Emit |
Configure in Unity: uLoopMCP > Dynamic Code Security Level
Quick Examples
bash / zsh / MINGW64 / Git Bash
uloop execute-dynamic-code --code 'return Selection.activeGameObject?.name;'
uloop execute-dynamic-code --code 'new GameObject("MyObject");'
uloop execute-dynamic-code --code 'UnityEngine.Debug.Log("Hello from CLI!");'
PowerShell
uloop execute-dynamic-code --code 'return Selection.activeGameObject?.name;'
uloop execute-dynamic-code --code 'new GameObject(""MyObject"");'
uloop execute-dynamic-code --code 'UnityEngine.Debug.Log(""Hello from CLI!"");'
Output
Returns JSON with execution result or compile errors.
Example Guides
See examples/ folder for detailed usage patterns.
Repository

hatayama
Author
hatayama/uLoopMCP/.claude/skills/uloop-execute-dynamic-code
105
Stars
8
Forks
Updated4d ago
Added6d ago