Search

ํ”„๋กœ์„ธ์Šค

02. ํ”„๋กœ์„ธ์Šค โ€” Framelink MCP

์ „์ฒด ํ๋ฆ„

[Figma ํŒŒ์ผ URL / fileKey + nodeId] โ”‚ โ–ผ [AI Client (Copilot/Claude)] โ”‚ MCP Tool Call โ–ผ [Framelink MCP Server (npx ํ”„๋กœ์„ธ์Šค)] โ”‚ HTTPS โ–ผ [Figma REST API] โ”‚ JSON (๋…ธ๋“œ ํŠธ๋ฆฌ, ์ด๋ฏธ์ง€) โ–ผ [์ •์ œ๋œ ์ปจํ…์ŠคํŠธ โ†’ LLM] โ”‚ โ–ผ [์ฝ”๋“œ / ๋ถ„์„ / ๋ฌธ์„œ]
Plain Text
๋ณต์‚ฌ

URL โ†’ fileKey/nodeId ํŒŒ์‹ฑ

Figma URL ์˜ˆ์‹œ:
<https://www.figma.com/design/abcXYZ123/My-File?node-id=12-345>
Plain Text
๋ณต์‚ฌ
โ€ข
fileKey = abcXYZ123
โ€ข
nodeId = 12:345 (URL์˜ 12-345๋Š” ์ฝœ๋ก  ํ˜•์‹์œผ๋กœ ๋ณ€ํ™˜๋จ)
Framelink MCP๋Š” URL์„ ์ž๋™ ํŒŒ์‹ฑํ•ด ์ฒ˜๋ฆฌํ•ฉ๋‹ˆ๋‹ค.

๋‹จ๊ณ„๋ณ„ ์ฒ˜๋ฆฌ

1) ๋…ธ๋“œ ํŠธ๋ฆฌ ์กฐํšŒ

โ€ข
get_figma_data(fileKey, nodeId) ํ˜ธ์ถœ
โ€ข
Figma REST /v1/files/{key}/nodes?ids=... ์‚ฌ์šฉ
โ€ข
๊ฒฐ๊ณผ: ๊นŠ์ด ์ œํ•œ๋œ ๋…ธ๋“œ ํŠธ๋ฆฌ(JSON)
โ—ฆ
์ ˆ๋Œ€ ์ขŒํ‘œ โ†’ ์ƒ๋Œ€ ์ขŒํ‘œ ๋ณ€ํ™˜
โ—ฆ
๋ถˆํ•„์š”ํ•œ ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ ์ œ๊ฑฐ (LLM ํ† ํฐ ์ ˆ์•ฝ)

2) ์ด๋ฏธ์ง€/์—์…‹ ๋‹ค์šด๋กœ๋“œ

โ€ข
download_figma_images(fileKey, nodeIds, scale) ํ˜ธ์ถœ
โ€ข
Figma REST /v1/images/{key} ์‚ฌ์šฉ
โ€ข
PNG/SVG๋กœ ๋กœ์ปฌ์— ์ €์žฅ โ†’ ์ฝ”๋“œ์—์„œ import ๊ฐ€๋Šฅ

3) LLM ์ปจํ…์ŠคํŠธ ๊ตฌ์„ฑ

โ€ข
MCP๊ฐ€ ๋…ธ๋“œ ํŠธ๋ฆฌ JSON์„ ์••์ถ•/์š”์•ฝํ•ด LLM์— ์ „๋‹ฌ
โ€ข
LLM์€ ์ด ์ •๋ณด๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ React/HTML/CSS/Vue ๋“ฑ ์ฝ”๋“œ ์ƒ์„ฑ

๋ฐ์ดํ„ฐ ์ •์ œ ํŠน์ง•

Framelink MCP์˜ ํ•ต์‹ฌ ๊ฐ€์น˜๋Š” Figma REST ์‘๋‹ต์„ LLM ์นœํ™”์ ์œผ๋กœ ๊ฐ€๊ณตํ•˜๋Š” ๊ฒƒ:
โ€ข
ํ”ฝ์…€ ๋‹จ์œ„ ์ขŒํ‘œ โ†’ Flexbox/Grid ์˜๋„ ์ถ”๋ก 
โ€ข
์ƒ‰์ƒ RGB โ†’ HEX/Token ๋งคํ•‘
โ€ข
ํ…์ŠคํŠธ ๋…ธ๋“œ โ†’ ์˜๋ฏธ์  ํƒœ๊ทธ(h1/h2/p) ์ถ”๋ก 
โ€ข
์ด๋ฏธ์ง€/์•„์ด์ฝ˜ ๋ถ„๋ฆฌ โ†’ ๋ณ„๋„ ๋‹ค์šด๋กœ๋“œ ์ง€์‹œ

