figma-web-capture
Skill7 starsChanged 4 months agoMITView on GitHub
Figma web capture workflow - import live webpages or DOM elements into editable Figma layers with the public html-to-design capture.js bookmarklet
In this repository95 other files it gives its agents.
- AGENTS.mdAGENTS.md
- accessibility-auditSkill
- agent-memory-profilesSkill
- agent-messaging-gatewaySkill
- agent-session-checkpointsSkill
- agent-skill-migrationSkill
- ai-interaction-designSkill
- animation-craftSkill
- animation-vocabularySkill
- apple-designSkill
- apple-desktop-automationSkill
- approval-sandbox-policiesSkill
- atomic-designSkill
- better-colorsSkill
- better-typographySkill
- better-uiSkill
- browser-research-agentSkill
- codex-opsSkill
- competitive-intelSkill
- component-catalogSkill
- content-designSkill
- creative-rendering-auditSkill
- cron-agent-workflowsSkill
- dashboard-from-researchSkill
- data-synthesisSkill
- design-extractSkill
- design-measurement-and-experimentationSkill
- design-sandbox-proofSkill
- design-system-referenceSkill
- design-systemsSkill
- design-to-code-handoffSkill
- dialkitSkill
- docker-environmentsSkill
- emil-design-engSkill
- figma-auditSkill
- figma-code-connectSkill
- figma-create-fileSkill
- figma-design-systemsSkill
- figma-ds-rulesSkill
- figma-generate-designSkill
- figma-generate-librarySkill
- figma-implement-designSkill
- figma-library-builderSkill
- figma-plugin-apiSkill
- figma-prototypeSkill
- figma-syncSkill
- figma-useSkill
- find-animation-opportunitiesSkill
- flutter-genSkill
- gateway-ops-observabilitySkill
- hermes-agent-bridgeSkill
- hyperframes-videoSkill
- improve-animationsSkill
- information-architectureSkill
- interaction-designSkill
- interface-craft-gateSkill
- interview-researchSkill
- ios-app-intentsSkill
- ios-performance-debuggingSkill
- linear-syncSkill
- The first 60 shown.
The file
We split this skill into the rules it gives an agent
6 rules. About 0 are common, 4 are distinctive, and 2 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈4
Distinctive · estimate
This author's own choices. Worth a look.
2
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 8
Use this when a user wants to bring a webpage into Figma as editable layers instead of a screenshot.
- Distinctive: line 36
Wait for fonts, images, and lazy-loaded content to finish rendering.
- Very specific: line 38
Run the bookmarklet or injected script that loads capture.js.
- Very specific: line 41
If you only need part of the page, use Select element before copying.
- Distinctive: line 47
Keep one capture per page or frame so imported layers stay organized.
- Distinctive: line 75
Only run the bookmarklet on pages you trust, because it injects remote JavaScript into the page.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Figma Web Capture
Use this when a user wants to bring a webpage into Figma as editable layers instead of a screenshot.
This is a practical workflow built on Figma's public html-to-design
capture asset. Treat it as an unofficial bookmarklet path, not as a guaranteed
product surface. Re-check the script URL if Figma changes the flow.
What It Does
- Loads Figma's public
capture.jshelper into the current page. - Serializes the rendered DOM into Figma layers.
- Copies the capture to the clipboard so it can be pasted into any open Figma file.
- Supports capturing the full viewport or a selected element.
Public Script
The capture helper lives at:
https://mcp.figma.com/mcp/html-to-design/capture.js
Load that script into the page, then use the capture toolbar to copy the result to the clipboard.
As of March 27, 2026, this public URL returns HTTP 200.
Recommended Workflow
- Open the target page in a desktop browser.
- Wait for fonts, images, and lazy-loaded content to finish rendering.
- Scroll to the exact section you want to capture.
- Run the bookmarklet or injected script that loads
capture.js. - In the toolbar, choose
Copy to clipboard. - Switch to Figma and paste into a dedicated scratch frame or page.
- If you only need part of the page, use
Select elementbefore copying.
Safe Positioning
- Capture the smallest stable container that still includes the content you need.
- Paste into a scratch frame first, then move pieces into the final canvas.
- Keep one capture per page or frame so imported layers stay organized.
- Capture after scrolling into the intended viewport, not before.
Example Bookmarklet
javascript:(function(){var s=document.createElement('script');s.src='https://mcp.figma.com/mcp/html-to-design/capture.js';document.head.appendChild(s);setTimeout(function(){window.location.hash='figmacapture&figmadelay=1000';var s2=document.createElement('script');s2.src='https://mcp.figma.com/mcp/html-to-design/capture.js';document.head.appendChild(s2);},500);})();When To Prefer It
- Fast visual reverse-engineering from a live site into Figma.
- Pulling one viewport or one component into a scratch page for redesign.
- Capturing authenticated or in-progress UI that already renders correctly in the browser.
When Not To Use It
- Sites with strict CSP that block injected scripts.
- Cases where you need semantic code, reusable tokens, or a live sync instead of a one-time capture.
- Mobile-browser workflows, since
javascript:bookmarklets are commonly blocked there.
Caveats
- Strict CSP sites can block external scripts, which prevents the toolbar from appearing.
- Mobile browsers usually block
javascript:bookmarklets. - Auth-gated pages capture what your current browser session can see.
- Lazy-loaded content must be visible before capture.
- The result is editable layers, but it is still a DOM capture, not live code.
- Only run the bookmarklet on pages you trust, because it injects remote JavaScript into the page.
- This is a public Figma-hosted script, but it is still an implementation detail and could change without notice.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

