MCP Servers for Design: How Sailop Integrates with Any AI Agent
Your coding agent lints TypeScript and runs tests, but it will happily ship bg-blue-500 and transition: all for the thousandth time. An MCP server gives it the one sense it lacks: knowing what generic looks like.
Ask Cursor to build a landing page and you can predict the output before it finishes streaming: a #3b82f6 blue button, transition: all 300ms ease-in-out, three identical pricing cards, Inter at every weight. The agent passed every type check and lint rule on the way there. It has no idea the result looks like every other AI-generated site, because none of its tools can see that. It can lint code, run tests, and check types, but it cannot evaluate whether the CSS it just wrote is indistinguishable from a million others — the monoculture we break down here. Sailop's MCP server gives it that missing sense.
What Is MCP?
Model Context Protocol is an open standard that lets an AI agent call external tools mid-conversation. Instead of answering from memory, the agent reaches out to a specialized server for a specific capability and gets a precise answer back.
It is a plugin system for AI. The agent says "is #3b82f6 in the AI blue range?" and the MCP server replies "yes, hue 217, shift below 200 or above 290." The agent does not carry the rule. The server owns it.
User → AI Agent → MCP Server → Tool Result → AI Agent → ResponseMCP ships in Claude Code, Cursor, Windsurf, Zed, and a growing list of agents. If yours speaks MCP, it speaks Sailop.
Sailop's 8 MCP Tools
Sailop exposes eight tools over its MCP server. Each one handles one slice of design quality.
Tool 1: scan
The primary tool. Hand it a file or directory and it returns the full DNA scan.
{
"tool": "scan",
"input": { "path": "./src/app/page.tsx" },
"output": {
"score": 68,
"grade": "D",
"dimensions": {
"color": 75,
"typography": 62,
"layout": 71,
"animation": 85,
"components": 55,
"structure": 60,
"spacing": 64
},
"findings": [
{ "rule": "animation-transition-all", "severity": "high" },
{ "rule": "color-blue-range", "severity": "high" }
]
}
}One thing trips people up: low is good. Score is a slop count, not a grade-point average. A score of 85 on animation means the animation is the most generic thing in the file. The agent reads the structure and knows exactly which dimension is bleeding and which rules fired.
Tool 2: check-color
Checks one color value against Sailop's 12 color rules.
{
"tool": "check-color",
"input": { "value": "#3b82f6" },
"output": {
"hue": 217,
"inAiBand": true,
"suggestion": "Shift hue below 200 or above 290. Try hsl(28, 85%, 55%) for a warm alternative."
}
}This earns its keep at generation time. Before the agent commits a color, it checks whether the value sits in the 210-270 hue band that marks nearly every AI build — the blue-purple gradient signature you can spot from across the room. For how Sailop produces non-generic palettes instead of just rejecting bad ones, see procedural design systems.
Tool 3: check-animation
Validates a CSS transition or animation declaration.
{
"tool": "check-animation",
"input": { "value": "transition: all 300ms ease-in-out" },
"output": {
"issues": [
"transition-all detected: specify exact properties",
"ease-in-out is an AI default: use a custom cubic-bezier",
"300ms uniform duration: vary by element size"
],
"suggestion": "transition: transform 220ms cubic-bezier(0.34, 1.56, 0.64, 1)"
}
}Tool 4: check-typography
Validates font declarations against the typography rules — flags Inter, Geist, and font-bold headline stacks, the defaults killing brand voice.
Tool 5: check-layout
Analyzes grid and flex declarations for AI defaults: grid-cols-3, items-center justify-center on everything, the reflexive 12-column hero.
Tool 6: generate-tokens
Builds a full design token set from a seed string. This is the generative half of Sailop — it produces solutions, not just verdicts.
{
"tool": "generate-tokens",
"input": { "seed": "my-startup-2026" },
"output": {
"colors": {
"--c-primary": "hsl(28, 72%, 48%)",
"--c-bg": "hsl(35, 18%, 96%)",
"--c-fg": "hsl(28, 12%, 12%)"
},
"typography": {
"--f-display": "'DM Serif Display', serif",
"--f-body": "'DM Sans', sans-serif"
},
"spacing": {
"--s-section-a": "148px",
"--s-section-b": "96px",
"--s-section-c": "64px"
}
}
}Note the spacing scale: 148 / 96 / 64, not the 8-point py-16 py-24 py-32 rhythm every Tailwind site reuses. Same seed, same tokens, every run — so a designer and an agent on the same project land on identical values.
Tool 7: suggest-fix
Takes one finding and returns a concrete edit.
{
"tool": "suggest-fix",
"input": {
"rule": "color-blue-range",
"context": "bg-blue-500 text-white"
},
"output": {
"original": "bg-blue-500 text-white",
"fixed": "bg-[hsl(28,72%,48%)] text-[hsl(28,12%,96%)]",
"explanation": "Replaced AI-default blue with warm accent from generated palette."
}
}Tool 8: score-diff
Compares two versions of a file and reports the delta — the proof a change actually helped rather than just moving code around.
{
"tool": "score-diff",
"input": {
"before": "/* old CSS */",
"after": "/* new CSS */"
},
"output": {
"before_score": 72,
"after_score": 38,
"delta": -34,
"improved_dimensions": ["color", "animation", "typography"]
}
}Setting Up the MCP Server
For Claude Code
Add Sailop to your MCP config:
{
"mcpServers": {
"sailop": {
"command": "npx",
"args": ["-y", "sailop", "mcp"]
}
}
}That is the whole setup. Claude Code now has all eight tools. Ask it for a landing page and it checks colors, animations, and layout against the rules as it writes. The deeper workflow lives in building unique frontends with Claude Code + Sailop.
For Cursor
In Cursor settings, add the server under Tools:
{
"name": "sailop",
"command": "npx -y sailop mcp",
"type": "stdio"
}For Any MCP-Compatible Agent
Sailop talks stdio over the standard MCP protocol. Any agent that speaks MCP connects with one line:
npx -y sailop mcpHow Agents Use the Tools
The point of MCP is that the agent decides when to call what. A real session looks like this:
- User: "Build a pricing section"
- Agent generates initial code
- Agent calls
scan— returns 74 (Grade D) - Agent calls
suggest-fixon each high-severity finding - Agent applies the fixes
- Agent calls
score-diffto confirm it helped - Score drops to 35 (Grade B)
- Agent presents the result
Nobody had to type "make it less generic." The agent knows what generic is because Sailop told it — the same role ESLint plays for correctness, but for design.
Real-World Impact
We tracked 200 Claude Code sessions with Sailop's MCP tools against 200 without. Lower score is better:
- Average DNA score, no Sailop: 71 (Grade D)
- Average DNA score, with Sailop: 34 (Grade B)
- Sessions with a non-default color palette: 12% without, 89% with
- Sessions using a custom cubic-bezier: 3% without, 78% with
The tools do not make the model creative. They make it aware. The 89% number is the tell: the model could always have picked a warm hsl(28, 72%, 48%) over bg-blue-500 — it just never knew the blue was a problem. Awareness of the default is the whole intervention. The detection rules behind these numbers are catalogued in the complete guide to anti-AI design.
Beyond Detection
MCP also means Sailop evolves independently of the models. When a new pattern goes mainstream — bento grids, zinc-950 heroes, backdrop-blur-md glass cards — Sailop ships a rule for it. The next scan picks it up. No retraining, no waiting on a model release.
That separation matters. Models are frozen on the data they were trained on; Sailop is updated for what is shipping this week. Run it on every pull request through your CI/CD pipeline and the gap never reopens.
# Install and try it now
npx sailop install
sailop mcp # start the MCP serverGive your agent design awareness. Set up the MCP server and every component it generates gets checked against 73 rules across 7 dimensions. Start at sailop.com/mcp.
SHIP CODE THAT LOOKS INTENTIONAL
Scan your frontend for AI patterns. Generate a unique design system. Stop shipping the same blue gradient as everyone else.