
讓 AI Agent 直接在 Grasshopper 裡建模:透過 MCP 連上畫布後,Agent 會自己新增元件、拉線、設定 slider,並截圖檢查結果、發現問題自己修正。設計者只需要用日常語言描述需求,並判斷方向。
- 以開源外掛 Cordyceps 作為 Grasshopper 的 MCP 接頭,讓 Claude Code 等 Agent 能新增元件、連線、設定 slider、讀取輸出與截圖
- Agent 不只調整既有參數,也能從零建立定義、改變模型結構,並撰寫 Python 腳本元件處理複雜幾何
- 每完成一步就截圖、讀取輸出數值自我檢查,出錯時自己修正(例如資料樹沒有攤平造成縮放錯誤)
- 實作四個案例:參數化立面、從參考圖重建的燈具系列、形狀 × 紋理的椅凳產生器、從照片重建的波浪板條椅凳
參數化建模:想法很快,接線很慢
在 Grasshopper 裡把一個想法做成參數模型,需要知道該用哪些元件、怎麼連線、資料結構怎麼對齊;就算只是換一種造型,也常要回頭重接一整段定義。
一般讓 AI 協助的做法,多半停在回答問題或回傳參數:AI 看不到畫布、只能調整既有的參數,做出來對不對還是要靠人轉述。
Agent 直接連上 Grasshopper
MCP(Model Context Protocol)是一套開放標準,讓 AI 用同一種方式連接各種軟體,像 USB 之於電腦周邊。Cordyceps 是 Grasshopper 的開源 MCP 外掛:在畫布上放一個元件就會啟動本機伺服器,Agent 便能建元件、拉線、寫腳本元件、讀錯誤與輸出數值、存檔快照,甚至設定材質燈光算圖。
和 Grasshopper 內建 AI 的外掛 Raven 相比,Cordyceps 本身沒有 AI,要接外部 Agent;好處是 Agent 可以自己挑、自己換,設計規則寫成 Skill 可以帶著走,同一種接法也能用在 Rhino 以外的軟體。
一句話做出參數化立面
第一句:「在 XZ 平面建立一面 20 × 8 的正方形立面板,開口大小依照與吸引點的距離變化,並加上 slider 控制。」第二句:「開口改成六角形,每一格的開口面積不超過該格的 60%。」
Agent 自己建元件、連線、截圖檢查。過程中它讀了輸出數值,發現每一列各自縮放(資料樹分支沒有攤平),自己改成 Flatten 後重算;最後還整理分組、替 slider 取了清楚的名稱,打開定義就能理解。


燈具:從一張參考圖到一個系列
拆解參考燈具:燈罩是多層鼓起加斜向螺旋紋,燈座是直向溝槽圓頂。Agent 用 2 個 Python 腳本元件加 16 個 slider 建模,每一步截圖和參考圖比對再調整,最後設定霧面材質與暖光算圖。
接著只說一句「做 3 種不同感覺、同一個風格的燈」,Agent 只改 slider 數值再分別 bake,得到 2 層圓胖、3 層斜螺旋、5 層細高三款。


三款燈具的產品呈現

椅凳:形狀 × 紋理的系列產生器
平面形狀取自形狀參考圖(三葉、愛心、拱門、四分之一圓等),紋理是沿高度漸變的肋條,再加上鼓肚、束腰、分層、喇叭形等曲度變化。每一款就是一行參數,改一行就換一款。

波浪椅:一張照片 → 可調參數的椅凳
板條是倒 U 形輪廓加波浪腳,用曲線偏移、擠出、封蓋建成,不用網格。11 個 slider 控制尺寸、片數、圓角、波浪振幅、數量與相位差;換一組數值、bake 一次就是一款,從長凳到矮腳凳共五款。
五款椅凳的產品呈現


延伸:幾何鏤空夜燈


把重複的操作交給 Agent,把時間留給設計判斷
設計者負責描述需求、挑選方向;建元件、接線、檢查與修正交給 Agent。同一種 MCP 接法也能延伸到 Rhino 以外的設計軟體。