seed-verify-figma-mcp-transports
Figma MCP 도구 변경 뒤 REST와 WebSocket 결과를 실제로 비교해 transport parity를 검증할 때 사용한다.
Skill by daangn
Chalk Labs
Need help deploying seed-verify-figma-mcp-transports?
Chalk Labs sets up agents like this inside real teams: connected to your tools, tested on your data, with a human in the loop where it matters.
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/daangn-seed-verify-figma-mcp-transports
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: design, backend, agent-building, testing, api-integration
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/seed-verify-figma-mcp-transports
What's inside
- Skill name
seed-verify-figma-mcp-transports- Description
- Figma MCP 도구 변경 뒤 REST와 WebSocket 결과를 실제로 비교해 transport parity를 검증할 때 사용한다.
- License
- Apache-2.0
- Instructions
- 159 lines in SKILL.md · view on GitHub
Files (1)
- SKILL.md
SKILL.md (first lines)
# Verify Figma MCP Transports
A Figma MCP tool answers the same question over two paths: **REST** (personal access token) and **WebSocket** (the Figma plugin). Fixing one and not the other still typechecks, so the drift is silent. Run both and compare mechanically.
두 경로의 구현 차이가 판단에 필요할 때만 `packages/mcp/AGENTS.md`를 읽는다.
> [!IMPORTANT]
> Run this skill **on the main thread**. Phase 3 is a hard stop that waits on a person, and a subagent has nobody to ask — it will pass itself.
## Prerequisites
- `FIGMA_PERSONAL_ACCESS_TOKEN` is set. If not, stop at Phase 0 and ask for it.
- The Figma desktop app is installed.
- The tool under test is registered in `PROBES` in the probe script. If it isn't, register it first — see the header comment in that file.
## Phase 0: Decide what to inspect
Both transports need a target, so this comes before any probing — REST in Phase 1 already needs it.
**검증 기준은 변경 diff에서 스스로 도출한다.** 사용자가 이미 조건을 만족하는 layer URL을 제공했으면 그대로 사용한다. 그렇지 않으면 특정 node가 아니라 필요한 layer 형태를 설명해 URL을 요청한다. "A frame containing a layer with two or more annotations, and a text layer with none"은 답할 수 있지만, "Give me a layer URL"은 검증 설계를 사용자에게 넘긴다.
Start from this checklist and cut what your change doesn't touch:
| Cover | Why |
|---|---|
| The queried node itself carrying a value | Catches a traversal that skips its own root |
| A descendant carrying a value | The recursive collection path |
| A leaf (no `children`) | Whether a non-container node throws |
| A page (`CANVAS` / `PAGE`) | The plugin-only `loadAsync` path, plus the type-vocabulary difference |
| A node inside a component instance | IDs composed as `I<a>;<b>;<c>` |
The last two apply to every tool. The rest apply only when the tool walks a tree.
Ask with **AskUserQuestion**, and ask for a **layer URL** — `parseFigmaUrl` takes the file key and node id straight out of it, so nobody has to read ids off a canvas.
If the same file gets reused across runs, put its key in `SEED_MCP_PROBE_FILE_KEY` and pass only `--node-id` afterwards.
## Phase 1: REST alone (no person needed)
REST needs nothing but the token, so **finish it without asking anyone.**
```bash
bun packages/mcp/scripts/probe-transports.ts \
--probe <tool> \
--transport rest \
--file-key <key> \
--node-id <id>
```
- The script calls the same helper the tool handler calls. Never reach past it to the REST API directly — that tests Figma, not the tool.
- If this fails, do not move on to WebSocket prep. Calling a person in to help debug a broken REST path spends their time on your bug.
## Phase 2: Prepare WebSocket (up to the human boundary)
Build everything that does not need a person, so the person is interrupted exactly once.
1. Build the plugin. Editing the source without rebuilding leaves Figma reading the old `dist`.
```bash
bun --filter figma-mcp build
```
2. Start the relay in the background (`Bash` with `run_in_background: true`).
```bash
bun packages/mcp/bin/index.mjs socket
```
Wait for `WebSocket server running on port 3055`. If the port is already held, ask whether to reuse that process — never kill something you did not start.
## Phase 3: Hand off (hard stop)
Only a person can drive the Figma desktop app. There is no way around this step.
**Before asking, confirm all of these.** If any is false, go back to Phase 2 — the person gets called once.
- [ ] `tools/figma-mcp/dist` was just rebuilt
- [ ] The relay is listening on 3055
- [ ] Phase 1 passed
Then ask with **AskUserQuestion**. Do not write the question into chat and continue — that is not a stop.
Spell out what to do and why each step matters; without the reason people skip the reload. Refer to the file by the key Phase 1 actually used. If they open a different file the two transports answer about different documents, and that difference gets reported as a code bug.
```text
WebSocket side is ready. Two things in Figma:
1. Quit the plugin and run it again — dist was just rebuilt, and a running
instance keeps answering with the old code.
2. Open the file from Phase 1 (<key>) and hit Connect in the plugin.
Port 3055, channel is fixed to local-default, so there is nothing to type.
```
Offer three options:
| Option | Next |
|---|---|
| `Ready` | Phase 4 |
| `Show me how to reload the plugin` | Explain, then ask again |
| `Stop` | Clean up the relay, report Phase 1 only |
## Phase 4: Probe and compare
1. **Do not take "ready" at face value.** Check the relay log for `New client connected` first. If it is missing, ask again rather than probing into a void — an unconnected run yields a 30-second timeout that reads like a plugin bug.
2. Run both and diff:
```bash
bun packages/mcp/scripts/probe-transports.ts \
--probe <tool> \
--transport both \
--file-key <key> \
--node-id <id>
```
3. **The exit code decides whether anything differs — not whether it is a bug.** Do not read the output and conclude it "looks the same"; 0 means the transports agree on every compared field. A 1 prints the disagreement, which you then classify with the table below before calling it a bug.
4. Run every node you chose in Phase 0. One passing node is not a pass.From daangn/seed-design, Apache-2.0.
More from daangn/seed-design
- 0.821score
seed-component
daangn
SEED 컴포넌트의 경로 조회·React·Lynx API 비교, 신규·포팅·기존 구현 변경, React·Lynx 문서·예제 작성, 또는 컴포넌트와 무관한 색상 토큰의 지도·WCAG 대비 조사를 할 때 사용한다.
SkillAFreshness: A★ 1.2KClaude Code +9 - 0.821score
seed-change
daangn
SEED 변경의 영향·검증·기준 브랜치를 판단하거나, 공개 패키지 changeset을 작성하거나, 명시적으로 요청받은 rebase·commit·push·PR 제출을 할 때 사용한다.
SkillAFreshness: A★ 1.2KClaude Code +9 - 0.821score
seed-design
daangn
SEED Design을 사용하는 프로젝트의 공식 문서·CLI 안내나 설치·업그레이드 진단이 필요할 때 사용한다.
SkillAFreshness: A★ 1.2KClaude Code +9 - 0.818score
chromatic-diff
daangn
Chromatic snapshot 변경의 원인, 실제 회귀 또는 flaky 여부를 조사할 때 사용한다.
SkillAFreshness: A★ 1.2KClaude Code +9 - 0.818score
seed-orchestrate-component
daangn
SEED 컴포넌트 작업을 여러 에이전트로 나누거나 레이어 사이의 구현 계약과 검증을 조율할 때 사용한다.
SkillAFreshness: A★ 1.2KClaude Code +9 - 0.818score
seed-migrate-component-docs-from-figma
daangn
Figma 문서 레이어에서 SEED 컴포넌트 가이드 MDX와 이미지를 만들거나 갱신할 때 사용한다.
SkillAFreshness: A★ 1.2KClaude Code +9 - 0.818score
seed-verify-lynx-component
daangn
Lynx 컴포넌트의 문서·예제·런타임 결과를 환경별로 검증할 때 사용한다.
SkillAFreshness: A★ 1.2KClaude Code +9 - 0.818score
seed-snapshot-release
daangn
PR snapshot release를 trigger하거나 결과를 확인할 때 사용한다.
SkillAFreshness: A★ 1.2KClaude Code +9 - 0.816score
seed-deprecation
daangn
SEED 컴포넌트·API·토큰의 사용 중단 선언, 마이그레이션 안내 또는 예정된 제거를 처리할 때 사용한다.
SkillAFreshness: A★ 1.2KClaude Code +9 - 0.812score
seed-dev-figma-v3-migration-plugin
daangn
Figma V3 migration 매핑·메타데이터 변환을 수정할 때 사용한다.
SkillAFreshness: A★ 1.2KClaude Code +9 - 0.594score
structure-mapper
daangn
Subagent "structure-mapper" from daangn/seed-design: SEED Design 모노레포 구조 매핑 에이전트.
TemplateAFreshness: A★ 1.2KClaude Code - 0.594score
AGENTS.md · daangn/seed-design
daangn
AGENTS.md from daangn/seed-design: 78 lines covering 시작, 검증, 생성, 경계 and more.
TemplateAFreshness: A★ 1.2KCodex +5
Compare and alternatives
Featured in
Signals
- Stars
- 1,183
- Forks
- 98
- Open issues
- 4
- Last commit (this folder)
- Sep 7, 2026 (1 month ago)
- Last release
- Oct 22, 2026 (9 days ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- Apache-2.0
- Repository
- github.com/daangn/seed-design
- Website
- seed-design.io
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from daangn
- 0.821score
seed-design
daangn
SEED Design을 사용하는 프로젝트의 공식 문서·CLI 안내나 설치·업그레이드 진단이 필요할 때 사용한다.
SkillAFreshness: A★ 1.2KClaude Code +9 - 0.821score
seed-change
daangn
SEED 변경의 영향·검증·기준 브랜치를 판단하거나, 공개 패키지 changeset을 작성하거나, 명시적으로 요청받은 rebase·commit·push·PR 제출을 할 때 사용한다.
SkillAFreshness: A★ 1.2KClaude Code +9 - 0.821score
seed-component
daangn
SEED 컴포넌트의 경로 조회·React·Lynx API 비교, 신규·포팅·기존 구현 변경, React·Lynx 문서·예제 작성, 또는 컴포넌트와 무관한 색상 토큰의 지도·WCAG 대비 조사를 할 때 사용한다.
SkillAFreshness: A★ 1.2KClaude Code +9 - 0.818score
seed-verify-lynx-component
daangn
Lynx 컴포넌트의 문서·예제·런타임 결과를 환경별로 검증할 때 사용한다.
SkillAFreshness: A★ 1.2KClaude Code +9 - 0.818score
seed-snapshot-release
daangn
PR snapshot release를 trigger하거나 결과를 확인할 때 사용한다.
SkillAFreshness: A★ 1.2KClaude Code +9 - 0.818score
seed-orchestrate-component
daangn
SEED 컴포넌트 작업을 여러 에이전트로 나누거나 레이어 사이의 구현 계약과 검증을 조율할 때 사용한다.
SkillAFreshness: A★ 1.2KClaude Code +9
Done for you
Rather not set it up yourself?
Chalk Labs scopes, builds and runs agents for your team: the task audit, the eval harness, the integrations and the weekly ops report. Fixed scope, priced before we start.
See how we build AI agents →Read the case studies
Chalk Labs is a two-founder AI and growth studio. We build AI agents, CRMs and MVPs for Web3 and AI companies, and have shipped 50+ product and token launches.
- launches shipped
- 50+
- launches shipped
- media placements
- 500+
- media placements
- founders on every account
- 2
- founders on every account
Press we've placed: Forbes · CoinDesk · Decrypt · Cointelegraph · The Block
Rahil Jain, Co-founder, Chalk Labs. Ex-Goldman Sachs engineer. You talk to the person who builds it.
Get seed-verify-figma-mcp-transports running in your business
Tell us what you want to automate. A founder replies within one working day with a plan, not a pitch deck.
Cite this page
seed-verify-figma-mcp-transports skill. Agent Mart. https://agentmart.dev/skills/daangn-seed-verify-figma-mcp-transports (last updated 2026-10-24)