PlugWiki
Dembrandt logo

Dembrandt MCP Server: Extract Design Tokens from Any Website

CommunityLocal
Getnpmdembrandtdembrandt/dembrandt

Lets Claude and Cursor read the colours, fonts and spacing of any website and turn them into design tokens, a DESIGN.md or a Tailwind theme.

Dembrandt's MCP server lets Claude, Cursor and other assistants open a live website and pull out its colours, fonts, spacing and component styles as design tokens. It is the Dembrandt project's own server and runs on your computer. You need to download a browser once with the project's install-browser step before the first extraction. It cannot be used from web-only assistants like ChatGPT or Claude.ai because it needs a local process.

Good for

  • Designers who want a site's real colours and type pulled out fast
  • Frontend developers who want a Tailwind or shadcn theme from an existing site
  • Teams that check whether their UI drifted from the brand
  • Accessibility reviewers who need contrast checks

Works in

12 should work

Tap an app to see how to set it up and any known problems.

Install Dembrandt MCP

Claude Code

  1. 1

    Copy this prompt.

    Add the Dembrandt MCP server to Claude Code. Run this command:
    
    claude mcp add dembrandt -- npx -y dembrandt mcp
    
    Then check that it loaded and tell me if I need to sign in or restart.
  2. 2

    Paste it into Claude Code. It shows the change and asks before running it.

Requires Node.js.

Run npx dembrandt install-browser once before the first use, or extraction fails with "browser engine not available". Restart the app after adding the server.

Built from the package data we hold. Not yet tested by us.

Tools

  • Pulls a site's whole design system

    Opens the site in a real browser and returns its colours, fonts, spacing, corner radii, shadows, button and input styles, breakpoints and logos. Set it to crawl several pages for a fuller result. It returns a job ID to check later.

    Try: “Extract the design tokens from stripe.com.”

    Network · get_design_tokens

  • Pulls a site's brand colours

    Returns the main brand colours, a ranked full palette with confidence levels, CSS variables and hover colours, each in hex, RGB, LCH and OKLCH.

    Try: “What are the brand colours on linear.app?”

    Network · get_color_palette

  • Pulls a site's fonts and type scale

    Returns each font family with its fallbacks, the type scale for headings, body, buttons and links, plus where the fonts load from.

    Try: “Which fonts does notion.so use and at what sizes?”

    Network · get_typography

  • Pulls button, input and link styles

    Returns button variants with hover, active and focus states, input field styles, link styles and badge styles.

    Try: “Show how buttons look and behave on vercel.com.”

    Network · get_component_styles

  • Pulls corner radii, borders and shadows

    Returns border radii by element type, border patterns and box shadow levels used on the site.

    Try: “What corner radii and shadows does github.com use?”

    Network · get_surfaces

  • Pulls a site's spacing system

    Returns the most common margin and padding values and detects whether the site uses a 4px, 8px or custom grid.

    Try: “Is figma.com built on an 8px grid?”

    Network · get_spacing

  • Pulls animation timing and easing

    Returns transition and animation durations, easing curves, named keyframes, hover patterns and gradients used on the site.

    Try: “How long are the hover transitions on apple.com?”

    Network · get_motion

  • Pulls logo, icons and tech stack

    Returns the site name, logo, favicon variants, the frameworks and libraries behind the UI, icon systems and breakpoints.

    Try: “What is shopify.com built with, and what is its logo?”

    Network · get_brand_identity

  • Scores how far a design moved from a baseline

    Compares two extractions and returns a 0 to 100 drift score, a stable or drift verdict and the list of changed, added and removed tokens. It runs without a browser.

    Try: “Compare today's extraction of our site to last month's and give a drift score.”

    Read · compute_drift

  • Builds an HTML design report

    Creates a self-contained HTML report from an extraction, with an optional drift comparison. It returns the HTML as text for you to save.

    Try: “Make an HTML report of the extraction and save it as report.html.”

    Read · render_report

  • Checks a design for quality problems

    Lints an extraction for contrast failures, near-duplicate colours, off-scale spacing and radius sprawl, and returns each issue with a severity.

    Try: “Lint the extracted design for accessibility and consistency issues.”

    Read · get_findings

  • Exports W3C design tokens

    Converts an extraction to the W3C Design Tokens format, ready for Style Dictionary or Figma token plugins.

    Try: “Export the extracted tokens as a DTCG tokens file.”

    Read · export_dtcg

