
Company News
Free Business Plan Upgrades for Open Source Maintainers
Open source maintainers are under more pressure than ever. We're raising our open source program from the Team plan to the Business plan, free.
tailwind-context-resolver-mcp
Advanced tools
MCP server that resolves project-specific Tailwind CSS design tokens and validates utility classes against the local config
An MCP server that loads your project's tailwind.config.ts/js and exposes its actual design system to AI agents — so they stop hallucinating class names.
AI agents generate Tailwind classes based on training data — the default Tailwind docs. Your project is not the default docs.
You have a custom color palette. A non-standard spacing scale. Maybe a prefix like tw-. Brand tokens like bg-brand-primary. The agent doesn't know any of this. It guesses.
The result:
// Agent confidently generates this:
<div className="bg-primary-500 text-brand p-18 tw-flex-center">
// Your project has:
// - bg-brand-primary (not bg-primary-500)
// - no "text-brand" token
// - spacing.18 = 4.5rem (ok actually)
// - no "flex-center" utility
// - no "tw-" prefix
The agent can't validate what it writes because it has no access to your resolved config. It's working from memory of the default theme — not yours.
This MCP server runs the Tailwind resolver locally and gives agents a typed, queryable interface to your actual config. Before writing a component, the agent can ask:
p-18 a valid spacing value here?"bg-brand-primary flex grid a valid class string?"resolve_theme_tokensQuery any namespace in the resolved Tailwind theme. Returns all design tokens as flat key-value pairs.
namespace: "colors.brand" → { primary: "#3b82f6", secondary: "#8b5cf6", danger: "#ef4444" }
namespace: "spacing" → { "1": "0.25rem", "2": "0.5rem", "18": "4.5rem", ... }
namespace: "fontFamily" → { sans: ["Inter", "sans-serif"], mono: [...] }
Use before generating components to discover what tokens actually exist.
validate_class_stringValidates a Tailwind className string against the project's resolved config. Returns valid classes, invalid (hallucinated) classes, and conflict warnings.
{
"valid_classes": ["bg-brand-primary", "text-white", "p-4", "hover:bg-brand-secondary", "flex"],
"invalid_classes": ["bg-fake-token", "text-brand"],
"warnings": ["Conflicting multiple layout models: flex, grid"],
"config_prefix": ""
}
Use to catch hallucinated design tokens before writing code.
detect_css_conflictsDetects conflicting Tailwind utilities — e.g. flex + grid, or absolute + fixed on the same element.
{
"conflicts": [{ "classes": ["flex", "grid"], "reason": "multiple layout models" }],
"has_conflicts": true
}
get_config_summaryReturns a compact overview: Tailwind version, prefix, which theme sections are customized, active plugins.
{
"tailwind_version": "3.4.19",
"prefix": "",
"theme_extensions": ["colors", "spacing", "fontFamily"],
"total_colors": 142,
"total_spacing": 34,
"plugins": ["@tailwindcss/forms"]
}
Use first to understand the project's design system before querying specific tokens.
Add to your claude_desktop_config.json:
{
"mcpServers": {
"tailwind-context-resolver": {
"command": "npx",
"args": ["-y", "tailwind-context-resolver-mcp"]
}
}
}
{
"tailwind-context-resolver": {
"command": "npx",
"args": ["-y", "tailwind-context-resolver-mcp"]
}
}
tailwind.config.js or tailwind.config.ts in your projectThe server uses the same config loading strategy as the Tailwind CLI:
jiti loads your tailwind.config.ts at runtime — no ts-node requiredtailwindcss/resolveConfig merges your config with Tailwind defaults to produce the full resolved themebg-brand-primary maps to an actual colors.brand.primary token — without running the full PostCSS/JIT pipelineThis approach is fast, stable, and works with any Tailwind v3 project without additional configuration.
1. get_config_summary → understand the project's design system
2. resolve_theme_tokens → query specific namespaces before writing classes
(namespace: "colors.brand", "spacing")
3. validate_class_string → validate the className string before committing it
4. detect_css_conflicts → final sanity check for conflicting utilities
Built alongside:
MIT
FAQs
MCP server that resolves project-specific Tailwind CSS design tokens and validates utility classes against the local config
The npm package tailwind-context-resolver-mcp receives a total of 13 weekly downloads. As such, tailwind-context-resolver-mcp popularity was classified as not popular.
We found that tailwind-context-resolver-mcp demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Company News
Open source maintainers are under more pressure than ever. We're raising our open source program from the Team plan to the Business plan, free.

Security News
The supply chain control that delays freshly published gems now covers lockfile generation and gem vendoring in Ruby projects.

Security News
During a UK cyber test, a Mythos 5 agent used sockpuppets, social engineering, and prompt injection to try to get a maintainer to merge malware.