saglitzdesign-mcp
The SaglitzDesign MCP server is an expert design & marketing knowledge server that gives AI agents prescriptive, sourced guidance on web, iOS, Android, and macOS design — plus UX, copywriting, SEO, GEO, and marketing best practices.
Browse & Search the Knowledge Base: Explore and search 57 curated documents across design languages, components, UX, SEO, GEO, craft, books, process, and marketing — filterable by category or platform.
Fetch Full Documents: Retrieve any knowledge document in full by ID for deep reference.
Component Guidance: Expert specs, states, labels, and anti-patterns for UI components and screens (buttons, forms, paywalls, hero sections, pricing, onboarding, dashboards, etc.).
Design Language References: Full references for Material 3, Apple HIG / Liquid Glass (iOS 26), iOS/Android/macOS app design guides, Fluent 2, 2026 web trends, and design tokens/theming architecture.
Design Roadmaps: Phased, step-by-step expert processes for any project type (website, landing page, iOS/Android/macOS app, SaaS web app) with phase goals, exit criteria, and recommended docs.
Design Review Checklists: Structured audit checklists for mobile apps, websites, landing pages, or dashboards — filterable by focus area (UI, UX, accessibility, SEO, GEO, conversion, or copywriting).
SEO & GEO Guides: Comprehensive guidance for technical/on-page SEO, Core Web Vitals, and Generative Engine Optimization (GEO) for ChatGPT, Perplexity, and Google AI Overviews.
Real-World Design Examples: Annotated screenshots from top apps and websites (Mobbin-curated) for patterns like paywalls, onboarding, auth, pricing, and more.
Generate Design Tokens: Produces ready-to-use CSS variables, Tailwind v4, SwiftUI, Jetpack Compose, and W3C DTCG JSON tokens from color/spacing/type specs.
Accessibility Audits: Deterministic WCAG 2.2 checks with exact contrast ratio calculations and tap-target size validation per platform, with specific fixes.
Knowledge Freshness Reports: Identifies which documents are outdated based on per-category staleness thresholds.
Build Workflows: Orchestrate end-to-end builds of landing pages, multi-page sites, and mobile app UIs with code generation and iterative visual critique loops.
Extensible: Add custom Markdown knowledge files under
knowledge/with frontmatter; the server indexes them automatically.
Provides expert-level guidance on Android app design, including Material 3, Android 16, and M3 Expressive specifications, with prescriptive rules for components, UX, and accessibility.
Offers deep iOS app-design guides covering Apple HIG, Liquid Glass (iOS 26), and platform-specific components, UX patterns, and accessibility standards.
Delivers macOS design guidance with Apple HIG, macOS-specific UI patterns, and platform-appropriate UX and accessibility rules.
Provides Generative Engine Optimization (GEO) strategies to improve visibility in Perplexity's AI search results, including llms.txt setup, citation tactics, and content optimization.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@saglitzdesign-mcp search for iOS button design guidelines"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
SaglitzDesign MCP
An expert design & marketing brain for your AI coding agent.
A Model Context Protocol server that gives Claude, Cursor, and any MCP client expert‑level guidance on web, iOS, Android and macOS design — plus the UX, copywriting, SEO, GEO and marketing knowledge that makes a product actually convert.
96 curated knowledge documents · 36 tools · 9 build/review/port workflows · MCP resources with id autocomplete · a one‑call design‑system builder · real token/color/type/elevation/motion/a11y generators · design & UX‑copy linters · production component recipes · phased roadmaps · real‑world visual examples
Why · What's inside · Tools · Resources · Install · Usage · Your own rules · Changelog · License
Why
LLMs are confidently wrong about design. They reach for defaults, invent outdated specs, and give generic "make it clean and modern" advice. SaglitzDesign replaces that with a curated, sourced, prescriptive knowledge base your agent can query on demand — the kind of guidance you'd get from a senior product designer, a conversion copywriter, and a technical SEO all at once.
Ask your agent to design a paywall, audit a landing page, or plan an iOS app, and it pulls concrete rules ("44pt minimum touch target", "one primary button per screen", "LCP ≤ 2.5s"), real patterns from top apps, and a phased roadmap — instead of guessing.
Runtime‑independent. The server reads only local files. No external API, no account, nothing to configure. It just works, offline.
Local by design. It speaks MCP over stdio only and runs as a child process of your MCP client. There is no HTTP or SSE transport, so it cannot be hosted remotely or reached over a network — which is also why your prompts and code never leave your machine.
Prescriptive, not vague. Every doc is written as rules an agent applies verbatim — numbers, thresholds, do/don't lists, anti‑patterns.
Grounded. Design‑language specs from official sources; patterns studied from real top apps and sites; classics distilled from the actual books.
Related MCP server: Vibe Design Guide MCP Server
What's inside
96 knowledge documents across 11 categories:
Category | Coverage |
🎨 Design languages | Material 3 & M3 Expressive · Apple HIG + Liquid Glass (iOS 26) · deep iOS, Android (Android 16 / M3 Expressive) and macOS app‑design guides · Apple accessibility (Dynamic Type, VoiceOver, hit regions) and Apple shipping readiness ( |
🧩 Components | Buttons (hierarchy, sizing, states, labels) · forms & inputs · navigation · cards / lists / modals / sheets / empty states |
🧠 UX | Nielsen heuristics & behavioral laws · accessibility (WCAG 2.2) · typography · color & dark mode · spacing & grids · motion · mobile UX · conversion / CRO · data visualization · information architecture · i18n / localization (RTL) · AI product UX (chat, streaming, agentic) · onboarding & permission priming |
✨ Craft | Expert polish standards · typographic craft · animation craft (easing, springs, interruptibility) · UX writing & cognitive load · 0–40 critique rubric · clean/minimal app design · design‑engineering (semantic HTML, CSS architecture, tokens‑in‑code) · ethical design (avoiding dark patterns) · iconography (choosing & using an icon system) · the AI‑default aesthetic (the stock gradient, font, card chrome and copy generated interfaces reach for, cited to each system's own docs) |
📚 Books | Distilled classics — design: Norman, Krug, Refactoring UI, psychology of design, grid/typography, interaction design (Cooper/Tidwell), emotional design (Walter/Norman) · marketing: Cialdini, Positioning, StoryBrand + Ogilvy, Hooked |
🗺️ Process | Product‑design & marketing‑website roadmaps · design‑systems methodology (Atomic Design, component API, governance) · design handoff (Figma Dev Mode, Code Connect, design↔dev) |
📣 Marketing | Branding & identity · email marketing · HTML email development (Outlook, dark mode, bulletproof) · ad creative · paywall benchmarks (RevenueCat 2026) · growth frameworks (loops/AARRR/PLG) · pricing strategy · analytics & experimentation · value proposition & JTBD · content & distribution (topic clusters, community, referral) · App Store Optimization (ASO) |
🔎 SEO | Technical SEO (Core Web Vitals) · on‑page & E‑E‑A‑T · SEO for designers |
🤖 GEO | Generative Engine Optimization — visibility in ChatGPT / Perplexity / AI Overviews, llms.txt, citation tactics |
🔐 Security | Web security headers & CSP — strict nonce/hash policies, |
🖼️ Patterns & examples | Real‑world patterns studied from top apps & sites (incl. e‑commerce & checkout and fintech / trust flows), plus a curated library of real‑world example screens |
Which documents' sources are enforced, and which are not. Of the 96
documents, 11 have their sources: checked by the test suite against a tiered
allowlist — the six Apple design‑language guides (apple-hig-liquid-glass,
ios-app-design, macos-app-design, apple-accessibility,
apple-shipping-readiness, wwdc-design-principles) and the five security
documents. The other 85 are curated but not yet checked, and extending the
assertion to them is its own piece of work rather than a formality: measured
today, 66 of the 85 would fail on 282 sources between them — 227 URL citations
across 133 distinct hosts, plus 55 that are not URLs at all and so have no
host to check. (The 227 and the 55 are the two halves of the 282, not two
figures to add.) Note
that apple-intelligence-design and visionos-spatial-design are Apple‑topic
documents that sit outside the enforced set. get_design_doc prints which
side of this line a document is on, next to its sources, so you never have to
come back here to find out.
Workflows (/ prompts) — "build me a…"
Beyond answering questions, SaglitzDesign ships prompts that orchestrate an
entire build end‑to‑end. In Claude Code they appear in the / menu under a name
that depends on how you installed it. Installed as the Claude Code plugin they
are /saglitzdesign:build_landing_page and so on — plugin commands, one
generated file per workflow in commands/. With the server installed on its own
they are /mcp__saglitzdesign__build_landing_page, which the menu labels
saglitzdesign:build_landing_page (MCP). That label is typeable too, (MCP)
suffix and all — it is just a clumsier way to reach the same prompt. What does
not work is that short form with the suffix dropped: Claude Code hands the bare
server:prompt alias to first‑party Anthropic connectors only — the URL has to
be https, on api.anthropic.com, under /v1/design/ — and no other server gets
one, stdio or remote. (The plugin's /saglitzdesign:build_landing_page above
only looks like that alias — it is a plugin command namespace, a different
mechanism.)
Invoke one and the agent runs the full method — roadmap → positioning & copy → generates
the design system (color, type, layout, elevation, tokens) → real examples →
writes the actual code from the component recipes → runs the deterministic
verify gate (design_lint, audit_accessibility, audit_design_system,
audit_ux_copy) → opens it in a browser, screenshots, scores it against the
critique rubric, and iterates until it passes.
Workflow | What it does |
| Designs & builds a conversion‑focused landing page, copy‑first, with a visual critique loop. |
| Builds a multi‑page marketing site — positioning, IA, SEO/GEO, shared design system. |
| Builds iOS or Android screens on the correct platform baseline (HIG/Liquid Glass or Material 3). |
| Builds a dense SaaS dashboard / app shell — navigation, tables, empty states — not a marketing page with KPI cards glued on. |
| Measures the screenshot, then critiques it against the fixed 0–40 rubric — cites real ratios and colour counts, specific elements, no padding. |
| Scores a paywall / subscription onboarding against real RevenueCat 2026 conversion benchmarks. |
| Audits an existing site/app — runs the deterministic auditors first, so findings lead with measured numbers, then the checklists and the 0–40 rubric, ranked by severity. |
| Improves an existing UI (bolder / quieter / higher‑converting) using the craft standards, with a measured before→after (consistency score, critique score, lint findings, contrast failures). |
| Takes an existing UI to another platform (iOS ↔ Android ↔ macOS ↔ web) surface by surface — porting the intent and IA, never the components. |
Just type, e.g.,
/saglitzdesign:build_landing_page a SaaS invoicing tool for freelancers— everything after the command name becomes the brief, and the workflow asks for anything missing, then builds it. The/mcp__saglitzdesign__…form takes only the first whitespace‑separated word as its brief, so use the plugin command whenever the brief is a phrase. These are yours to type: every command carriesdisable-model-invocation, so the agent never starts one on its own. Asked in prose it reaches for the skills instead, and they cover much of the same ground — design review, landing‑page conversion, Apple platforms — as guidance rather than as this orchestrated build. Thesaglitzdesignskill's own trigger vocabulary names paywalls, so prose about one does reach a skill; what no skill carries isreview_paywall's RevenueCat benchmark scoring, which runs only when you type it.The visual critique loop uses whatever browser tool is connected (Claude in Chrome, Playwright, or chrome‑devtools MCP) to see and refine its own output. Without one, it reviews the code directly.
Tools
Tool | What it does |
| The one‑call foundation. Brand color + vibe + platform → a direction card (named defaults to leave, the type pairing as a decision, one signature move, and a stock‑region fact if the seed sits in indigo/violet/purple) plus WCAG‑verified color (light+dark), matched fonts, an icon library, a modular type scale, an elevation ramp, ready‑to‑paste tokens, the components to build, and a checklist — all generated to work together. |
| Start here for process. A phased, expert process for a project type (website, landing page, iOS / Android / macOS app, SaaS web app) — each phase has a goal, exit criteria, and the exact docs to read. |
| Natural‑language search across everything, returning the most relevant section of the best‑matching docs. |
| Fetch any document in full by id. |
| Deep dive on a component or screen (button, form, paywall, hero, pricing…) — specs + real‑world patterns. |
| Full platform / design‑system references (Material 3, Liquid Glass, iOS/Android/macOS, Fluent 2, web trends, tokens). |
| Building on more than one platform? Side‑by‑side iOS / Android / macOS / web conventions for one surface (navigation, buttons, sheets, motion, forms…), plus the porting rules — and an explicit do NOT port list. |
| Curated real‑world examples of a pattern from top apps/sites, with notes on what each does well. (Screenshots are a local‑only asset — see Visual examples.) |
| An assembled audit checklist per project type and focus (UI, UX, accessibility, SEO, GEO, conversion, copywriting). |
| SEO and GEO guides, optionally narrowed to a topic. |
| Already have a design system? Paste your CSS custom properties, shadcn |
| Real artifacts, not advice — turns a color/spacing/type spec into CSS variables, Tailwind v4, SwiftUI, Jetpack Compose, and W3C DTCG JSON. |
| Deterministic WCAG 2.2 checks — exact contrast ratios for color pairs + tap‑target sizes per platform, with fixes. |
| Production‑ready, accessible reference code for a component (button, input, modal, toast, card, switch, tabs, empty‑state, list‑row, navigation, search, select, table, tooltip, form, pagination, skeleton, badge, breadcrumb) in react‑tailwind, html‑css, SwiftUI, or Compose — all states, ARIA, keyboard, correct motion. Pass your |
| One brand color → a full palette. A 50–950 tonal scale, a cohesive neutral ramp, status colors (danger / success / warning) harmonised with your brand, and light + dark semantic tokens — every text/UI pair WCAG‑verified and auto‑corrected. Feeds straight into |
| Curated, production font pairings for a vibe (SaaS, editorial, bold, native…) — heading + body (+ mono) with paste‑ready CSS stacks, weights, rationale, and a type scale. |
| Repairs a failing color pair: computes the nearest accessible color (hue/saturation preserved) that meets your WCAG target — the corrected value, not just a fail report. |
| Recommends the right icon system for a vibe/platform (Lucide, Phosphor, Solar, SF Symbols, Material Symbols…) — with license, install command, coverage, fit rationale, and usage rules. |
| A modular type scale (base × ratio) → named steps with line‑heights, tracking, and fluid |
| A cohesive layered box‑shadow ramp (flat→modal) as CSS variables + Tailwind, with dark‑mode guidance. |
| Breakpoints (with what changes at each), container widths, a column grid, an intrinsic auto‑fit grid, container queries, and a fluid section‑rhythm scale — CSS variables + Tailwind v4. |
| Easing + duration tokens and ready‑to‑paste keyframe animations (fade/slide/scale/spring/shimmer) in CSS, Framer Motion, or SwiftUI — reduced‑motion included. |
| Lints an HTML/CSS/JSX/Tailwind snippet for design & a11y anti‑patterns (hardcoded values, killed focus, missing alt/labels, clickable divs, unlabelled inputs…) with line numbers and fixes. Tag‑aware, so formatting never changes the verdict. Returns markdown plus structured output — findings, a severity summary, and a machine‑readable |
| Measures your actual screen. Give it a PNG and it reports the real palette and colour count, true WCAG contrast ratios for the pairs on screen, density, structural detections (alignment, rhythm, off‑grid gaps) each with a confidence level, and a stock‑region fact when a significant cluster sits in Tailwind indigo/violet/purple — plus a self‑contained HTML report you can open and share. Pure‑Node PNG decoding, no network, no dependencies. |
| Audits a real codebase, not a snippet. Point it at a directory: it walks your design source, lints every file, and scores the whole project for consistency — cross‑file drift being exactly what a single‑file lint cannot see. Findings ranked worst‑file‑first with file:line, plus an explicit list of what it did not look at. Returns markdown plus structured output — findings, a severity summary, a machine‑readable |
| Audits a web project or snippet for the defects that actually ship — missing or weak Content‑Security‑Policy, absent HSTS, unpinned cross‑origin scripts, mixed content, credentials in |
| Audits the SEO and GEO signals that are actually in your source — a missing |
| Audits the performance signals that are actually in your source — a hero image held back by |
| Audits an iOS or macOS app against Apple's own documentation. Point it at the Xcode project directory: it reads the four surfaces a project declares configuration on — the information property list, |
| Audits an Android app against Material 3 and android-app-design. Point it at the project or module directory: it reads |
| Is there actually a system here? Point it at real CSS/JSX and get a consistency score plus the sprawl behind it: how many distinct colors, sizes, radii, shadows and spacings are in use, which colors are indistinguishable duplicates, what's off the 4pt grid, token adoption — and a consolidation plan. |
| Audits for the specific defaults generated interfaces reach for — the stock Tailwind indigo/violet/purple gradient (as classes, hex, or OKLCH), Inter/Roboto/Open Sans/DM Sans/Plus Jakarta Sans as the only declared typeface on a brand surface, emoji standing in for icons, the |
| Objective copy audit — readability (Flesch), sentence length, passive voice, jargon, filler, user‑focus, weak CTAs — with flagged phrases and fixes. |
| Audits a pasted snippet for named deceptive-pattern tells from |
| Browse the full knowledge index by category / platform. |
| Reports each doc's age vs a per‑category staleness threshold, so the base can be kept current. |
Resources
Beyond tools, the knowledge base is exposed as MCP resources, so clients that
support them (Claude Desktop, Cursor) can @‑mention a document directly —
with id autocompletion — instead of spending a tool call:
URI | What it is |
| The whole index: every document by category, with platform and last‑verified date. |
| One knowledge document in full (96 of them). Autocompletes on |
| A component's spec plus its reference implementation in every available stack. |
Visual examples
get_design_examples serves a curated library of real app/site screens. The
screenshots themselves are third‑party assets and are not redistributed, so
the published npm package ships the annotations and source links without the
images — the tool detects this and says so rather than pretending otherwise. If
you clone the repo you can rebuild the local image library; see
scripts/regenerate-examples.md.
Install
Requirements: Node.js 20+.
From npm (no clone needed):
npx saglitzdesign-mcpFrom source:
git clone https://github.com/HalidSaglam/saglitzdesign-mcp.git
cd saglitzdesign-mcp
npm install
npm run buildClaude Code
Register it once (via npm — no clone), available in every project:
claude mcp add --scope user saglitzdesign -- npx -y saglitzdesign-mcpOr, if you cloned the repo, point it at the built file:
claude mcp add --scope user saglitzdesign node /absolute/path/to/saglitzdesign-mcp/dist/index.jsAs a plugin
One install brings all three pieces — the MCP server, all nine skills (the eight depth skills plus the umbrella that routes into them) and a slash command for every workflow:
claude plugin marketplace add HalidSaglam/saglitzdesign-mcp
claude plugin install saglitzdesign@saglitzThe plugin declares its server as npx -y saglitzdesign-mcp@latest, so the
server itself still comes from npm; the skills and the commands are files inside
the plugin. claude plugin details saglitzdesign@saglitz lists what arrived.
The three ways of installing do not carry the same payload:
Install | Server, knowledge base, recipes | Skills |
|
| yes | all nine — eight depth skills plus the umbrella | one per workflow |
| yes | — | — |
| — | all nine — eight depth skills plus the umbrella | — |
The npm package's files: list covers dist/, knowledge/ and recipes/, and
does not name skills/ or commands/ — so an MCP-only install has every tool
and every document and none of the skill or command files. The skills CLI is the
mirror image: it copies each SKILL.md into your agent and brings no server, so
the tools those skills point at are not there unless you also install one.
Cloning the repository gets the source of all of it — but not a runnable
server: dist/ is gitignored, so a clone needs npm install && npm run build
before node dist/index.js starts. Everything else in the table is a tracked
file and arrives with the clone.
Claude Desktop
Add to ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"saglitzdesign": {
"command": "npx",
"args": ["-y", "saglitzdesign-mcp"]
}
}
}Cursor / other MCP clients
Run npx -y saglitzdesign-mcp over stdio (or node /absolute/path/to/dist/index.js from a clone).
Requires Node 20 or newer. It also runs on Node 18 with a warning; below that the launcher exits with an explanation instead of a syntax error.
Your client launches the server — you don't start it yourself. Run by hand it will print its status and then wait on standard input for a client that never arrives, which looks like a hang but is the server working correctly.
As skills (no MCP server)
Prefer lightweight, self-contained skills? Install the condensed SaglitzDesign skills into any skills-compatible agent:
npx skills@latest add HalidSaglam/saglitzdesign-mcpNine skills. saglitzdesign is the umbrella: it carries no depth guidance
of its own, and routes the work into whichever of the other eight fits. Those
eight — clean-interface-design, landing-page-conversion, design-review,
motion-and-animation, apple-platform-design, android-platform-design,
design-system-audit, ship-quality-gate — are each standalone guidance that also points to the
full MCP for depth. See skills/.
Each skill is copied into your agent and its content hash pinned in
skills-lock.json, so an installed skill does not change when this repository
does. Re-run the command above to pick up a new skill or an edited one.
Dev & debug
npm run dev # run from TypeScript via tsx
npm run inspect # open the MCP Inspector UIUsage
Once connected, just talk to your agent naturally — it decides when to call the tools:
"Using saglitzdesign, plan the design of an iOS fitness app." →
get_design_roadmapreturns a 7‑phase plan with the docs to read at each step.
"Review my landing page for conversion with saglitzdesign." →
design_review_checklist(landing‑page / conversion) +get_design_examples.
"How should a primary button behave on mobile?" →
get_component_guidancereturns specs, states, labels and anti‑patterns.
"Show me real paywall examples." →
get_design_examplesreturns annotated screenshots.
"What's llms.txt and how do I set it up?" →
seo_geo_guide(GEO) returns the tactic with a ready‑to‑use example.
Your own design rules
Point the server at a directory of your own and your documents join the base — searchable, readable, and, if you ask, part of the review checklist:
claude mcp add --scope user saglitzdesign \
--env SAGLITZDESIGN_KNOWLEDGE_DIR=/path/to/our-design-rules \
-- npx -y saglitzdesign-mcpOr in claude_desktop_config.json / any MCP client, alongside command and args:
"env": { "SAGLITZDESIGN_KNOWLEDGE_DIR": "/path/to/our-design-rules" }Several directories are allowed, separated the way PATH is on your platform.
Your rules lead. When a search is genuinely about something you documented, your document comes first — measured by how many of the query's terms it covers, so a short house‑rules file is not buried by a long reference.
Same id replaces ours. A file with
id: buttonstakes over from the built‑in one. That is deliberate, and it is announced at startup rather than happening quietly. Wherever it is served it is marked as your team's document, so nothing of yours is ever quoted as though it were sourced platform guidance.review: [website, saas-web-app]in the frontmatter puts the document into those project types'design_review_checklist, ahead of the curated list — the difference between your rules being findable and your rules being enforced.
Editing files inside the installed package works until
npm updatedeletes them. Use the environment variable.
Adding to this repository
Drop a Markdown file anywhere under knowledge/ with frontmatter:
---
id: my-topic
title: "My Topic"
category: ux # design-language | component | ux | seo | geo | pattern | craft | book | process | marketing | security
platform: both # mobile | web | macos | both
tags: [tag1, tag2]
sources: ["https://…"]
updated: 2026-07-08
---
Content served verbatim to clients…The server indexes every .md on startup — no rebuild needed for content
changes (just restart the server). A /refresh-knowledge command
(.claude/commands/) can re‑research stale docs with agents.
How the knowledge was built
Design‑language and SEO/GEO docs were researched from official documentation
and current sources (cited in each file's sources). Real‑world UI patterns
were studied from top apps and websites; the visual example library was curated
the same way. Classic design and marketing books were distilled into original,
prescriptive syntheses — no source text is reproduced.
On images: screenshot files are a local research asset. They are not
included in this repository or any published package. Without them,
get_design_examples gracefully degrades to descriptions plus source links.
To rebuild the local image library (or add your own examples), see
scripts/regenerate-examples.md.
Find it on
Also listed in the official MCP Registry and on npm.
License
MIT © 2026 Saglitz Design.
The knowledge/ documents are original syntheses with sources cited per file.
Referenced screenshots are not part of this repo and may not be redistributed —
see NOTICE.md.
Available Tools
36 toolsaudit_accessibilityAudit AccessibilityARead-onlyIdempotent
Deterministic design-time accessibility checks: WCAG 2.2 color-contrast ratios for text/UI color pairs, and minimum tap/target sizes per platform (iOS 44pt, Android 48dp, web 24px min / 44 recommended). Returns exact ratios, pass/fail, and fixes — the machine-verifiable slice of a11y you can run before code. For keyboard/screen-reader/Dynamic Type checks, see get_design_doc('accessibility').
Inputs: tap_targets, contrast_pairs.
audit_android_uiAudit Android UiARead-onlyIdempotent
Audit an Android app's UI against Material 3 and android-app-design: point it at the project (or module) directory and it reads AndroidManifest.xml, resource XML and Kotlin, infers whether the folder is an Android project from those plus Compose/Android imports, and runs six rules. Configuration: windowOptOutEdgeToEdgeEnforcement="true" (deprecated and ignored on Android 16), enableOnBackInvokedCallback="false" (the predictive-back opt-out), and a values/themes.xml or values/colors.xml with no values-night/ file among the surfaces read. Compose: a Color(0x…) literal, fontSize = N.sp, and an androidx.compose.material.Button-style Material 2 import (not material3, not material.icons). Every configuration rule stays silent when no Android signal was found, and the report says whether the platform was inferred and from what, so a silence can be read as the gate rather than as a result. It reads source and does not measure anything: it builds nothing, starts no emulator, takes no screenshot, and no finding is or can be a rendered-output, contrast, TalkBack or Play review result. Returns markdown plus structured output: findings (rule, severity, message, fix, doc, file, line — configuration findings carry no line, since a manifest attribute has no useful source position), a severity summary, a scan block saying how much was actually read, and a machine-readable notVisible list of what it structurally could not check, every entry of it derived from a run. Directory only — there is no snippet mode, because configuration is the backbone of this audit and a snippet carries none of it. A missing path, a path that is a file, or a code argument is returned as an error result, not as an empty audit. Pair with get_design_doc("material-3") and get_design_doc("android-app-design") for the guidance behind the rules.
Inputs: code, path. Returns: scan, summary, findings, notVisible
audit_apple_uiAudit Apple UiARead-onlyIdempotent
Audit an iOS or macOS app's UI against Apple's own documentation: point it at the project directory and it reads the four surfaces an Xcode project declares configuration on — the information property list, INFOPLIST_KEY_* build settings in project.pbxproj, the entitlements plist, and each colorset's Contents.json — infers whether the project targets iOS or macOS from those plus the Swift imports, and runs eight rules. Configuration: a custom colorset with no luminosity: dark appearance, the deprecated UIRequiresFullScreen key (either spelling), a microphone entitlement declared under one capability and not its twin, and — on macOS only — no App Sandbox entitlement, reported as a fact about the Mac App Store channel rather than as a defect. Swift: NavigationView, .font(.system(size:)) on iOS only, a colour written as numbers, and a Button whose whole label is one SF Symbol. Every platform-scoped rule stays silent when the platform signals do not settle the question, and the report says which platform was inferred and from what, so a silence can be read as the gate rather than as a result. It reads source and does not measure anything: it builds nothing, runs no simulator, takes no screenshot, and no finding is or can be a rendered-output, contrast, notarization or App Review result. Returns markdown plus structured output: findings (rule, severity, message, fix, doc, file, line — configuration findings carry no line, since a missing key has no position), a severity summary, a scan block saying how much was actually read, and a long machine-readable notVisible list of what it structurally could not check, every entry of it derived from a run. Directory only — there is no snippet mode, because configuration is the backbone of this audit and a snippet carries none of it. A missing path, a path that is a file, or a code argument is returned as an error result, not as an empty audit. Pair with get_design_doc("apple-hig-liquid-glass"), get_design_doc("apple-accessibility") and get_design_doc("apple-shipping-readiness") for the guidance behind the rules.
Inputs: code, path. Returns: scan, summary, findings, notVisible
audit_design_systemAudit Design SystemARead-onlyIdempotent
Measure how systematic an existing UI really is: paste CSS / SCSS / Tailwind / JSX source and get a consistency score plus the sprawl behind it — how many distinct colors, font sizes, radii, shadows and spacing values it actually uses, which colors are near-duplicates nobody can tell apart, which spacing is off the 4pt grid, token adoption, stray font families, !important and magic z-index. Returns a consolidation plan wired to the generators. Use it before a redesign, on an inherited codebase, or to prove a design system is (or isn't) being followed. Deterministic static analysis; complements design_lint (per-line anti-patterns) with a whole-codebase view.
Inputs: code (required).
audit_ethical_designAudit Ethical DesignARead-onlyIdempotent
Audit a pasted snippet for named deceptive-pattern tells from ethical-design: confirmshaming decline copy, a pre-checked marketing or newsletter checkbox, a scarcity or deadline phrase with no live binding nearby, and an Accept all with no equally-named reject. It reads source and does not measure anything: no checkout is completed, no countdown is timed, no warehouse is queried, and no consent banner is clicked, so no finding is or can be a verdict on the business. Snippet only — there is no directory mode. Returns markdown plus structured output: findings (rule, severity, message, fix, doc, line), a severity summary, and a machine-readable notVisible list of what it could not check. Pair with get_design_doc('ethical-design') and a human looking at the render.
Inputs: code (required). Returns: summary, findings, notVisible
audit_generic_designAudit Generic DesignARead-onlyIdempotent
Audits a web project or snippet for the specific defaults generated interfaces reach for: the stock Tailwind indigo/violet/purple gradient (as classes, hex, or OKLCH), Inter/Roboto/Open Sans/DM Sans/Plus Jakarta Sans as the only declared typeface on a brand surface, emoji standing in for icons, the rounded-2xl + shadow-lg + border card recipe repeated across a page, gradient-filled heading text, an eyebrow label over every heading, the backdrop-blur + white/10 glassmorphism recipe, three or more animate-pulse or animate-shimmer placeholders, stock hype-opener copy ('unlock the power of', 'say goodbye to', …), stacked filler adverbs ('seamlessly', 'effortlessly', …), and a page whose every call to action is drawn from the stock set ('Get Started', 'Learn More'). Every finding is a fact about the source text — a class name, a phrase, a repeated structure — never a judgement about whether the result is good design; it reports facts, not taste, so pair it with design_review_checklist or get_design_doc("design-critique-scoring") for actual critique. It reads source and does not measure anything: it makes no network request, renders nothing, and no finding is or can be a rendered-output or aesthetic judgement. Returns markdown plus structured output: findings (rule, severity, message, fix, doc, file, line), a severity summary, a machine-readable notVisible list of what it could not check, and a 0-100 score itemised to the same rule, weight and evidence the markdown prints — each rule counts once no matter how many times it fires, so a long page never scores higher purely for its length. In directory mode it does not read story, test or fixture files (.stories., .story., .spec., .test., fixtures/, mocks/), whose job is to demonstrate a component rather than ship a surface; it reports how many it skipped. The copy rules match English only, so a page in another language is scored by the visual rules alone. A missing or non-directory path is returned as an error result, not as an empty audit. Pair with audit_project for design drift and design_review_checklist for critique.
Inputs: code, path, filename. Returns: scan, score, summary, findings, +1 more
audit_performanceAudit PerformanceARead-onlyIdempotent
Audit a page, a component or a whole web project for the performance signals that are actually in the source: a hero image held back by loading="lazy", or contradicting its own fetchpriority; the LCP-candidate image declaring no fetch priority at all; a hero background declared in CSS or an inline style, which the HTML preload scanner never sees; images with no width/height or aspect-ratio to reserve their box; a in the carrying neither defer nor async nor type="module"; @font-face blocks with no font-display; fonts served from a third-party font CDN; and scripts loaded from more distinct remote domains than any reading of "minimise" defends. It reads source and does not measure anything: Core Web Vitals are 75th-percentile field data from real devices, this loads nothing and times nothing, and no finding is or can be an LCP, INP or CLS verdict — so do not call it expecting a vitals report. Its hero rules are deliberately narrow (the first image inside , with the header logo and the mid-article diagram structurally excluded), which means some pages get no hero finding at all; that limitation and the others are returned explicitly rather than left to read as a clean result. Returns markdown plus structured output: findings (rule, severity, message, fix, doc, file, line), a severity summary, and a machine-readable notVisible list of what it could not check. A missing or non-directory path is returned as an error result, not as an empty audit. Pair with audit_seo_geo for the crawl and answer-engine signals, and measure_screenshot for the rendered result.
Inputs: code, path, filename. Returns: summary, findings, notVisible
audit_projectAudit ProjectARead-onlyIdempotent
Audit a real codebase instead of a pasted snippet: point it at a directory and it walks the design source, runs the design/accessibility lint over every file, and scores the whole thing for consistency — how many distinct colours, type sizes, radii, shadows and spacings the project actually uses, and which colours are indistinguishable duplicates. Returns findings ranked worst-file-first with file:line, plus an explicit list of what it did not look at. It reads source and does not measure anything: it loads no page, renders nothing, takes no screenshot, and no finding is or can be a rendered-output result. Returns markdown plus structured output: findings (rule, severity, message, fix, doc, file, line), a severity summary, a machine-readable notVisible list of what it could not check, and a scan block saying how many files and bytes were actually read, which files were skipped for size, which could not be opened, and whether the file or byte cap was hit — check that before trusting any absence in findings. It runs design_lint's rules and the consistency count, and nothing else: run audit_security, audit_generic_design, audit_seo_geo and audit_performance on the same directory for theirs. A missing or non-directory path is returned as an error result, not as an empty audit. Cross-file drift is the thing a single-file lint cannot see, which is the point of this tool. Reads only the directory you name; makes no network call. Pair with measure_screenshot for the rendered result and audit_ux_copy for the words.
Inputs: path (required), extensions. Returns: scan, summary, findings, notVisible
audit_securityAudit SecurityARead-onlyIdempotent
Audit a web project or snippet for security defects a frontend actually ships: missing or weak Content-Security-Policy, absent HSTS, unpinned cross-origin scripts, mixed content, credentials in localStorage, secret-named NEXT_PUBLIC_/VITE_ variables, unsandboxed third-party iframes, wildcard postMessage, raw-HTML sinks with no sanitiser, production source maps and un-ignored .env files. Header state is inferred from wherever your stack declares it — next.config, vercel.json, netlify.toml, _headers, staticwebapp.config.json, firebase.json, Nuxt routeRules, a Remix/React Router headers export, SvelteKit hooks.server.ts and kit.csp, Astro middleware and Next.js middleware or its Next 16 rename proxy.ts, new Response(body, { headers }) and new Headers({…}) on Cloudflare Workers/Deno/Bun — and, as rules rather than places, a quoted header-name property in any JSON or object literal, and any call whose method name is set, setHeader, append or header whatever the object is called (res.set, res.setHeader, headers.set, headers.append, Fastify reply.header, Hono c.header, Koa ctx.set) — and , read as text and never evaluated. It reads source and does not measure anything: it makes no request to your site, tests no live endpoint, and no finding is or can be a penetration-test or vulnerability-scan result — so do not call it expecting one. Returns markdown plus structured output: findings (rule, severity, message, fix, doc, file, line), a severity summary, and a machine-readable notVisible list of what it could not check. A missing or non-directory path is returned as an error result, not as an empty audit. Pair with audit_project for design drift and audit_accessibility for WCAG.
Inputs: code, path, filename. Returns: summary, findings, notVisible
audit_seo_geoAudit Seo GeoARead-onlyIdempotent
Audit a page, a component or a whole web project for the SEO and GEO signals that are actually in the source: a missing , and one longer or shorter than the width a result gives it; a missing meta description, and one outside the width a snippet gives it; more than one on a page; a heading level skipped in the outline; no canonical link at all; a canonical written as a relative URL in a self-contained document; a canonical left pointing at localhost or a staging host; an hreflang set that never lists the page itself; JSON-LD that does not parse, or that declares no @context or @type; JSON-LD declaring a type whose rich result Google has retired; an image with no alt attribute at all; robots.txt crawl rules, including the AI crawlers behind ChatGPT, Claude, Perplexity and Google's AI surfaces; a robots.txt that names no sitemap; no llms.txt beside it; and content that exists only once a script has run. It reads source and does not measure anything: no request is made to your site, nothing is rendered, and no finding is or can be a Core Web Vitals result, an indexing status or a ranking outcome — so do not call it expecting a vitals or ranking report. Absence is only ever claimed where it can be proven — a self-contained HTML document, or a whole directory — and a scan that hits its cap downgrades every absence claim to an unconfirmed note. Returns markdown plus structured output: findings (rule, severity, message, fix, doc, file, line), a severity summary, and a machine-readable notVisible list of what it could not check. A missing or non-directory path is returned as an error result, not as an empty audit. Pair with audit_performance for the delivery signals, audit_ux_copy for whether the writing earns the click, and seo_geo_guide for the guidance behind the rules.
Inputs: code, path, filename. Returns: summary, findings, notVisible
audit_ux_copyAudit Ux CopyARead-onlyIdempotent
Audit UI / marketing copy objectively: readability (Flesch reading ease + grade level), average sentence length, passive voice, jargon/hype words, filler, user-focus ('you' vs 'we'), and weak CTAs. Returns metrics plus specific flagged phrases and fixes. The machine-checkable slice of UX writing — pair with get_design_doc('ux-writing') for voice/tone judgment. It reads source and does not measure anything: no usability session is run, no A/B result is read, and no finding here is or can be a statement about whether the copy actually works for a reader. It also has no notion of register: it has no way to tell short UI copy from long-form prose, so a paragraph of accurate technical documentation can draw more jargon/filler hits than a paragraph of real hype. Returns markdown plus structured output: findings (rule, severity, message, fix, doc, line), a severity summary, a machine-readable notVisible list of what it could not check, and a metrics block carrying the same words/sentences/avgSentenceLen/Flesch/grade-level/you-we numbers the markdown table prints.
Inputs: text (required). Returns: metrics, summary, findings, notVisible
compare_design_languagesCompare Design LanguagesARead-onlyIdempotent
Compare how iOS (HIG/Liquid Glass), Android (Material 3), macOS and the web each solve ONE design problem — navigation, buttons, modals/sheets, typography, color, elevation, motion, forms, lists, icons, search or settings. Returns a side-by-side table of the concrete conventions per platform, the rules for porting a design between them, and an explicit 'do NOT port' list. Use when building the same product on more than one platform, or when deciding whether a pattern that works on one platform belongs on another.
Inputs: topic (required), platforms.
create_design_systemCreate Design SystemARead-onlyIdempotent
THE one-call foundation. Turn a brand color + product vibe + platform into a complete, coherent design-system starter: a direction card (named defaults to leave, the type pairing as a decision, one signature move, and a stock-region fact if the seed sits in indigo/violet/purple), accessibility-verified color (light+dark), a matched font pairing, an icon library, a modular type scale, an elevation ramp, ready-to-paste design tokens (CSS/Tailwind or SwiftUI/Compose), the components to build, and a build checklist — all generated to work together. Use this FIRST when someone says 'design/build me a website/app' to lay the foundation, then get_component_recipe for each component and get_design_roadmap for the full process.
Inputs: vibe (required), brand_color (required), name, platform.
design_lintDesign LintARead-onlyIdempotent
Lint a snippet of HTML / CSS / JSX / Tailwind for design & accessibility anti-patterns: hardcoded colors instead of tokens, px font-sizes, removed focus outlines, images without alt, clickable divs, icon-only buttons without labels, positive tabindex, ad-hoc radii, !important overuse. Returns findings with line numbers, severity, and fixes. It reads source and does not measure anything: nothing is rendered, no contrast ratio is computed and no tap target is sized, so no finding is or can be a visual or an accessibility verdict. Returns markdown plus structured output: findings (rule, severity, message, fix, doc, line), a severity summary, and a machine-readable notVisible list of what it could not check. Fast static design-time check — not a replacement for a full audit. Complements design_review_checklist.
Inputs: code (required). Returns: summary, findings, notVisible
design_review_checklistDesign Review ChecklistARead-onlyIdempotent
Generate a structured design-review checklist for a project type (mobile app, website, landing page, dashboard), assembled from the knowledge base: key rules and anti-patterns per area. Use it to audit an existing design or as acceptance criteria for a new one.
Inputs: project_type (required), focus.
fix_contrastFix ContrastARead-onlyIdempotent
Repair a failing color pair: given a foreground and background hex, compute the NEAREST accessible color (hue & saturation preserved, lightness nudged) that meets the WCAG 2.2 target — not just a pass/fail report. Use when audit_accessibility flags a pair and you need the corrected value to ship. For a full pass/fail audit use audit_accessibility; to build a whole palette use generate_color_system.
Inputs: background (required), foreground (required), adjust, target.
generate_color_systemGenerate Color SystemARead-onlyIdempotent
Turn ONE brand color into a complete, accessibility-verified palette: a 50–950 tonal scale, a cohesive brand-tinted neutral ramp, and full light + dark semantic tokens (background, surface, border, text, primary/onPrimary, subtle, focus ring). Every text/UI pair is checked against WCAG 2.2 and auto-adjusted to pass. Deterministic — outputs a real palette, not advice. Feed the result into generate_design_tokens, then audit_accessibility.
Inputs: brand_color (required).
generate_design_tokensGenerate Design TokensARead-onlyIdempotent
Turn a design-token spec (semantic colors + optional spacing/radius/type scales) into REAL, ready-to-use artifact files: CSS custom properties, Tailwind v4 @theme, SwiftUI, Jetpack Compose, and W3C DTCG JSON. Deterministic — outputs code, not advice. Use it to give a project one source of truth across web, iOS and Android. Pair with audit_accessibility to verify the palette's contrast.
Inputs: colors (required), name, radii, format, +3 more.
generate_elevation_systemGenerate Elevation SystemARead-onlyIdempotent
Generate a cohesive elevation / box-shadow ramp (layered ambient + direct light) with semantic level names (flat…modal), as CSS custom properties and Tailwind @theme, plus dark-mode guidance. Deterministic. Use one shadow token per level instead of hand-tuning shadows per component.
Inputs: hue, levels, strength.
generate_layout_systemGenerate Layout SystemARead-onlyIdempotent
Generate the layout foundation the other generators leave out: breakpoints (with what changes at each), container max-widths, edge padding, a column grid, an intrinsic auto-fit card grid, container queries, and a fluid section-rhythm scale — as CSS custom properties and a Tailwind v4 @theme block, plus the rules that matter more than the numbers (design narrow-first, cap the measure at 45–75ch, prefer intrinsic layout to media queries). Deterministic real code. Pair with generate_type_scale and generate_design_tokens.
Inputs: gutter, preset, columns, max_width, +1 more.
generate_motionGenerate MotionARead-onlyIdempotent
Generate a motion system: easing tokens (decelerate/accelerate/standard/spring as cubic-beziers), duration tokens, and ready-to-paste keyframe animations (fade-in, slide-up, scale-in, spring-pop, shimmer) in CSS, Framer Motion, or SwiftUI — grounded in the animation-craft rules (ease-out on enter, small distances, never scale(0), honor reduced-motion). Deterministic real code.
Inputs: stack, animation.
generate_type_scaleGenerate Type ScaleARead-onlyIdempotent
Generate a modular typographic scale from a base size and ratio: named steps (xs…6xl) with sizes, line-heights, letter-spacing, and optional fluid clamp() that scales display type down on small screens. Emits CSS custom properties and a Tailwind v4 @theme block. Deterministic real output. Pair with suggest_font_pairing and generate_design_tokens.
Inputs: base, fluid, ratio, steps.
get_component_guidanceGet Component GuidanceARead-onlyIdempotent
Get expert guidance for designing one UI component or screen pattern (button, form, navigation, card, modal, hero, pricing page, onboarding, paywall, checkout, empty state, dashboard…). Returns the most relevant docs in full — specs, states, sizing, anti-patterns, and real-world patterns from top apps/sites. Use when designing a specific element; for copy-paste code use get_component_recipe, for annotated screenshots use get_design_examples.
Inputs: component (required), platform.
get_component_recipeGet Component RecipeARead-onlyIdempotent
Get production-ready, accessible reference CODE for a UI component in a chosen stack (react-tailwind, html-css, swiftui, compose) — not advice, actual copy-paste code with all states, ARIA/accessibility, keyboard support and correct motion, grounded in the SaglitzDesign specs. Use when you need to actually build a button, input, modal, toast, card, switch, tabs, empty-state, list-row, navigation, search, select, table, tooltip, form, pagination, skeleton, badge, or breadcrumb. Pair with get_component_guidance (the design rationale) and generate_design_tokens (the theme).
Inputs: component (required), stack, scales, tokens.
get_design_docGet Design DocARead-onlyIdempotent
Fetch one knowledge-base document in full by its id. Returns the whole document — title, metadata, prescriptive body, and cited sources. Ids come from list_design_knowledge or search_design_knowledge; if the id is unknown it suggests near matches.
Inputs: id (required).
get_design_examplesGet Design ExamplesARead-onlyIdempotent
Fetch curated real-world examples of a design pattern from top apps and websites (paywalls, onboarding, auth, navigation, checkout, settings, empty states, heroes, pricing, features, social proof, signup, dashboards, footers). Returns, for each example, the app/site, what it does well, and a source link to view the screenshot. NOTE: this installation does not bundle the screenshot images (they are third-party assets, excluded from the published package), so the notes and links are returned WITHOUT inline images — open the links, or use your own browser tool, if you need to see them.
Inputs: query (required), limit, platform.
get_design_languageGet Design LanguageARead-onlyIdempotent
Fetch the full reference document for one modern design language or platform design system (Material 3, Apple HIG/Liquid Glass, iOS/Android/macOS, Apple Intelligence, visionOS, Fluent 2, 2026 web trends, design tokens). Returns the complete spec — rules, do/don't lists, numbers, and examples — for the chosen system. Use when you need the authoritative platform baseline before designing; for a specific component use get_component_guidance, and to plan a whole project use get_design_roadmap.
Inputs: language (required).
get_design_roadmapGet Design RoadmapARead-onlyIdempotent
The SaglitzDesign roadmap: a phased, expert design process for a given project type (website, landing page, iOS app, Android app, macOS app, SaaS web app). Each phase has a goal and the exact knowledge-base docs to consult. Use this FIRST when starting any design project, then fetch phase docs as you reach them.
Inputs: project_type (required).
import_design_tokensImport Design TokensARead-onlyIdempotent
Read an EXISTING design system and convert it: paste CSS custom properties (a Tailwind v4 @theme block, a shadcn :root block, plain CSS), a W3C DTCG token file, or a theme object as JSON, and get back the roles it names, the semantic roles it is missing, a WCAG contrast check on the pairs it defines, and the whole set re-emitted as CSS / Tailwind / SwiftUI / Compose / DTCG. The inverse of generate_design_tokens — use it to take a web theme to iOS or Android, to audit an inherited system, or to see what a third-party theme leaves undefined. Only NAMED tokens are read; a bare hex inside a rule carries no role and is never imported as one (use audit_design_system to count those). JavaScript configs are never evaluated.
Inputs: source (required), name, format.
knowledge_freshnessKnowledge FreshnessARead-onlyIdempotent
Report how fresh each knowledge document is (age since last verification vs its category's staleness threshold). Use this to decide which docs need re-research; refresh workflow is documented in the repo's /refresh-knowledge command.
Inputs: only_stale.
list_design_knowledgeList Design KnowledgeARead-onlyIdempotent
List the knowledge-base index (design languages, UI components, UX, craft, books, process, marketing, SEO, GEO, patterns). Returns every document grouped by category — each with its id, title, platform, and tags. Use this first to discover what's available and get exact ids; then read one with get_design_doc, or search by need with search_design_knowledge.
Inputs: category, platform.
measure_screenshotMeasure ScreenshotARead-onlyIdempotent
Measure a real screenshot from its actual pixels — the exact palette and how many distinct colours it really uses, true WCAG contrast ratios for the colour pairs on screen, whitespace/density, and structural detections (left-edge alignment, vertical rhythm, off-grid gaps) each carrying a confidence level. Returns a markdown measurement and, on request, a self-contained HTML report you can save, open and share. PNG only. Reads the local file you name; makes no network call. Use it before critiquing a UI so the review cites measured numbers instead of impressions; pair with fix_contrast for failing pairs and audit_design_system for the codebase behind the screen.
Inputs: path (required), scale, format, max_colors.
search_design_knowledgeSearch Design KnowledgeARead-onlyIdempotent
Search the whole knowledge base with a natural-language query — UI components, UX, accessibility, typography, color, motion, conversion, copywriting, SEO/GEO, platform design languages, craft standards, distilled design & marketing books, roadmaps, and real-world app/site patterns. Returns the top-matching documents, each with its single most relevant section excerpted and its id. Use for open-ended 'how should I…' questions; if you already know the id use get_design_doc, to browse everything use list_design_knowledge.
Inputs: query (required), limit, category, platform.
seo_geo_guideSeo Geo GuideARead-onlyIdempotent
SEO and GEO expertise for websites — classic SEO (technical, on-page, design-impact) and GEO, Generative Engine Optimization for AI answer engines (ChatGPT, Perplexity, Google AI Overviews, llms.txt, citations). Returns the full relevant guide docs, optionally narrowed to a topic. Use when planning or auditing a site's discoverability; pair with get_design_roadmap('website') for the full process.
Inputs: scope (required), topic.
suggest_font_pairingSuggest Font PairingARead-onlyIdempotent
Recommend production-ready font pairings for a brand/product from an intent or vibe (e.g. 'modern SaaS dashboard', 'luxury editorial', 'bold marketing landing', 'native iOS app', 'developer tool'). Returns matched heading + body (+ mono) with ready-to-paste CSS stacks, weights, source, the reason each pairing works, pairing rules, and a suggested type scale. Deterministic curated recommendations, not generic advice. Pair with generate_design_tokens to emit the fonts as tokens.
Inputs: intent (required), limit.
suggest_icon_librarySuggest Icon LibraryARead-onlyIdempotent
Recommend the right icon library for a product from an intent/vibe/platform (e.g. 'minimal SaaS dashboard', 'friendly consumer app with personality', 'iOS app', 'Android Material app', 'dense admin panel'). Returns matched open-source (or platform-native) icon systems with license, install command, coverage, the reason each fits, usage rules, and universal icon best-practices. Deterministic curated guidance — icons are NOT bundled; install the chosen library in your own project. Pair with suggest_font_pairing and generate_color_system.
Inputs: intent (required), limit.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 36 tools
The set is organized into clear families (knowledge retrieval, generators, audits) and descriptions cross-reference each other heavily, which helps an agent pick between them. The main confusable pair is audit_design_system vs audit_project, which both report color/shadow/spacing sprawl, and get_design_doc vs get_design_language overlap slightly as document fetchers.
The vast majority follow a predictable verb_noun pattern across list_/search_/get_, generate_, audit_, suggest_, create_, compare_, measure_, and import_ families. A few outliers—design_review_checklist, seo_geo_guide, knowledge_freshness, and design_lint—break the pattern but are still readable.
36 tools is far above the 25+ threshold and creates a heavy selection burden for an agent, even though the scope is broad. Several audit_* and generate_* tools could plausibly be consolidated, with audit_project largely subsuming design_lint plus audit_design_system's consistency counting.
The surface covers the full design workflow: knowledge discovery and planning, component guidance and recipes, deterministic design-token/color/type/motion generation, import of existing systems, screenshot measurement, and a wide matrix of audits across accessibility, copy, ethical design, security, SEO, performance, Apple, and Android. There are no obvious dead ends or missing lifecycle stages for the stated purpose.
Maintenance
Related MCP Connectors
A design agent in your coding agent's loop: briefs each screen, reviews UX and visual quality.
Turn your coding agent into a marketing agent: search data, specs to build, fixes verified by scan.
Human know-how for AI agents: rules, reasons and checks for design, code, product and writing.
UI design from prompts, screenshots, and URLs for AI coding agents and theme tokens.
Related MCP Servers
- FlicenseAqualityDmaintenanceProvides comprehensive design principles and best practices to help LLMs generate modern, accessible web pages through guidance on layouts, colors, and typography. It enables users to review design approaches and access expert recommendations for responsive design, component structure, and current industry trends.1243 npm3-
- FlicenseNot gradedqualityDmaintenanceExposes The Vibe Coder's Web Design Guide as tools for AI agents, enabling lookups of UI design patterns, CSS/JS snippets, and composition of optimized front-end prompts.-
- AlicenseNot gradedqualityCmaintenanceProvides design systems, UI prompts, and layout variation guidance to AI coding tools for generating better user interfaces.353 npm2,225MIT

UXKIN MCP Serverofficial
AlicenseNot gradedqualityBmaintenanceEnables coding agents to find real iOS app screens, user journeys, and website design systems, including colors, typography, components, and DESIGN.md files, so generated UIs resemble real products instead of AI defaults.8MIT