์ฃผ์š” MCP Tool

๋„๊ตฌ
์„ค๋ช…
get_figma_data
ํŒŒ์ผ/๋…ธ๋“œ ํŠธ๋ฆฌ ์กฐํšŒ (๋ฉ”์ธ)
download_figma_images
๋…ธ๋“œ ์ด๋ฏธ์ง€ PNG/SVG ๋‹ค์šด๋กœ๋“œ
(๊ณต์‹ MCP ๋Œ€๋น„ ๋„๊ตฌ ์ˆ˜๋Š” ์ ์ง€๋งŒ, get_figma_data ํ•˜๋‚˜๊ฐ€ ๋งค์šฐ ํ’๋ถ€ํ•œ ์ •๋ณด๋ฅผ ๋ฐ˜ํ™˜)

๊ฐ•์ 

โ€ข
๋งํฌ ๊ณต์œ ๋งŒ์œผ๋กœ ํ˜‘์—… โ€” ๋””์ž์ด๋„ˆ๊ฐ€ URL๋งŒ ๋˜์ง€๋ฉด ๋
โ€ข
๋ฌด๋ฃŒ / ์˜คํ”ˆ์†Œ์Šค โ€” ๋ผ์ด์„ ์Šค ๋ถ€๋‹ด ์—†์Œ
โ€ข
๋‹ค์–‘ํ•œ ํด๋ผ์ด์–ธํŠธ ํ˜ธํ™˜ โ€” stdio MCP๋ผ ๊ฑฐ์˜ ๋ชจ๋“  ๋„๊ตฌ์—์„œ ์‚ฌ์šฉ ๊ฐ€๋Šฅ
โ€ข
REST ๊ธฐ๋ฐ˜ โ€” Figma ์ •์ฑ… ๋ณ€๋™์— ๊ฐ•๊ฑด

ํ•œ๊ณ„

โ€ข
Code Connect ๋ฏธ์ง€์› โ†’ ๊ธฐ์กด ์ปดํฌ๋„ŒํŠธ ๋งคํ•‘์€ ํ”„๋กฌํ”„ํŠธ๋กœ ์•ˆ๋‚ดํ•ด์•ผ ํ•จ
โ€ข
Variables(ํ† ํฐ) ์ •๋ณด๋Š” Figma API ๊ถŒํ•œ/ํ”Œ๋žœ์— ๋”ฐ๋ผ ์ œํ•œ
โ€ข
๊ฑฐ๋Œ€ํ•œ ํŽ˜์ด์ง€ ํ†ต์งธ ๋ถ„์„ ์‹œ ํ† ํฐ ํญ์ฆ โ†’ ์ž‘์€ ๋…ธ๋“œ๋กœ ์ชผ๊ฐœ์•ผ ํ•จ
โ€ข
๋””์ž์ด๋„ˆ์˜ "ํ˜„์žฌ ์„ ํƒ" ๊ฐ™์€ ์ฆ‰์‹œ์„ฑ์€ ์—†์Œ

๊ถŒ์žฅ ์‚ฌ์šฉ ํŒจํ„ด

1.
๋””์ž์ด๋„ˆ๊ฐ€ PR/ํ‹ฐ์ผ“์— Figma ๋…ธ๋“œ URL ์ฒจ๋ถ€
2.
๊ฐœ๋ฐœ์ž๊ฐ€ Copilot์— URL ๋ถ™์—ฌ๋„ฃ๊ณ  "์ด ํ™”๋ฉด React๋กœ ๋งŒ๋“ค์–ด์ค˜"
3.
MCP๊ฐ€ ๋…ธ๋“œ/์ด๋ฏธ์ง€ ๊ฐ€์ ธ์˜ค๊ณ  โ†’ ์ฝ”๋“œ ์ƒ์„ฑ
4.
์ปดํฌ๋„ŒํŠธ๋ณ„๋กœ ๋ฐ˜๋ณตํ•˜์—ฌ ์ ์ง„์  ํ†ตํ•ฉ