From 219b396acf4488ba5c65ae31d159aab76f4297cd Mon Sep 17 00:00:00 2001
From: liutao <821580467@qq.com>
Date: Wed, 4 Feb 2026 15:25:57 +0800
Subject: [PATCH] =?UTF-8?q?=E3=80=90AI=E7=BC=96=E7=A0=81=E3=80=91=E3=80=90?=
=?UTF-8?q?MCP=E3=80=91=E6=8F=90=E4=BE=9BMCP=E5=B7=A5=E5=85=B7?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
ProjectNLD/.cursor/rules/nld-ai-rules.mdc | 18 +
.../UIInfoBuilder/ExtractUIPrefabTool.cs | 74 +
.../UIInfoBuilder/ExtractUIPrefabTool.cs.meta | 11 +
.../Editor/UIInfoBuilder/README.md.meta | 7 +
ProjectNLD/ExtractedPrefabs/TaskNodeNew.json | 3222 +++++++++++++++++
ProjectNLD/Packages/manifest.json | 1 +
6 files changed, 3333 insertions(+)
create mode 100644 ProjectNLD/Assets/Editor/UIInfoBuilder/ExtractUIPrefabTool.cs
create mode 100644 ProjectNLD/Assets/Editor/UIInfoBuilder/ExtractUIPrefabTool.cs.meta
create mode 100644 ProjectNLD/Assets/Editor/UIInfoBuilder/README.md.meta
create mode 100644 ProjectNLD/ExtractedPrefabs/TaskNodeNew.json
diff --git a/ProjectNLD/.cursor/rules/nld-ai-rules.mdc b/ProjectNLD/.cursor/rules/nld-ai-rules.mdc
index c6e1f7a42e1..6e813bbedaf 100644
--- a/ProjectNLD/.cursor/rules/nld-ai-rules.mdc
+++ b/ProjectNLD/.cursor/rules/nld-ai-rules.mdc
@@ -25,6 +25,24 @@ alwaysApply: true
- Use DebugUtil class for logging and debugging.
- Utilize Unity's profiler and frame debugger to identify and resolve performance issues.
+## UI Prefab 信息获取
+
+当需要了解 UI Prefab 的结构和组件信息时,按以下步骤操作:
+
+1. 通过 Unity MCP 调用 `extract_ui_prefab` 工具:
+ ```
+ execute_custom_tool: { tool_name: "extract_ui_prefab", parameters: { prefab_path: "Assets/xxx/xxx.prefab" } }
+ ```
+2. 读取返回的 `json_path` 对应的 JSON 文件
+3. 参考 `ExtractedPrefabs/README.md` 理解 JSON 格式含义
+4. 基于 JSON 内容分析 UI 层级结构、组件类型和属性
+
+**重要**:每次都需要先调用工具生成 JSON(避免读取旧数据)
+
+**适用场景**:
+- 需要理解某个 UI 界面的布局结构
+- 需要了解 UI 组件的具体属性配置
+- 需要分析或修改 UI Prefab 相关代码
- You can @ files here
- You can use markdown but dont have to
diff --git a/ProjectNLD/Assets/Editor/UIInfoBuilder/ExtractUIPrefabTool.cs b/ProjectNLD/Assets/Editor/UIInfoBuilder/ExtractUIPrefabTool.cs
new file mode 100644
index 00000000000..823047f3ba8
--- /dev/null
+++ b/ProjectNLD/Assets/Editor/UIInfoBuilder/ExtractUIPrefabTool.cs
@@ -0,0 +1,74 @@
+using System.Threading.Tasks;
+using MCPForUnity.Editor.Tools;
+using Newtonsoft.Json.Linq;
+using UnityEditor;
+using UnityEngine;
+
+namespace UIInfoBuilder
+{
+ ///
+ /// MCP 工具:提取 UI Prefab 信息并生成 JSON 文件
+ /// AI 可通过 execute_custom_tool 调用此工具
+ ///
+ [McpForUnityTool("extract_ui_prefab", Description = "提取 UI Prefab 信息并生成 JSON 文件,用于 AI 理解 UI 结构")]
+ public static class ExtractUIPrefabTool
+ {
+ public static Task