
上一篇解决的是"怎么接上":我们区分了官方远程 Connector 和本地桥接方案,也完成了版本读取、模型检查和测试立方体。
但接通 MCP 只是第一步。
真正把它放进日常工作后,很快会遇到几个更实际的问题:
- 一次说太多,AI 做到一半就超时;
- 外形看起来没问题,尺寸和组件层级却是错的;
- 修改一个细节,前面正确的部分也被一起改坏;
- AI 说"已完成",模型里却留下散面、重名组件或错位对象;
- 操作很多,但没有一个节点适合回退。
所以这篇不再讲安装,而是用一张餐桌走完一次完整的本地 MCP 建模流程:读取、规划、白模、复核、细化、材质、交付。
重点不是"一句话生成",而是让每一步都可检查、可修改、可撤销。
说明:不同版本的 SketchUp MCP 扩展,工具名称和参数可能不同。下面的提示词按"能力"描述,不强依赖某个具体工具名。实际执行前,请先让 AI 列出当前可用工具;涉及真实项目时,务必另存副本。
一、先定义交付标准,不要急着让 AI 开画
这次要做一张六人餐桌,最终要求如下:
| 项目 | 要求 |
|---|---|
| 总体尺寸 | 1800 × 900 × 760 mm |
| 桌面 | 1800 × 900 × 35 mm |
| 桌腿 | 4 根,截面 70 × 70 mm |
| 桌腿退距 | 距桌面四边 100 mm |
| 围板 | 长边 1460 × 25 × 100 mm,短边 560 × 25 × 100 mm |
| 倒角 | 桌面外露边 3 mm,桌腿外露边 2 mm |
| 组件结构 | 桌面、桌腿、围板分别成组,最外层为 DiningTable_v01 |
| 原点 | 桌面中心在 XY 原点,地面为 Z=0 |
| 材质 | 桌面暖色橡木,桌腿和围板深灰 |
| 交付 | 无散面、命名清晰、尺寸正确、保留可编辑结构 |
这张表有两个作用。
第一,它把"做一张现代餐桌"变成了可以验证的数据。第二,它提前定义了"完成"的含义------不是视口里看着像,而是尺寸、位置、层级、材质和可编辑性都符合要求。
第一个提示词:只读,不修改
不要一上来就让 AI 创建几何体。先确认它看到的模型和你看到的是同一个。
text
请连接当前 SketchUp 模型,先只读检查,不要创建、删除或修改任何对象。
请报告:
1. SketchUp 版本;
2. 当前模型单位;
3. 当前活动编辑上下文是否在模型根层级;
4. 当前选择集中的对象数量;
5. 现有群组、组件和材质数量;
6. 当前可用的撤销、几何创建、变换、材质和模型信息工具。
如果模型单位不是毫米,先报告,不要自行修改。
这一步看似慢,实际是在避免最常见的低级错误:在错误的编辑上下文中建模、用英寸解释毫米,或者把新对象塞进一个正在编辑的旧组件里。
二、让 AI 先复述计划,再执行
模型检查通过后,先让 AI 把需求转换成坐标和组件计划。
text
我们要创建 DiningTable_v01,暂时只做白模,不加材质、不做倒角。
成品总体尺寸为 1800 × 900 × 760 mm。
桌面尺寸为 1800 × 900 × 35 mm,桌面顶面 Z=760 mm。
四条桌腿截面为 70 × 70 mm,从地面延伸到桌面底面;
桌腿外侧距桌面对应边均为 100 mm。
桌面中心位于 XY 原点,地面为 Z=0。
执行前请先输出:
1. 桌面包围盒的最小点和最大点;
2. 四条桌腿各自的中心坐标和高度;
3. 计划创建的群组/组件层级;
4. 分几步执行,每一步如何检查。
此时不要修改模型。发现尺寸冲突时先提问,不要自行猜测。
根据这些条件,AI 至少应该推导出:
- 桌面 X 范围:-900 到 900 mm;
- 桌面 Y 范围:-450 到 450 mm;
- 桌面 Z 范围:725 到 760 mm;
- 桌腿高度:725 mm;
- 桌腿外侧距离桌面边缘 100 mm;
- 每条桌腿中心距 X 轴方向端部:765 mm;
- 每条桌腿中心距 Y 轴方向端部:315 mm。

