Figma MCP server 暴露的工具分成三組:讀取(從 Figma 取資料)、寫入(改 Figma 內容)、以及 Weave(Figma 的 AI 工具執行層)。知道完整清單的實際用途不是為了背起來,而是為了在 agent 挑錯工具時能明確指定——官方承認這是一個常見問題,而解法就是在提示裡直接點名工具。

以下清單取自官方文件(2026-11-01 查證)。標註 R 者為遠端限定,本機伺服器沒有。


📖 讀取工具

工具用途參數R
get_design_context主力工具:回傳某圖層或選取範圍的設計脈絡與程式碼clientFrameworks
get_metadata回傳選取範圍的輕量 XML 輪廓node ID(選填)
get_screenshot對選取範圍截圖enableBase64Response
get_variable_defs列出選取範圍用到的變數與樣式—
get_code_connect_map回傳選取實例的 Code Connect 對應clientFrameworks、clientLanguages
get_motion_context回傳動畫資料與 CSS/Motion 片段recursive
download_assets匯出至多 20 個 node 的算圖與原始圖檔格式與倍率選項R
search_design_system在元件庫中搜尋元件、變數與樣式—R
get_libraries列出已加入與可用的元件庫—R
whoami回傳你的身分、方案與席次無R
get_figjam把 FigJam 圖轉成 XML,附截圖—
get_shader/list_shaders讀取與列出 shaderid、version 等部分
list_file_shaders列出某檔案用到的 shaderfileKeyR
get_generative_plugin/list_generative_plugins讀取與列出生成式外掛id、cursor 等R
get_code_connect_suggestions建議 Code Connect 對應(Figma 內部使用)—
get_context_for_code_connect取得 Code Connect 模板的元件中繼資料(Figma 內部使用)—R

四個真正天天會用到的

get_design_context 是主力。它回傳設計脈絡與程式碼,絕大多數的 design→code 都是在呼叫它。要注意它的輸出格式——官方說明它會用「看起來像 React 與 Tailwind」的格式描述設計,這直接解釋了為何你老是拿到網頁程式碼,見 指定框架。

get_metadata 是處理大型設計的官方解法。它只回傳輕量輪廓,讓 agent 先看全貌、再針對需要的部分取完整脈絡。這是本專欄最值得養成的習慣之一——它同時解決了「選取過大會卡住」與「每分鐘只有 10 次呼叫」兩個問題。

get_variable_defs 取出變數與樣式。它是讓產出使用 token 而非硬編碼值的關鍵,見 變數與設計系統。

get_screenshot 用來驗證。結構化資料說不出「看起來對不對」,生成之後截一張圖比對是最低成本的品管步驟。

download_assets 有一個明確的數字限制:至多 20 個 node。 這是官方文件載明的,規劃批次匯出流程時要考慮。


📖 寫入工具

這一組是 2026 年的新局面:Figma MCP 不再只是唯讀的脈絡提供者。

工具用途R
use_figma核心寫入工具:透過 Figma Plugin API 在檔案中執行程式碼,建立、編輯與檢視內容R
generate_figma_design把實際運行的網頁 UI 送進 Figma 成為設計圖層R
html_to_figma把一份 HTML 文件轉成設計圖層R
send_code_to_figma把本機專案匯入成 Make 檔案或程式碼圖層R
create_new_file建立空白的 Design/FigJam/Slides 檔案R
generate_diagram由描述或 Mermaid 語法生成 FigJam 圖R
generate_image生成圖片並放進檔案R
upload_assets上傳圖片與 SVG 進檔案R
add_code_connect_map把 Figma 元件對應到程式碼元件
send_code_connect_mappings確認建議的對應(Figma 內部使用)
create_shader/update_shader建立與更新 shaderR
create_generative_plugin/update_generative_plugin建立與更新生成式外掛R

幾乎全部是遠端限定,只有 Code Connect 對應那兩個例外。這是選遠端伺服器最實際的理由。

三個對 UI 工作流真正有意義的:

generate_figma_design ——從跑起來的網頁反向生成設計。這解決的是一個長年存在的問題:設計檔案與線上實況逐漸分歧。 用法見 完整 UI workflow。

