Skip to main content
Glama
brunocpf

Nearest Tailwind Colors

by brunocpf

nearest-tailwind-colors-mcp

Model Context Protocol (MCP) server that exposes a single tool for finding the nearest Tailwind CSS palette colors to any CSS color.

Install & build

  • Requires Node 18+.

  • Install deps: npm install.

  • Build the project: npm run build.

Related MCP server: MCP Color Converter

Configure in an MCP host

All hosts should point to the built entry: /absolute/path/to/nearest-tailwind-colors-mcp/dist/index.js.

  • JSON-based hosts (Claude Desktop, Cursor, VS Code MCP extension): add this to the relevant settings.json/claude_desktop_config.json, then restart/reload:

{
  "mcpServers": {
    "nearest-tailwind-colors": {
      "command": "node",
      "args": ["/absolute/path/to/nearest-tailwind-colors-mcp/dist/index.js"]
    }
  }
}
  • Claude Desktop: edit claude_desktop_config.json.

  • Cursor: Settings → search "Model Context Protocol" → "Edit in settings.json".

  • VS Code: User/Workspace settings.json with the MCP/Claude extension installed.

  • ChatGPT Codex (CLI and VS Code extension): add to ~/.codex/config.toml (wrap in your shell if you need nvm/fnm to enforce node >= 18):

[mcp_servers.nearest_tailwind_colors]
command = "node"
args = ["/absolute/path/to/nearest-tailwind-colors-mcp/dist/index.js"]
# with nvm
[mcp_servers.nearest_tailwind_colors]
command = "zsh"
args = [
  "-lc",
  "export NVM_DIR=\"$HOME/.nvm\"; source \"$NVM_DIR/nvm.sh\"; nvm use 20 >/dev/null; node /absolute/path/to/nearest-tailwind-colors-mcp/dist/index.js",
]

Available tool

  • nearest_tailwind_colors: finds the closest Tailwind colors to a given CSS color.

    • color (string, required): any CSS color (#fff, #fafafa, rgb(...), hsl(...), named colors, etc.).

    • n (int, optional): number of colors to return (default 5, max 50).

    • excludeColors (string[], optional): Tailwind color names to skip (e.g. ["white", "black", "neutral-950"]).

    • space (enum, optional): comparison color space (cmyk, gl, hcg, hcl, hsi, hsl, hsv, lab, lch, oklab, oklch, rgb; default lab).

Example prompt

Prompt: "What are the 5 tailwind colors closest to the youtube logo?"

Response:

Closest Tailwind matches to YouTube red (`#ff0000`):

- red-600 — `#dc2626`
- orange-600 — `#ea580c`
- red-500 — `#ef4444`
- red-700 — `#b91c1c`
- orange-700 — `#c2410c`

Available Tools

1 tool
nearest_tailwind_colorsFind nearest Tailwind CSS colorsB

Given any CSS color, find the nearest Tailwind CSS palette colors.

ParametersJSON Schema
NameRequiredDescriptionDefault
colorYesAny CSS color (e.g. #fff, #fafafa, rgb(...), hsl(...), or named color).
nNoNumber of nearest colors to return (default 5 if not provided).
excludeColorsNoList of Tailwind color names to exclude, e.g. ['white', 'black', 'neutral-950'] (default to none if not provided).
spaceNoColor space for comparison (default to 'lab' if not provided). 'lab' is recommended for most use cases.

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultsYes

TDQS

B3.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure but offers minimal information. It doesn't explain what 'nearest' means algorithmically, whether the tool is deterministic, what the output format looks like (though an output schema exists), or any performance characteristics like rate limits or computational cost.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that directly states the tool's purpose without any redundant information. It's front-loaded and wastes no words, making it easy for an agent to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's moderate complexity (4 parameters, color matching logic) and the presence of both a detailed input schema and an output schema, the description is reasonably complete. It clearly defines the core functionality, though it could benefit from more behavioral context given the lack of annotations.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema description coverage is 100%, so the schema already documents all parameters thoroughly. The description adds no additional parameter semantics beyond what's in the schema, such as explaining why 'lab' is the default color space or how exclusion affects results. This meets the baseline for high schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the specific action ('find the nearest Tailwind CSS palette colors') and the input ('given any CSS color'), making the purpose immediately understandable. It distinguishes this as a color matching tool for the Tailwind CSS framework, which is a well-defined domain.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives or any contextual prerequisites. While there are no sibling tools mentioned, it doesn't address potential use cases or limitations, leaving the agent to infer usage entirely from the tool name and parameters.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 1 tool updatev1.0.0
    • First observednearest_tailwind_colors

TDQS

B3.4/5.0

Scored across 1 tool

Disambiguation5/5

With only one tool, there is no possibility of ambiguity or overlap between tools. The tool has a single, clearly defined purpose.

Naming Consistency5/5

A single tool inherently has perfect naming consistency. The tool name follows a clear verb_noun pattern (nearest_tailwind_colors).

Tool Count2/5

One tool is too few for the apparent scope of a Tailwind color utility server. A complete surface would likely include tools for listing palettes, searching colors, or converting between formats, making this feel thin and incomplete.

Completeness2/5

The server's domain appears to be Tailwind color utilities, but with only a nearest-color lookup tool, there are significant gaps. Missing operations might include listing available Tailwind colors, getting color details, or validating color inputs, which limits agent workflows.

Maintenance

ActivityInactive
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    B
    quality
    D
    maintenance
    Enables comprehensive color manipulation, conversion between 22+ formats (HEX, RGB, HSL, CMYK, LAB, etc.), palette generation, gradient creation, and accessibility compliance checking. Supports framework-specific outputs for CSS, Swift, Android, Flutter, and Tailwind with high-precision conversions and visualization capabilities.
    25
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Provides comprehensive color conversion, manipulation, analysis, and WCAG accessibility tools supporting multiple formats (hex, rgb, hsl, oklch, oklab) for design systems and web development.
    28 npm
    2
    MIT
  • A
    license
    A
    quality
    B
    maintenance
    Translates design tokens across platforms — extracts from Tailwind/CSS/Figma and generates native themes for Material 3, SwiftUI, and CSS variables with WCAG contrast validation.
    9
    43 npm
    5
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Extract palettes from images, generate harmonies, gradients, random palettes; Check WCAG and APCA contrast; Suggest nearest passing OkLCH lightness; Simulate color-blindness; Convert and sort colors across formats (hex / RGB / HSL / OkLCH / …)
    MIT