图 1:执行前先把自然语言换算成坐标。示意图不代表真实 SketchUp 操作界面。
这里最值得检查的是"退距"的定义。
"桌腿距边缘 100 mm"可能被理解为桌腿外侧、中心线或内侧距边缘 100 mm。只要定义不清,最后就能差出 35 至 70 mm。
让 AI 先复述坐标,是成本最低的错误拦截点。
三、白模阶段:拆成三次操作
不要把桌面、桌腿、围板、倒角和材质塞进一个请求。白模阶段分三次做,每次只解决一种几何关系。

图 2:桌面、桌腿、围板分阶段创建,每一步检查通过后再继续。
第一步:只创建桌面
text
现在只创建桌面:
- 尺寸 1800 × 900 × 35 mm;
- 中心位于 XY 原点;
- 顶面 Z=760 mm;
- 创建后立即成组,命名为 DT_Top;
- 不创建其他对象,不加材质,不做倒角。
完成后读取 DT_Top 的包围盒,报告 X/Y/Z 三个方向尺寸及最小点、最大点。
若任一尺寸误差超过 0.1 mm,请撤销本步并报告原因。
为什么只做一个桌面?因为它会成为后续所有部件的坐标基准。桌面位置一旦错了,桌腿和围板再精确也没有意义。
第二步:创建一条桌腿,再复制
text
在不修改 DT_Top 的前提下,创建第一条桌腿:
- 截面 70 × 70 mm;
- 高度 725 mm;
- 底面 Z=0;
- 其靠近桌角的两个外侧面,分别距桌面对应外边 100 mm;
- 创建为组件定义 DT_Leg,实例名 DT_Leg_FL。
先只创建这一条。完成后报告包围盒和中心点,不要继续复制。
确认第一条腿正确后,再发第二条指令:
text
以 DT_Leg_FL 为源,复制出另外三条相同组件实例。
实例分别命名为 DT_Leg_FR、DT_Leg_RL、DT_Leg_RR。
四条腿必须共用同一个组件定义,但每个实例名称不同。
只做平移,不旋转、不缩放。
完成后报告四个实例的中心坐标、包围盒尺寸,以及它们是否共用同一组件定义。
这里使用"组件实例"而不是四个独立群组,是为了保留后续统一修改能力。比如桌腿截面从 70 mm 改为 65 mm,修改定义即可同步四条腿。
但也要注意:如果未来四条腿需要不同开槽或不同造型,就应该先"设为唯一",否则修改一条会影响全部实例。
第三步:添加围板并建立总层级
text
在桌面下方添加四块围板:
- 围板顶面贴合桌面底面 Z=725 mm;
- 围板高度 100 mm,厚度 25 mm;
- 两块长边围板长度 1460 mm;
- 两块短边围板长度 560 mm;
- 围板位于桌腿之间,不得穿过桌腿;
- 分别命名为 DT_Apron_Long_F、DT_Apron_Long_B、
DT_Apron_Short_L、DT_Apron_Short_R。
创建后检查围板与桌腿是否发生实体穿插。
确认无误后,将 DT_Top、四条桌腿和四块围板放入最外层组件 DiningTable_v01。
不要修改任何子对象的局部坐标和尺寸。
这里故意没有把围板的完整坐标写死,而是同时给了尺寸和拓扑约束:贴桌面底面、位于桌腿之间、不能穿插。
按当前尺寸,X 方向两条桌腿内侧面的净距应为 1460 mm,Y 方向应为 560 mm。如果 AI 的计算结果与此不一致,它应该停下来报告冲突,而不是靠拉伸围板或移动桌腿"凑上去"。这正是前面要求"发现冲突先提问"的价值。
四、不要相信"已完成",要让模型自己说话
视口截图适合看外形,不适合证明尺寸。
白模完成后,应该同时做三类检查。
1. 尺寸检查
text
请只读检查 DiningTable_v01,不要修改。
报告:
- 总体包围盒尺寸;
- 桌面尺寸与 Z 范围;
- 每条桌腿的尺寸、中心点和 Z 范围;
- 每块围板的尺寸和 Z 范围。
将实际值与以下目标逐项对比:
总体 1800 × 900 × 760 mm;
桌面 1800 × 900 × 35 mm;
桌腿 70 × 70 × 725 mm。
用"通过 / 不通过 / 无法验证"标记每一项,不要用"基本正确"等模糊结论。
2. 结构检查
text
请检查 DiningTable_v01 的层级与命名:
- 最外层只能有 1 个组件 DiningTable_v01;
- 内含 1 个桌面、4 个桌腿实例、4 块围板;
- 四条桌腿应共用 DT_Leg 组件定义;
- 不应存在散落的边或面;
- 不应存在默认名称、空群组或重名实例。
只报告问题,不要自动修复。
3. 空间关系检查
text
请检查:
- 四条桌腿底面是否全部位于 Z=0;
- 桌腿顶面和围板顶面是否与桌面底面 Z=725 mm 对齐;
- 围板是否穿入桌腿;
- 左右、前后是否关于 X/Y 轴对称;
- 是否有对象超出桌面 XY 投影范围。
若当前工具不能可靠判断实体相交,请明确写"无法验证",不要猜测。
"无法验证"并不是失败。
真正危险的是工具没有检查能力,AI 却根据预期回答"没有问题"。
五、发现错误时,不要让 AI"整体优化"
假设检查发现右后桌腿 Y 坐标多了 50 mm。最不稳妥的说法是:
帮我把桌子调整正确。
它可能重新排列四条腿,甚至重建整张桌子。
更稳妥的修复指令应该把修改范围锁死:
text
只修复实例 DT_Leg_RR 的位置。
当前问题:它的 Y 方向中心坐标比目标值多 50 mm。
请仅沿 Y 轴负方向平移 50 mm。
禁止修改:
- DT_Leg 组件定义;
- 其他三个桌腿实例;
- 桌面和围板;
- 任何对象的尺寸、旋转和材质。
执行前报告当前坐标和目标坐标;
执行后重新读取该实例坐标,并检查 DiningTable_v01 总体包围盒。
如果工具无法保证只移动该实例,则不要执行。
这类提示词可以概括成四句话:
- 只改谁;
- 改什么参数;
- 哪些对象绝对不能动;
- 改完如何证明。
它比"再优化一下"长,但返工成本低得多。
六、倒角与材质要放到白模确认之后
倒角会增加边和面数量,材质会干扰几何检查。二者都不应该出现在白模阶段。
倒角前先建立回退点
text
白模已经确认。执行任何细化前,请先:
1. 确认当前没有未完成的编辑上下文;
2. 保存一个新版本,文件名追加 _whitebox;
3. 如果当前工具不支持保存或另存为,请停止并提醒我手动完成。
不要继续执行倒角。
手动确认保存完成后,再开始倒角:
text
只处理外露边:
- DT_Top 外露边倒角 3 mm;
- DT_Leg 的四条竖向外露边倒角 2 mm;
- 围板暂不倒角;
- 不改变总体长、宽、高;
- 不使用 eval_ruby。
先对桌面执行并报告结果,待确认后再处理桌腿。
若当前类型化工具不支持可靠倒角,请停止,不要用任意代码执行替代。
这里宁可接受"当前工具不支持",也不要为了完成任务临时打开 eval_ruby。类型化工具能力有限,影响的是效率;任意代码执行权限失控,影响的是整个模型和本机环境。
材质先命名,再贴图
为了让后续替换 PBR 材质更容易,先统一材质命名:
text
创建并应用两种占位材质:
1. MAT_Oak_Warm_v01
- 用于 DT_Top;
- 先使用暖橡木近似色,不加载外部贴图。
2. MAT_Metal_Dark_v01
- 用于四条桌腿和四块围板;
- 先使用深灰近似色,不加载外部贴图。
不要按单个面零散赋材质,优先在正确的群组或组件层级应用。
完成后报告每种材质关联的对象。
为什么先用占位色?
因为建模阶段要确认的是材质分区,不是最终渲染效果。等对象归属完全正确后,再替换 Base Color、Normal、Roughness、Metallic、AO 等 PBR 资源,会比一边建模一边处理贴图稳定得多。
七、最终交付检查:把 AI 当执行员,也当质检员
最后一次提示词不要再创建内容,只做验收。

