MCP server for generating OKLCH color palettes, semantic UI tokens, and accessibility-checked color scales. Use with Claude Code, Cursor, Windsurf, or any MCP client.
hueshift-mcp has well-structured tool definitions with clear naming (verb_noun pattern) and comprehensive descriptions (avg 180 chars). All 9 tools have input schemas with type definitions and parameter descriptions. However, output schemas are not formally documented, responses are returned as JSON text blobs without structured type declarations. Error handling is minimal (only file-not-found check in generate_palette_from_image). No tool annotations (readOnlyHint/destructiveHint) despite clear risk classifications. Parameter descriptions lack format constraints (e.g., hex color validation rules). Missing idempotency guidance for palette operations.
Check WCAG AA, AAA, and APCA contrast ratios between two colors. Returns pass/fail status and suggestions for fixing low contrast.
Delete a previously saved palette by ID or slug.
Export a palette as ready-to-paste code. Formats: Tailwind v4 @theme block, CSS custom properties, SCSS variables, W3C design tokens, JSON, or hex list. Can export from a base hex color or a previously saved palette by ID/slug.
Generate a full OKLCH color palette from a base hex color. Returns 11-shade scales (50-950) for each color, semantic tokens for UI, and a contrast report. The palette is auto-saved for later retrieval.
Extract dominant colors from an image file and generate a palette. Accepts a local file path. Returns OKLCH scales and semantic tokens.
Generate an 11-shade OKLCH color scale (50-950) from a single hex color.
Output schemas not formally documented. Tools return JSON text blobs without structured type declarations. LLMs cannot reliably extract fields or plan downstream calls.
No tool annotations (readOnlyHint/destructiveHint/idempotentHint) despite clear risk classifications. delete_palette is destructive but unmarked; read-only tools lack annotations.
Parameter descriptions lack format constraints. 'base_hex' accepts any string; should specify hex format (e.g., '#RRGGBB', 6 hex digits). 'image_path' lacks validation rules.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 59 | 2026-07-28+ | v2 |
Retrieve a previously saved palette by ID or slug. Returns full palette data including all color scales and semantic tokens.
List all previously saved palettes with their IDs, names, and color summaries.
Parse a hex color and return its OKLCH representation and CSS output.
Minimal error handling. Only generate_palette_from_image checks for file existence. No validation for invalid hex colors, out-of-range contrast standards, or malformed image paths. Errors return isError=true with text but no recovery guidance.
delete_palette lacks confirmation/dry-run pattern. Destructive operation with no undo mechanism or user confirmation step. Agents could accidentally delete palettes.