unity-shader
MCP server for Unity shader analysis tools - connects Unity Editor to AI coding assistants via Model Context Protocol
Installation
npx unity-shader-mcpAsk AI about unity-shader
Powered by Claude Β· Grounded in docs
I know everything about unity-shader. Ask me about installation, configuration, usage, or troubleshooting.
0/500
Reviews
Documentation
Unity Agent
AI-powered Unity Editor tools β Error auto-fix, Shader analysis, Frame Debugging, Image Generation & SVN, all powered by Claude Code running headlessly inside the Editor.
Features
Frame Debugger AI (v0.11.0)
AI κΈ°λ° νλ μ λλ²κΉ λꡬ. Unity Frame Debugger λ°μ΄ν°λ₯Ό AIκ° λΆμνμ¬ λ λλ§ λ³λͺ©κ³Ό λ°°μΉ λΈλ μ΄ν¬ μμΈμ μ°Ύμμ€λλ€.
- Overview ν β νλ μ μμ½: μ΄λ²€νΈ μ, λ²ν μ€/μΈλ±μ€ μΉ΄μ΄νΈ, μ΄λ²€νΈ νμ νμ€ν κ·Έλ¨, ν«μ€ν Top-12, μ °μ΄λλ³ ν΅κ³, λ°°μΉ λΈλ μ΄ν¬ μμΈ λΆμ
- Events ν β μ 체 νλ μ μ΄λ²€νΈ λͺ©λ‘, ν΄λ¦νλ©΄ μ °μ΄λ/ν¨μ€/λ λ μ€ν μ΄νΈ μμΈ μ‘°ν
- Compare ν β λ μ΄λ²€νΈ κ° diff λΉκ΅ (μ °μ΄λ, ν€μλ λ³κ²½, λ λ μ€ν μ΄νΈ μ°¨μ΄, λ°°μΉ λΈλ μ΄ν¬ μ ν)
- AI Chat ν β νλ μ λ°μ΄ν° 컨ν μ€νΈ κΈ°λ° AI μ§μ ("μ΄ λλ‘μ°μ½μ΄ μ λλ¦°κ°μ?")
- Tiki-Taka μν¬νλ‘μ° β Summary β Search β Detail/Compare β RT Snapshot μμΌλ‘ AIκ° λ¨κ³μ λΆμ
https://github.com/user-attachments/assets/a97da9e0-1a05-4f01-9841-38cd48f243fe
Error Solver
Unity μλ¬λ₯Ό μλμΌλ‘ μμ§νκ³ , AIκ° λΆμ + μ½λ μμ κΉμ§ ν΄μ£Όλ λꡬ.
- μ€μκ° μλ¬ μμ§ β
Application.logMessageReceived+CompilationPipelineν - Solve λ²νΌ β μλ¬ μ ν ν ν΄λ¦νλ©΄ AIκ° μμ€ μ½κ³ β μμΈ λΆμ β μ½λ μμ
- μ€νΈλ¦¬λ° μλ΅ β AI μμ μ§ν μν© μ€μκ° νμ
- μμ€ λ°λ‘κ°κΈ° β μλ¬ λ°μ νμΌ/λΌμΈ ν΄λ¦μΌλ‘ IDE μ΄λ
https://github.com/user-attachments/assets/afc01579-e968-4505-81ac-1c56985d0e70
AI Chat & Image Generation (v0.6.0 ~ v0.9.0)
λ 립 AI μ±ν μλμ° + AI μ΄λ―Έμ§ μμ± κΈ°λ₯.
- AI Chat β Unity νλ‘μ νΈ μ»¨ν μ€νΈ κΈ°λ° μμ λν, μμ 첨λΆ, λν νμ€ν 리 μ§μ
- Image Gen λͺ¨λ β Claudeκ° ν둬ννΈλ₯Ό μ΅μ νν λ€ μ΄λ―Έμ§ μμ±
- Nano Banana (Gemini) β Google Gemini API κΈ°λ° μ΄λ―Έμ§ μμ±, λ νΌλ°μ€ μ΄λ―Έμ§ νΈμ§ μ§μ
- ComfyUI (Local) β λ‘컬 ComfyUI μλ² μ°λμΌλ‘ txt2img / img2img μ§μ
- μμ± μ΄λ―Έμ§ μ μ₯ β
Assets/GeneratedImages/μ νλ‘μ νΈ μμ μΌλ‘ μ μ₯
Shader Inspector
μ °μ΄λ λΆμ, λ¨Έν°λ¦¬μΌ κ²μ¬, AI μ±ν μ΄ ν΅ν©λ μλν° μλμ°.
- Shaders ν β μ °μ΄λ λͺ©λ‘, μ»΄νμΌ, 배리μΈνΈ λΆμ, AI λΆμ
- Materials ν β λ¨Έν°λ¦¬μΌ λͺ©λ‘, νλ‘νΌν°/ν€μλ μ‘°ν
- AI Chat ν β μ °μ΄λ 컨ν μ€νΈ κΈ°λ° μμ λν
- Include Graph β #include μμ‘΄μ± κ·Έλν μκ°ν
SVN Tool (v0.10.0)
Unity μλν° λ΄ SVN λ²μ κ΄λ¦¬ ν΅ν© λꡬ.
- History ν β νμΌλ³ SVN λ‘κ·Έ μ‘°ν (μ΅λ 50κ° λ¦¬λΉμ ), 리λΉμ λ³ diff, AI λ³κ²½μ¬ν μ€λͺ
- Operations ν β νλ‘μ νΈ μ 체
svn status, νμΌ λ€μ€ μ ν, 컀λ°/리λ²νΈ/μ λ°μ΄νΈ μΌκ΄ μ€ν
Shader Include Graph (Standalone) (v0.10.0)
λ³λ μμ‘΄μ± μμ΄ μ΄λ€ Unity νλ‘μ νΈμλ λλ‘μΈ κ°λ₯ν μ °μ΄λ #include κ·Έλν μκ°ν λꡬ.
- μΈν°λν°λΈ κ·Έλν β ν¬/μ€, λ Έλ ν΄λ¦μΌλ‘ νμΌ μ 보 μ‘°ν
- νμΌ λΆμ ν¨λ β Properties, Keywords, Functions, Structs, Defines ν κΈ νμ
standalone-tools/GrShaderIncludeGraph/ν΄λλ₯Ό νλ‘μ νΈEditor/ν΄λμ 볡μ¬νμ¬ μ¬μ©
Requirements
- Unity 2021.3 LTS μ΄μ
- Node.js 18+ (λ‘컬 μ€μΉλ§ λΌ μμΌλ©΄ λ¨ β κ²½λ‘ μλ νμ§)
- Claude Code μ€μΉ λ° μΈμ¦ (Claude Agent SDK λ₯Ό λ΄λΆ λ²λ€λ‘ λλ΄)
Installation
λ°©λ² 1: Git URL (κΆμ₯)
Unity Editor β Window > Package Manager β + β Add package from git URL:
https://github.com/KULEEEE/Unity-Agent-For-Claude-Code.git?path=unity-package
λ°©λ² 2: λ‘컬 ν΄λ
ZIP λ€μ΄λ‘λ ν unity-package/ ν΄λλ₯Ό Unity νλ‘μ νΈμ Packages/UnityAgent/μ 볡μ¬. λ²λ€λ ν€λλ¦¬μ€ λ°λ(Server~/)κ° ν¨κ» λ°λΌμμΌ ν©λλ€.
Packages/
UnityAgent/
package.json
Editor/ β Unityκ° μν¬νΈνλ C# μ½λ
Runtime/
Server~/ β Unityκ° λ¬΄μ (ν€λλ¦¬μ€ λ°λ λ²λ€ + node_modules)
λ°©λ² 3: λμ€ν¬μμ μΆκ°
Package Manager β + β Add package from disk β unity-package/package.json μ ν
λ³λμ npm μ€μΉ,
.mcp.json, MCP μλ² μ€μ μ΄ μ ν νμνμ§ μμ΅λλ€. Unity ν¨ν€μ§ νλλ‘ λ.
Usage
Error Solver
- Tools β Unity Agent β Error Solver μ΄κΈ° (μλ² μλ μμ)
- Unityμμ μλ¬ λ°μ β λͺ©λ‘μ μλ νμ
- μλ¬ μ ν β Solve ν΄λ¦
- AIκ° μλμΌλ‘:
- κ΄λ ¨ μμ€ νμΌ μ½κΈ°
- μμΈ λΆμ
- μ½λ μμ
- κ²°κ³Ό μ€λͺ
Shader Inspector
- Tools β Unity Agent β Shader Inspector μ΄κΈ°
- Shaders νμμ μ °μ΄λ μ ν
- λ‘컬 λΆμ (Compile, Variants, Properties) λλ AI λΆμ μ€ν
- AI Chat νμμ μ °μ΄λ κ΄λ ¨ μμ μ§λ¬Έ
Frame Debugger AI
- Tools β Unity Agent β Frame Debugger AI μ΄κΈ°
- Capture Frame ν΄λ¦ β Unity Frame Debugger μλ νμ±ν + λ°μ΄ν° μμ§
- Overview νμμ ν«μ€ν/λ°°μΉ λΈλ μ΄ν¬ νμΈ
- Events νμμ μ΄λ²€νΈ μμΈ μ‘°ν, Compare νμμ λ μ΄λ²€νΈ λΉκ΅
- Ask AI λ²νΌ λλ AI Chat νμμ λΆμ μμ²
AI Chat & Image Gen
- Tools β Unity Agent β AI Chat μ΄κΈ°
- Chat λͺ¨λμμ μμ μ§λ¬Έ, Image Gen λͺ¨λμμ μ΄λ―Έμ§ μμ±
- λ°±μλ μ ν: Nano Banana (Gemini) λλ ComfyUI (Local)
- λ νΌλ°μ€ μ΄λ―Έμ§ μ²¨λΆ κ°λ₯, μμ± μ΄λ―Έμ§λ νλ‘μ νΈμ μ μ₯
SVN Tool
- Tools β Unity Agent β SVN Tool μ΄κΈ°
- History ν: νμΌ μ ν β SVN λ‘κ·Έ μ‘°ν β diff + AI μ€λͺ
- Operations ν: νμΌ μ ν β 컀λ°/리λ²νΈ/μ λ°μ΄νΈ
Architecture
Unity Editor (C#) Bundled Node runner (Server~/)
βββ UnityAgentServer.cs βββ headless.mjs
β Locate Node.js, readiness probe β stdin JSON β Claude Agent SDK query()
βββ AIRequestHandler.cs β stdout JSON lines (status/chunk/image/result)
β Spawn headless.mjs per AI request β
β Pipe prompt JSON to stdin βββ mcp-tools.mjs
β Parse stdout JSON lines on main thread β Internal stdio MCP β only generate_image
βββ ErrorCollector.cs β Spawned as child of headless by SDK
β Console log capture β
βββ ErrorSolverWindow.cs βββ node_modules/
β Error list + Solve button @anthropic-ai/claude-agent-sdk
βββ ShaderInspectorWindow.cs
β Shader/Material/AI tabs
βββ FrameDebuggerAIWindow.cs Server~ ν΄λλ Unityκ° λ¬΄μ (μ΄λ¦μ΄ ~ λ‘ λλ¨)
β Overview/Events/Compare/AI Chat β μμ
μΌλ‘ μν¬νΈλμ§ μκ³ .meta λ μκΈ°μ§ μμ
βββ FrameDebugBridge.cs
β FD reflection (Unity 2019~6)
βββ AIChatWindow.cs
β AI Chat + Image Gen
βββ SVNToolWindow.cs
β SVN History + Operations
βββ NanoBananaReceiver.cs
μ΄λ―Έμ§ μμ β AI Chat μ°½μ νμ
ν΅μ νλ¦
λͺ¨λ AI μμ² (Solve / AI Chat / Frame Debugger AI / Shader AI):
Unity UI β AIRequestHandler β node headless.mjs (spawn)
β Claude Agent SDK query() β Claude Code headless
β stdout JSON lines β AIRequestHandler λ©μΈ μ€λ λ λμ€ν¨μΉ
Image Generation:
AI Chat UI β image/enhance β headless.mjs β Claude (ν둬ννΈ μ΅μ ν)
β mcp-tools.mjs.generate_image β Gemini / ComfyUI
β μμ λλ ν 리μ κ²°κ³Ό μ μ₯ β headless.mjs stdout image μ΄λ²€νΈ
β NanoBananaReceiver β AI Chat μ°½
Troubleshooting
AI Offline νμ
- Node.js 18+ μ€μΉ μ¬λΆ νμΈ (
node --version) - 컀μ€ν
μ€μΉ κ²½λ‘λ₯Ό μ΄λ€λ©΄
EditorPrefsμUnityAgent_NodeDirν€μ Node ν΄λ κ²½λ‘ μ§μ Packages/com.unity-agent/Server~/headless.mjsνμΌμ΄ μ‘΄μ¬νλμ§ νμΈ (μλ€λ©΄ ν¨ν€μ§κ° μ¬λ°λ₯΄κ² μ€μΉλμ§ μμ κ²)
μλ¬ λͺ©λ‘μ΄ μ 보μ
- Clear λ²νΌμΌλ‘ κΈ°μ‘΄ μλ¬ μ΄κΈ°ν ν μ μλ¬ λ°μμν€κΈ°
- Refresh λ²νΌ ν΄λ¦
Frame Debugger κ΄λ ¨
- Capture μ λ¨ β Unity Frame Debugger μ°½μ΄ μ΄λ € μμ΄μΌ ν©λλ€. Capture Frame λ²νΌμ΄ μλμΌλ‘ μ΄μ΄μ€λλ€
- μ΄λ²€νΈ λ‘λ© λλ¦Ό β μ΄λ²€νΈκ° λ§μμλ‘ μΊμ±μ μκ° μμ, νλ‘κ·Έλ μ€ λ°λ‘ μ§ν νμΈ
- Unity 6 νΈν β FrameDebugBridgeκ° λ¦¬νλ μ κΈ°λ°μΌλ‘ Unity 2019~6 λ²μ μλ λμ
Image Generation κ΄λ ¨
- Gemini API Key β AI Chat μ°½μ Image Gen λͺ¨λμμ μ€μ
- ComfyUI μ°κ²° μ€ν¨ β
http://127.0.0.1:8188μ ComfyUI μλ²κ° μ€ν μ€μΈμ§ νμΈ
SVN Tool κ΄λ ¨
- SVN λͺ
λ Ήμ΄ μ€ν¨ β
svn --versionμ΄ ν°λ―Έλμμ λμνλμ§ νμΈ - 컀μ€ν
SVN κ²½λ‘ β EditorPrefsμ
UnityAgent_SvnPathν€λ‘ μ€μ κ°λ₯
License
MIT
