{"name":"io.github.theluckystrike/contrast-checker","slug":"theluckystrike-contrast-checker","title":"Zovo Palette Lab","description":"WCAG contrast & palettes","url":"https://mcp.market/server/theluckystrike-contrast-checker","rating":null,"grade":"C","score":67,"certified":false,"status":"active","category":"other","tags":[],"presence":{"score":8,"stars":null,"forks":null,"downloads_week":null,"last_push_at":null,"license":null},"uptime":{"percent":100,"checks":28,"ok":28,"last_checked_at":"2026-11-04T07:30:56.817Z","last_ok_at":"2026-11-04T07:30:56.817Z","latency_ms":123},"claimed":false,"transport":"remote","callable_via_gateway":true,"default_price_micros":0,"repository":null,"website":"https://contrast-checker.zovo.one/","version":"1.0.0","remotes":[{"type":"streamable-http","url":"https://contrast-checker.zovo.one/mcp"}],"packages":[],"tools":[{"name":"check_color_contrast","description":"Use this when the user wants to know whether a text, icon or border colour has enough contrast against a background: a WCAG contrast checker for one colour pair (e.g. \"does white text on #F59E0B pass WCAG AA\", \"contrast ratio of #767676 on white\", \"what text color for this background\"). Returns the computed WCAG 2.x ratio (truncated to 2 decimals, rounded down), AA/AAA results for normal text, large text and UI components, a verdict for a given font size, APCA Lc as draft information, and the nearest passing colours for AA and AAA (darker and lighter, same OKLCH hue and chroma). Accepts hex, 8-digit hex with alpha, rgb(), hsl(), hwb(), lab(), lch(), oklab(), oklch(), color(display-p3 ...) and CSS colour names; wide-gamut colours are clipped to sRGB with a note. Does not read colours from images or web pages, resolve CSS variables or currentColor, or check gradients as a whole (check each stop). For 3 or more colours use check_palette_contrast.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"foreground":{"type":"string","minLength":1,"maxLength":64,"description":"Text, icon or border colour, e.g. #767676, #1E6FD980 (8-digit hex with alpha), rgb(118, 118, 118), hsl(214 76% 48%), oklch(55% 0.18 255) or a CSS colour name such as navy. Translucent colours are composited over the background."},"background":{"type":"string","minLength":1,"maxLength":64,"description":"Background colour behind it, e.g. #FFFFFF, white or #1E293B. A translucent background is composited over white."},"font_size_px":{"description":"Optional text size in CSS pixels for a single verdict on that text, e.g. 16. 18pt = 24px; 14pt = about 18.66px.","type":"number","minimum":1,"maximum":500},"bold":{"description":"Optional: true when that text is bold (font-weight 700+), e.g. true. Bold text from 18.66px counts as large text.","type":"boolean"},"adjust":{"description":"Which colour the suggested fixes change, e.g. foreground. auto (default) changes the more colourful of the two, so brand colours keep their hue.","type":"string","enum":["auto","foreground","background"]}},"required":["foreground","background"],"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"check_palette_contrast","description":"Use this when the user has a colour palette (2 to 12 colours) and wants to know which combinations are accessible: \"check contrast of my color palette\", \"which of these colors can I use for text\", \"accessible color palette checker\". Returns the full pairwise WCAG 2.x contrast matrix (ratios truncated, rounded down), which pairs pass AA/AAA for text or 3:1 for large text and UI, and a recommended text colour for each background (a palette colour that passes AA, otherwise black or white). Does not generate new colours; use generate_accessible_palette for a tonal scale and check_color_contrast for fixes to one pair.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"colors":{"minItems":2,"maxItems":12,"type":"array","items":{"type":"string","minLength":1,"maxLength":64},"description":"2 to 12 colours to test against each other, e.g. [\"#1E6FD9\", \"#F59E0B\", \"#FFFFFF\", \"#111827\"]. Hex, rgb(), hsl(), hwb(), lab(), lch(), oklab(), oklch(), color(display-p3 ...) or CSS names; translucent colours are composited over white."},"names":{"description":"Optional labels in the same order as colors, e.g. [\"Primary\", \"Accent\", \"Surface\", \"Ink\"].","maxItems":12,"type":"array","items":{"type":"string","maxLength":40}}},"required":["colors"],"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"generate_accessible_palette","description":"Use this when the user wants an accessible colour scale or palette built from one colour: \"color palette generator from hex\", \"generate a 50-950 scale from #1E6FD9\", \"tailwind color palette generator\", \"accessible color palette for my website\". Builds an 11-step 50-950 tonal scale in OKLCH with the base hue, where 50-400 pass AA with black text, 500 passes AA with both white and black text, 600 passes AA with white text and 700-950 pass AAA with white text, and each ratio is reported. Returns CSS custom properties and a Tailwind config as downloads. Does not pick colours by mood or brand meaning and does not extract palettes from images.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"base_color":{"type":"string","minLength":1,"maxLength":64,"description":"Brand or base colour to build the 50-950 scale from, e.g. #1E6FD9, rgb(30, 111, 217), oklch(55% 0.18 255) or teal."},"name":{"description":"Token name for CSS variables and the Tailwind colour key, e.g. brand (gives --brand-500). Default brand.","type":"string","maxLength":32}},"required":["base_color"],"$schema":"http://json-schema.org/draft-07/schema#"}}],"scan":{"score":67,"grade":"C","scanned_at":"2026-10-25T16:30:56.882Z","report":{"scannerVersion":"0.1.10","scannedAt":"2026-10-25T16:30:56.842Z","components":{"code":{"score":-1,"max":25,"notes":["remote-only server, no package to scan"]},"reliability":{"score":20,"max":20,"notes":["remote reachable in 724ms"]},"poisoning":{"score":15,"max":15,"notes":["3 tool descriptions checked"]},"auth":{"score":10,"max":15,"notes":["open endpoint, read-only tools"]},"maintenance":{"score":3,"max":15,"notes":["no repository listed"]},"identity":{"score":2,"max":10,"notes":["no repository or website to verify"]}},"findings":[{"id":"maint.no-repo","severity":"low","component":"maintenance","title":"No source repository listed"}],"inputs":{"probes":[{"url":"https://contrast-checker.zovo.one/mcp","reachable":true,"authRequired":false,"latencyMs":724,"serverInfo":{"name":"contrast-checker","version":"1.0.0"}}],"packages":[],"repo":{"found":false},"icon":{"url":"https://contrast-checker.zovo.one/icon.svg","source":"site"},"presence":{"stars":null,"forks":null,"downloadsWeek":null,"license":null,"lastPushAt":null,"score":8}}}},"grade_history":[],"reviews":[]}