Figma Agent MCP
⚡ Figma Agent MCP
Figma를 위한 로컬 우선 AI 디자인 에이전트 via Model Context Protocol (MCP) → WebSocket Bridge → Native Figma Plugin
Figma 디자인을 네이티브로 검사, 생성, 변경, 스타일링, 검증, 최적화할 수 있으며, 결정론적 타입 도구, 디자인 시스템 인식, 토큰 압축, 턴키 복합 워크플로우를 제공합니다.
🏛️ 시스템 아키텍처
┌─────────────────────────────────────────────────────────────┐
│ AI Client (Claude / Cursor / Antigravity / LLM) │
└──────────────────────────────┬──────────────────────────────┘
│ MCP Protocol (stdio / SSE)
▼
┌─────────────────────────────────────────────────────────────┐
│ MCP Server (@figma-agent/mcp-server — 49 Tools) │
│ - Tool Registry & Validation - Session Router │
│ - Context Compiler (Compact) - Composite Skills Runtime │
│ - Design System Resolver - Semantic Token Matching │
└──────────────────────────────┬──────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────┐
│ Command Engine (@figma-agent/command-engine) │
│ - Batch Transaction Pipeline - Idempotency & Rollback │
└──────────────────────────────┬──────────────────────────────┘
│ Local WebSocket (ws://127.0.0.1:3055)
▼
┌─────────────────────────────────────────────────────────────┐
│ Bridge Server (@figma-agent/bridge-server) │
│ - Channel Pairing (128-bit) - Request/Response Matcher │
│ - Heartbeat & Auto-reconnect - 50+ Concurrent Sockets │
└──────────────────────────────┬──────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────┐
│ Figma Plugin (@figma-agent/figma-plugin) │
│ - Typed Command Dispatcher - Pure Font Engine │
│ - Native Node Mutation - Zero External Dependencies │
└──────────────────────────────┬──────────────────────────────┘
│ Figma Plugin API
▼
┌─────────────────────────────────────────────────────────────┐
│ Figma Canvas │
└─────────────────────────────────────────────────────────────┘Related MCP server: figmind
🌟 주요 특징
🔒 로컬 우선 및 보안: 기본적으로
127.0.0.1에 바인딩됩니다. 128비트 비밀 채널 페어링. Figma 내에서 임의 JavaScript 실행이 없습니다.🧩 49개의 결정론적 MCP 도구: 읽기, 생성, 변경, 자동 레이아웃, 시각적 스타일, 컴포넌트, 변수/토큰, 타이포그래피, 내보내기, 디자인 시스템 해석을 포괄적으로 지원합니다.
🎯 의미론적 디자인 시스템 해석기: 사람의 의도(
"primary button","#6366F1")를 지각 색상 거리($\Delta E$)와 자동화된 노드 감사를 통해 일치하는 컴포넌트 및 토큰에 연결합니다.⚡ 컨텍스트 컴파일러 및 가지치기: 방대한 노드 트리를 의미론적 마크다운 또는 컴팩트 DSL로 압축하며, 적응형 깊이 가지치기와 토큰 예산 적용을 100ms 이내에 수행합니다. 일반적으로 상당한 컨텍스트 감소를 달성하며, 테스트 시나리오에서 벤치마크 픽스처는 70% 이상의 감소를 보여줍니다.
🛡️ 내장 검증 및 WCAG 2.1 엔진: 일반 텍스트, 큰 텍스트, UI 구성 요소에 대한 상대 휘도 및 대비비 계산(AA/AAA); 자동 레이아웃 린터; 4px/8px 토큰 그리드 감사기.
🔄 원자적 배치 실행:
stopOnFirstError또는continueOnError오류 복구를 사용한 명령 파이프라인의 순차적 실행.🚀 턴키 에이전트 스킬: 디자인 시스템 즉시 생성, WCAG 접근성 자동 수리, 와이어프레임에서 하이파이 카드 변환을 위한 사전 패키지된 복합 워크플로우.
📦 모노레포 구조
figma-agent-mcp/
├── apps/
│ ├── mcp-server/ # 49 MCP Tools + Bridge Client + Session Service
│ ├── bridge-server/ # High-throughput WebSocket router (ws)
│ └── figma-plugin/ # Pure TypeScript native Figma Plugin
├── packages/
│ ├── protocol/ # CommandEnvelope, CommandResult, Error codes, Zod schemas
│ ├── figma-schema/ # SimplifiedNode, Layout, Style, Text, Validation schemas
│ ├── command-engine/ # Batch execution pipeline, transactions, ref resolution
│ ├── context-compiler/ # Token optimizer, tree pruner, Markdown & DSL serializers
│ ├── design-system/ # 4px/8px Spacing, Typography & Corner Radius scale matchers
│ ├── validator/ # WCAG 2.1 contrast engine, Auto Layout & design token rules
│ ├── skill-runtime/ # Composite skills registry & execution engine
│ ├── telemetry/ # Percentile metrics collector (p50, p95, p99)
│ └── shared/ # Hex/RGBA converters, Pino logger, environment config
└── tests/
└── integration/ # 27 Vitest suites covering all phases & stress benchmarks🚀 빠른 시작 및 설정
1. 모노레포 빌드
git clone https://github.com/your-org/figma-agent-mcp.git
cd figma-agent-mcp
pnpm install
pnpm build2. 브리지 서버 시작
pnpm --filter @figma-agent/bridge-server start
# Bridge server listening at ws://127.0.0.1:30553. Figma 데스크탑에서 Figma 플러그인 로드
Figma 데스크탑을 엽니다.
플러그인 → 개발 → 매니페스트에서 플러그인 가져오기... 로 이동합니다.
apps/figma-plugin/manifest.json을 선택합니다.Figma Agent Bridge 플러그인을 실행합니다. 채널 ID(기본값
default-channel)를 기록해 둡니다.
⚙️ AI 클라이언트 설정
🤖 1. Claude Desktop
claude_desktop_config.json에 추가합니다 (Windows: %APPDATA%\Claude\claude_desktop_config.json, macOS: ~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"figma": {
"command": "node",
"args": ["d:/Code/Figma MCP/apps/mcp-server/dist/cli.js"],
"env": {
"FIGMA_AGENT_BRIDGE_HOST": "127.0.0.1",
"FIGMA_AGENT_BRIDGE_PORT": "3055",
"FIGMA_AGENT_CHANNEL_ID": "default-channel"
}
}
}
}💻 2. Cursor IDE
Cursor MCP 설정에 추가합니다 (설정 → 기능 → MCP 또는 .cursor/mcp.json):
{
"mcpServers": {
"figma-agent": {
"command": "node",
"args": ["d:/Code/Figma MCP/apps/mcp-server/dist/cli.js"],
"env": {
"FIGMA_AGENT_BRIDGE_HOST": "127.0.0.1",
"FIGMA_AGENT_BRIDGE_PORT": "3055",
"FIGMA_AGENT_CHANNEL_ID": "default-channel"
}
}
}
}🧠 3. Google Antigravity / Gemini CLI
Antigravity MCP 설정에 추가합니다 (~/.gemini/antigravity/mcp_config.json):
{
"mcpServers": {
"figma-agent": {
"command": "node",
"args": ["d:/Code/Figma MCP/apps/mcp-server/dist/cli.js"],
"env": {
"FIGMA_AGENT_BRIDGE_HOST": "127.0.0.1",
"FIGMA_AGENT_BRIDGE_PORT": "3055"
}
}
}
}⚡ 4. OpenAI Codex / Codex CLI / OpenAI Operator
Codex MCP 설정에 추가합니다 (~/.codex/config.json 또는 codex-settings.json):
{
"mcpServers": {
"figma-agent": {
"command": "node",
"args": ["d:/Code/Figma MCP/apps/mcp-server/dist/cli.js"],
"env": {
"FIGMA_AGENT_BRIDGE_HOST": "127.0.0.1",
"FIGMA_AGENT_BRIDGE_PORT": "3055",
"FIGMA_AGENT_CHANNEL_ID": "default-channel"
}
}
}
}또는 Codex CLI를 통해 등록합니다:
# Add Figma Agent MCP to Codex CLI
codex mcp add figma-agent -- node "d:/Code/Figma MCP/apps/mcp-server/dist/cli.js"
# Inspect available tools via MCP Inspector
npx @modelcontextprotocol/inspector node "d:/Code/Figma MCP/apps/mcp-server/dist/cli.js"🌊 5. Windsurf / Codeium IDE
~/.codeium/windsurf/mcp_config.json에 추가합니다:
{
"mcpServers": {
"figma-agent": {
"command": "node",
"args": ["d:/Code/Figma MCP/apps/mcp-server/dist/cli.js"],
"env": {
"FIGMA_AGENT_BRIDGE_HOST": "127.0.0.1",
"FIGMA_AGENT_BRIDGE_PORT": "3055",
"FIGMA_AGENT_CHANNEL_ID": "default-channel"
}
}
}
}📚 전체 MCP 도구 참조 (50개 도구)
50개의 MCP 도구는 모두 Zod 스키마를 통해 엄격하게 타입이 지정되며, 결정론적으로 실행되고, 강력한 실패 메타데이터를 제공합니다.
1. 연결 및 세션 관리 (4개 도구)
도구 이름 | 매개변수 | 설명 |
| 없음 | 현재 WebSocket 브리지 연결 상태, 지연 시간 및 세션 기능을 가져옵니다. |
|
| 특정 Figma 문서 채널 세션으로 전환하거나 참여합니다. |
2. 검사 및 읽기 (6개 도구)
도구 이름 | 매개변수 | 설명 |
|
| 제한된 깊이로 문서 루트 계층 구조를 검색합니다. |
|
| 활성 Figma 캔버스에서 현재 선택된 노드를 가져옵니다. |
|
| 특정 노드의 상세 속성과 하위 트리를 읽습니다. |
|
| ID로 여러 노드를 일괄 가져옵니다. |
| 없음 | 파일의 모든 재사용 가능한 컴포넌트와 변형을 나열합니다. |
|
| 로컬 페인트, 텍스트 및 효과 스타일을 나열합니다. |
3. 노드 생성 (4개 도구)
도구 이름 | 매개변수 | 설명 |
|
| 선택적 자동 레이아웃이 있는 컨테이너 프레임을 생성합니다. |
|
| 신뢰할 수 있는 글꼴 로딩으로 텍스트 노드를 생성합니다. |
|
| 사각형 벡터 노드를 생성합니다. |
|
| 섹션 구성 컨테이너를 생성합니다. |
4. 노드 변경 및 지오메트리 (6개 도구)
도구 이름 | 매개변수 | 설명 |
|
| 노드를 절대 좌표 위치로 이동합니다. |
|
| 노드 크기를 조정합니다. |
|
| 노드 레이어 제목을 변경합니다. |
|
| 캔버스에서 노드를 삭제합니다. |
|
| 기존 노드 계층을 복제합니다. |
|
| 레이어 트리에서 노드의 부모를 변경하고 순서를 재배열합니다. |
5. 자동 레이아웃 및 반응형 크기 조정 (2개 도구)
도구 이름 | 매개변수 | 설명 |
|
| 반응형 Flexbox 스타일의 자동 레이아웃을 구성합니다. |
|
| 컨테이너 및 자식 축 크기 조정 동작을 설정합니다. |
6. 시각적 스타일 및 효과 (5개 도구)
도구 이름 | 매개변수 | 설명 |
|
| 배경 색상, 그라데이션 및 이미지를 적용합니다. |
|
| 테두리 선, 두께 및 정렬을 적용합니다. |
|
| iOS 연속 스무딩으로 테두리 모서리 반경을 설정합니다. |
|
| 레이어 불투명도를 조정합니다. |
|
| 드롭 섀도우, 내부 섀도우 및 블러를 적용합니다. |
7. 컴포넌트 및 인스턴스 (5개 도구)
도구 이름 | 매개변수 | 설명 |
|
| 노드를 재사용 가능한 마스터 컴포넌트로 변환합니다. |
|
| 컴포넌트 변형을 인스턴스화합니다. |
|
| 컴포넌트 변형 속성을 재정의합니다. |
|
| 컴포넌트 인스턴스를 일반 편집 가능 프레임으로 분리합니다 (안전 보호). |
|
| 로컬 마스터 컴포넌트 및 변형 속성이 있는 컴포넌트 세트를 검색합니다. |
8. 변수 및 디자인 토큰 (6개 도구)
도구 이름 | 매개변수 | 설명 |
|
| 로컬 변수 및 토큰 컬렉션을 나열합니다. |
|
| 시맨틱 디자인 토큰 변수를 생성합니다. |
|
| 특정 모드에 대한 변수 값을 업데이트합니다. |
|
| 노드 속성을 디자인 토큰 변수에 바인딩합니다. |
|
| 파일에 공유 페인트 스타일을 생성합니다. |
(재사용된 검사) |
| 공유 스타일을 조회합니다. |
9. 에셋, 이미지 및 내보내기 (3개 도구)
도구 이름 | 매개변수 | 설명 |
|
| 노드를 Base64 이미지 데이터 또는 UTF-8 SVG 문자열로 내보냅니다. |
|
| 노드에 내보내기 프리셋을 구성합니다. |
|
| Base64에서 이미지 채우기를 업로드하고 적용합니다. |
10. 텍스트 및 타이포그래피 (6개 도구)
도구 이름 | 매개변수 | 설명 |
|
| 텍스트 문자열 콘텐츠를 업데이트합니다. |
|
| 글꼴 크기를 업데이트합니다 (전체 텍스트 또는 범위). |
|
| 자동 글꼴 로딩으로 글꼴 패밀리와 두께를 변경합니다. |
|
| 텍스트 정렬을 설정합니다. |
|
| 줄 높이 간격을 설정합니다. |
|
| 자간(트래킹)을 설정합니다. |
11. 컨텍스트 최적화 및 정리 (1개 도구)
도구 이름 | 매개변수 | 설명 |
|
| 토큰 예산 적용 및 간결한 DSL 표현으로 Figma 트리를 컴파일하고 압축합니다. |
12. 검증 및 접근성 (2개 도구)
도구 이름 | 매개변수 | 설명 |
|
| WCAG 2.1 대비, 자동 레이아웃 규칙, 토큰 스케일 및 레이어 명명 상태에 대한 노드 트리를 감사합니다. |
|
| WCAG 2.1 상대 휘도 및 대비비(AA/AAA)를 계산합니다. |
13. 복합 스킬 및 배치 실행 (3개 도구)
도구 이름 | 매개변수 | 설명 |
| 없음 | 사용 가능한 고급 에이전트 스킬을 검색합니다. |
|
| 다단계 복합 워크플로우를 실행합니다. |
|
| 여러 Figma 명령을 원자적 트랜잭션으로 실행하며, 심볼릭 참조 해결( |
14. 디자인 시스템 시맨틱 해석 (1개 도구)
도구 이름 | 매개변수 | 설명 |
|
| 사람의 의도(예: "primary button", "#6366F1", 16px)를 지각적 $\Delta E$ 거리 및 노드 토큰 감사를 통해 일치하는 컴포넌트/토큰으로 시맨틱하게 해석합니다. |
💡 예시: 1회 배치 호출로 계층적 UI 카드 구축
{
"transactionId": "tx-pricing-01",
"rollbackOnFailure": true,
"commands": [
{
"command": "figma.create_frame",
"ref": "card",
"payload": { "width": 360, "height": 480, "name": "Pricing Card" }
},
{
"command": "figma.create_text",
"ref": "title",
"parentRef": "card",
"payload": { "text": "Pro Plan", "font": { "family": "Inter", "style": "Bold", "size": 24 } }
},
{
"command": "figma.create_rectangle",
"ref": "btn",
"parentRef": "card",
"payload": { "width": 312, "height": 44, "cornerRadius": 8, "name": "CTA Button" }
},
{
"command": "figma.set_fills",
"nodeRef": "btn",
"payload": { "fills": [{ "type": "SOLID", "color": "#3B82F6" }] }
}
]
}반환값 refMap: { "card": "123:456", "title": "123:457", "btn": "123:458" }.
🤖 복합 에이전트 스킬
1. skill.create_design_system
몇 초 만에 턴키 디자인 시스템을 생성합니다:
변수 컬렉션 생성: 색상 팔레트 및 토큰.
변수 생성:
color/primary,color/background,color/surface,color/text-primary.해당 페인트 스타일 생성.
자동 레이아웃, 모서리 반경 및 토큰 바인딩이 적용된 반응형
Button/Primary마스터 컴포넌트 생성.
2. skill.auto_fix_accessibility
대상 레이아웃 계층 구조에서 WCAG 2.1 대비 위반 사항을 감사하고, 배경 표면에 대해 대비가 낮은 텍스트 색상을 자동으로 수정하여 AA 준수를 달성합니다.
3. skill.convert_wireframe_to_hifi
저해상도 와이어프레임 컨테이너를 자동 레이아웃, 현대적인 표면 채우기, 부드러운 그림자 및 연속 모서리 스무딩이 적용된 세련된 고해상도 UI 카드로 변환합니다.
🧪 테스트 및 검증
포괄적인 테스트 스위트 실행 (27개 테스트 파일에서 115개 통과 테스트):
# Run format checking
pnpm format:check
# Run full build
pnpm build
# Run unit and integration tests
pnpm test
# Strict TypeScript typechecking
pnpm typecheck
# ESLint audit
pnpm lint벤치마크 결과:
⚡ WebSocket 동시성: 버스트 하트비트가 있는 50개의 동시 클라이언트 연결: p95 < 100ms, 드롭아웃 0.
🌳 대규모 트리 확장: 1,000 토큰 예산으로 6,111개 노드의 컨텍스트 컴파일: < 100ms 실행 시간, 벤치마크 시나리오에서 70% 이상 컨텍스트 감소.
🛡️ 내결함성: 소켓 드롭아웃 시
retryable플래그를 사용한 자동 재연결 및 오류 처리.
📄 라이선스
MIT © 2026 Figma Agent MCP Contributors
This server cannot be deployed
Maintenance
Related MCP Connectors
The Figma MCP server brings Figma design context directly into your AI workflow.
MCP server for AI agents to plan, verify, and deploy Cloudflare-native apps.
Nifty's MCP server — exposes tasks, projects, messages, and files as tools for AI agents.
MCP server connecting AI agents to 100+ apps (Gmail, Slack, Notion, GitHub) via one-click OAuth.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceAn MCP server that enables AI assistants to interact with Figma designs for tasks like reading document info, creating elements, and managing auto layouts. It facilitates real-time design automation via a custom Figma plugin and WebSocket server integration.1,129 npmMIT
- AlicenseNot gradedqualityDmaintenanceMCP server that connects AI clients to Figma, enabling real-time reading, creation, and modification of designs using natural language.MIT
- AlicenseAqualityDmaintenanceLocal-first MCP server that connects AI coding agents to the currently open Figma file through a local plugin bridge, requiring no Figma API token.8MIT
- AlicenseBqualityCmaintenanceLocal MCP server connecting AI clients to the Figma desktop app for inspecting and editing Figma documents via the Plugin API.1616 npm1MIT