use_figma ——寫回畫布的核心。官方說明它能建立「frames、components、variants、variables 與 auto layout」這些真正的 Figma 內容,不是貼一張圖。

add_code_connect_map ——讓 agent 自己建立設計元件與程式碼元件的對應,見 Code Connect。

寫入工具有明確的限制與風險

官方載明:每次工具呼叫最多回傳 20 KB;use_figma 無法自行加入圖片;含圖片或影片的元件匯入、以及建立 GIF 目前不支援;字型必須已上傳到你的 Figma 帳號(只裝在本機電腦的字型不可用);元件必須手動發布後才能完成 Code Connect 對應。 官方並明確警告:先在元件庫的複本或草稿檔測試,再動正式檔案,並保留備份。產出品質為 beta 等級,「may need manual review and cleanup」。


📖 Weave 工具

weave_list_tools、weave_get_tool_inputs、weave_upload_asset、weave_run_tool、weave_get_tool_run_output、weave_cancel_tool_run、weave_find_model、weave_run_model、weave_get_model_run_output。

這一組是 Figma 的 AI 工具與模型執行層,與 design→code 主線關係不大。計費方式不同——它使用 Weave credits 而非 Figma AI credits。官方文件未標註這組的遠端/本機可用性。


📖 Prompts 與 Skills

MCP prompt:create_design_system_rules——依你的 codebase 產生一份規則檔,無參數。這是建立 custom rules 最省事的起點,見 規則檔。

Skills:figma-use(Design)、figma-use-figjam、figma-use-slides、figma-spec(Specs,open beta)、figma-generative-plugins、figma-shaders、figma-code-connect。

skills 不是新能力,是使用說明。 官方的原話是「Skills don’t replace the MCP connection or add new capabilities」——它們把正確的使用方式包裝成 agent 可讀的指示,讓 agent 更可靠地使用寫入工具。這也是官方建議用 plugin 安裝的理由:plugin 會一併帶進 skills。


📖 已棄用

list_shader_effects、list_shader_fills、get_shader_effect、get_shader_fill 四個 shader 工具已標註棄用。看到教學提到這些,代表該文已過期。


📖 明確指定工具

官方承認一個常見問題:agent 依你的提示挑選工具,有時會挑錯。 官方的解法很直接——把你要的東西講清楚,並給了範例:

「Get the variable names and values for this selection.」

這比寫「用 get_variable_defs」更自然也更可靠,因為提示描述的是意圖,而工具名稱是實作細節。但在排查問題時,直接點名工具是有用的——它能區分「agent 挑錯工具」與「工具本身回傳有問題」。


🧠 重點整理

工具分三組:讀取、寫入、Weave。寫入組幾乎全是遠端限定,這是選遠端最實際的理由。

四個天天用的讀取工具:get_design_context(主力)、get_metadata(大型設計先取輪廓)、get_variable_defs(token)、get_screenshot(驗證)。

get_design_context 用 React/Tailwind 風格描述設計,這解釋了為何總是拿到網頁程式碼。

get_metadata 先行同時解決選取過大與呼叫次數兩個問題。

download_assets 上限 20 個 node。

寫入工具每次呼叫最多回傳 20 KB;不支援含圖片影片的元件匯入與 GIF;字型須已上傳至帳號。

官方明確要求先在複本或草稿測試寫入功能。

skills 不新增能力,只是使用說明——但它顯著提升寫入工具的可靠度。

四個 shader 工具已棄用,可用來判斷教學是否過期。


✍️ 動手做

建立「先輪廓、後細節」的習慣,約 20 分鐘:

  1. 在 Figma 選一個整頁的大 frame,請 agent 直接取設計脈絡。記下花了多久、有沒有出錯。
  2. 同一個 frame,改成請 agent 先呼叫 get_metadata 取輪廓,列出裡面有哪些區塊。
  3. 從輪廓中挑一個區塊,只對那個區塊取完整脈絡。
  4. 比較兩條路徑的耗時、回傳大小、以及產出是否完整。

第 1 步有不小的機率會卡住或回傳不完整——那正是官方文件所描述的症狀。親自撞一次,之後就不會再用第一種做法。


🔗 資料來源


相關