Read from the source code

Permissions

medium risk · 4 things to watch

Medium risk

It opens websites in a headless browser on your machine and, if you give it cookies or logins, can use them on the sites you point it at. Only pass cookies or credentials you are happy for the assistant to handle.

What it can do

  • Read your data
  • Create and change things
  • Delete things
  • Read-only mode

Watch out for

  • It runs a real browser against any URL

    The extraction tools launch Chromium and load whatever address you give them, including local network addresses. Point it only at sites you mean to inspect. github.com

  • Cookies and logins can be passed to it

    The tools accept cookies, a cookie file, headers and basic-auth credentials. Anything you paste goes through the chat, so use short-lived sessions. github.com

  • An optional API key is documented to upload results

    docs/mcp.md says DEMBRANDT_KEY uploads each extraction to your dembrandt.com account. The MCP server source has no upload code (only the command-line tool reads the key), so we could not confirm this. Leave the key unset to keep results local. github.com

  • It respects robots.txt only as a warning by default

    The server checks robots.txt but only refuses a site when DEMBRANDT_ENFORCE_ROBOTS=1 is set. Check the site's terms before extracting. github.com

Security advisories

No published security advisories as of Nov 1, 2026.

Technical details
Turning on read-onlyNo read-only switch is documented. The tools do not write files themselves; they return results for the assistant to save.
Talks toAny website you ask it to extract. dembrandt.com only if you set the documented DEMBRANDT_KEY (unconfirmed in source)
Sign-in and keysNo account needed. The docs list an optional DEMBRANDT_KEY for snapshot uploads, which we could not confirm in the MCP server source. Cookies, headers and basic-auth logins are passed per call.

Questions

Who makes this server?

The Dembrandt project itself. It ships inside the project's own repository and is listed in the MCP Registry as io.github.dembrandt/dembrandt.

Do I need an account or API key?

No. Extraction works with no account or key. The docs list an optional DEMBRANDT_KEY from dembrandt.com that is said to upload each extraction as a snapshot, but we found no upload code in the MCP server source, so treat that as unconfirmed.

Why does it say "browser engine not available"?

The package ships no browser. Run the project's install-browser step once, as noted in the install box, then restart your app.

Does it work in ChatGPT or Claude.ai?

No. The docs say web assistants without a local process, including ChatGPT, Perplexity and Claude.ai, cannot connect to it. Use Claude Code, Claude Desktop, Cursor, Windsurf, VS Code or Codex.

Can it read sites behind a login?

Yes. The tools accept cookies, a cookie file, headers and basic-auth details. The interactive login mode is available only in the command line tool, not through the MCP server.

Can it export to Tailwind or Figma?

Yes. It can write a Tailwind v4 theme, a shadcn/ui theme, W3C design tokens (for Style Dictionary and Figma token plugins) and a DESIGN.md file.

Is it free?

Yes, the package is MIT licensed and extraction runs locally. The docs mention an optional dembrandt.com account for snapshots, which you do not need.

Information

updated Nov 2, 2026

Publisher
Community
Package
dembrandt
Registry
npm
Transport
stdio
Auth
None
Version
0.39.2
License
MIT
Last commit
Oct 22, 2026
Open issues
0
Listed in
Official MCP registry

WebsiteGitHubnpmOfficial MCP RegistryChangelogIssues

Sources

Docs, issue trackers and discussions this page is built from. Issues, quotes and findings above link to their own source.

Show all 3
  1. MCP server docs · github.com
  2. README · github.com
  3. mcp-server.ts · github.com

Facts from the official MCP registry, GitHub, npm, PyPI and the Docker catalog. Updated Nov 2, 2026.