图 3:固定视图用于观察外形,尺寸和层级数据用于证明结果。
text
请对 DiningTable_v01 做最终只读验收,不要修复、删除或重命名任何对象。
按以下格式输出:
一、尺寸
- 总体尺寸:目标值 / 实际值 / 结论
- 桌面尺寸:目标值 / 实际值 / 结论
- 桌腿尺寸:目标值 / 实际值 / 结论
二、结构
- 最外层组件名称
- 子对象数量
- 桌腿是否共用组件定义
- 是否存在散边、散面、空群组或默认名称
三、位置
- 是否以 XY 原点为中心
- 是否落地
- 是否对称
- 是否存在穿插或超出范围
四、材质
- MAT_Oak_Warm_v01 的应用对象
- MAT_Metal_Dark_v01 的应用对象
- 是否存在未使用材质
五、风险
- 列出所有无法通过当前工具验证的项目
只能使用"通过 / 不通过 / 无法验证"三种结论。
如果当前扩展支持视口截图,可以再补一组固定视图:
- 正视图;
- 侧视图;
- 顶视图;
- 等轴测视图。
截图用于人工判断比例、穿插和视觉异常,数据报告用于确认尺寸与层级。两者不能互相替代。
八、把整套流程压缩成一个可复用模板
以后不管做书柜、橱柜、门窗还是景观小品,都可以复用下面这套任务单。
text
【任务名称】
创建:
【执行范围】
当前阶段只做:
明确禁止:
【单位与坐标】
模型单位:
原点定义:
朝向定义:
地面标高:
【关键尺寸】
总体尺寸:
部件尺寸:
间距与退距:
允许误差:
【组件结构】
最外层名称:
子组件名称:
哪些对象共用组件定义:
哪些对象必须独立:
【执行顺序】
1. 只读检查;
2. 复述坐标与计划;
3. 创建基准对象;
4. 分批创建其他对象;
5. 尺寸和层级复核;
6. 细化;
7. 材质;
8. 最终验收。
【停止条件】
- 需求存在歧义;
- 尺寸互相冲突;
- 需要调用未授权工具;
- 无法保证只修改指定对象;
- 检查结果超出允许误差。
【每步回报】
- 实际创建或修改的对象;
- 修改前后数值;
- 检查结果;
- 无法验证的项目;
- 是否可以单步撤销。
这个模板最重要的不是格式,而是三个约束:
- 执行前先计算;
- 执行后读回数据;
- 不确定时停止,而不是猜。
九、哪些工作适合交给 MCP,哪些仍应由人决定
MCP 擅长的是明确、重复、可验证的操作:
- 按尺寸创建规则几何;
- 批量命名和整理组件;
- 复制、阵列和精确移动;
- 读取包围盒、数量和层级;
- 按既定规则分配材质;
- 执行标准化交付检查。
它不擅长替你做没有标准答案的判断:
- 桌腿比例是否"更优雅";
- 某个空间是否"更有氛围";
- 节点做法是否满足真实加工;
- 材质是否适合项目预算与维护条件;
- 结构和人体工学是否真的成立。
更准确的分工是:
人负责目标、约束和判断,AI 负责计算、执行和重复检查。
当任务可以被写成尺寸、坐标、层级、允许误差和停止条件时,MCP 通常能明显提效;当任务只能用"高级一点""舒服一点""有设计感"来描述时,AI 最多提供备选方案,不能替代设计决策。
结语:真正省时间的不是一句话,而是少返工
第一次接通 SketchUp MCP 时,最有冲击力的画面通常是:输入一句话,视口里出现了模型。
但真正决定它能否进入项目的,不是生成速度,而是下面这些问题:
- 它是否知道自己正在改什么;
- 结果能否用数据复核;
- 错误能否被限制在一个小步骤里;
- 每个阶段是否有明确回退点;
- 最终模型能否被其他人继续编辑。
从"能调用工具"到"能稳定交付",中间差的不是更长的提示词,而是一套工程化流程。
先读,再算;先白模,再细化;每步检查,随时可退。
做到这些,AI 才不只是替你画得快,而是真的开始替你承担建模流程中的重复劳动。
下一篇,我们可以继续解决材质问题:如何从 SketchUp 中扫描现有材质,通过 AI 生成 Base Color、Normal、Roughness、Metallic 和 AO,并把它们重新绑定到模型,形成一条可追踪、可回滚的 PBR 材质工作流。