『その仕事、AIに任せた後は? あなたの脳を整える、焙煎士の診断ガイド』
PR

Figma MCP を活用した「意図が伝わる」開発。デザインとコードを疎結合から同期へ

Figma MCP 社会人の勉強

要約
Figma MCPは、単にデザインを読み取るだけでなく、Code Connect と組み合わせることで既存のコンポーネントに基づいた実装を可能にします。本記事では、AIエージェントがデザインシステムを正しく理解し、規律あるコードを出力するための実践的な管理手法について解説します。

手動での転記作業に伴う摩擦を解消する

Figmaのデザインをコードに変換する際、マージンやカラーコードを一つずつ確認して書き写す作業には、常にヒューマンエラーと工数の問題がつきまといます。

最近ではスクリーンショットからコードを生成することも可能になりましたが、それではプロジェクト独自のデザインルールが無視され、場当たり的なコード(divの多用など)が生成されてしまうことが少なくありません。

「Figma MCP(Model Context Protocol)」は、この問題を解決するための新しい接続方式です。これは単なる自動化ツールではなく、デザイナーの意図を正確な「データ構造」としてAIに伝えるための仕組みです。

1. Code Connect によるコンポーネントの同期

MCPを使ってFigmaの情報をAIに渡すだけでは、AIは見たままの「形」を模倣しようとするだけで、既存のコンポーネントを使い分けることはできません。

ここで重要になるのが Figma Code Connect との連携です。

実装の整合性を保つ

Code Connectを使うことで、Figma上のパーツとプロジェクト内のReactやVueなどのコンポーネントを1対1で対応付けることができます。

  • 従来の生成: 「青いボタン」を汎用的なタグとスタイルで再現しようとする。
  • Code Connect 連携: 「これは PrimaryButton である」と認識し、既存のコード資産をそのまま活用して実装する。

これにより、AIはデザインを単なる「絵」ではなく、「コードと紐付いた構造」として解釈できるようになります。

2. 推論の精度を高めるためのキャンバス管理(Pruning)

AIに適切な出力をさせるためには、Figma側の情報の整理が不可欠です。不要な情報が混ざったファイルは、AIにとってノイズとなり、誤った実装を招く原因になります。

実務で意識すべき3つのポイント

  1. 対象ページの切り出し(Context Isolation):
    大規模なファイル全体をAIに読み込ませると、処理が遅くなり精度も低下します。実装対象の画面のみを別ページに分離し、AIの参照範囲を限定することが、正確な実装への探道です。
  2. Auto Layoutによる構造の明示:
    Auto Layoutで組まれたデザインは、AIにとってレイアウトの論理そのものです。親子構造が明確であれば、FlexboxやGridを用いた自然なコードが生成されやすくなります。
  3. セマンティック変数(Variables)の活用:
    色の指定に brand-primary といった役割名(変数名)を使用することで、AIは色の「意図」を理解します。これは、将来的なテーマ変更やメンテナンスにも強いコードに繋がります。

3. デザインとコードの双方向検証

Figma MCPの利点は、コードを書くことだけではありません。実装されたコードがデザイン側の基準(アクセシビリティや数値の整合性)を満たしているかをAIがチェックし、差分を報告させるといった「検証」にも活用できます。

項目従来の連携方法MCPを活用した連携
情報の性質静的な画像と指示書コンポーネントとメタデータの同期
AIの役割部分的なコード補完構造を理解した実装の提案
整合性の担保目視による確認自動検証による差分検知

役割のアップデート:作業から設計へ

Figma MCPを導入する目的は、単に開発を速くすることではなく、開発者が「単純な転記作業」から解放され、システム全体の設計やユーザー体験の向上にリソースを割けるようにすることにあります。

作業を効率化することで生まれた時間を、細部のクオリティ向上やアクセシビリティの検討に充てる。それが、これからのフロントエンド開発における実務家のあり方ではないでしょうか。

実践的なプロンプトの例

Claude Code や Cursor などの環境で、FigmaのURLを添えて以下のプロンプトを試してみてください。

“`markdown
以下の Figma 画面を、プロジェクト内の既存コンポーネント(@/components/ui)を使用して実装してください。

【制約事項】

  1. 既存コンポーネントで再現できない箇所は、勝手に実装を進めず、必要な拡張をリストアップして報告してください。
  2. デザイン側の Variables(変数)が定義されている場合は、それを優先的に使用してください。
  3. 独自の推測による実装は避け、既存の設計ルールを遵守してください。

タイトルとURLをコピーしました