PaletteGet

Registre officiel Autres

Curated app, web and mini program color palettes with WCAG contrast and CSS variables.

Installation

Ajoutez ceci à la configuration MCP de votre client (Claude Desktop : claude_desktop_config.json ; Cursor : .cursor/mcp.json ; VS Code et les autres utilisent la même forme « mcpServers »).

Remote (streamable-http)
Claude Code
claude mcp add --transport http paletteget 'https://paletteget-mcp.y7206062.workers.dev/mcp'
Configuration JSON (Claude Desktop, Cursor, VS Code)
{
    "mcpServers": {
        "paletteget": {
            "type": "http",
            "url": "https://paletteget-mcp.y7206062.workers.dev/mcp"
        }
    }
}

Documentation

Tirée du README du projet sur GitHub, actualisée chaque semaine. Les liens ouvrent GitHub.

Sommaire
  1. paletteget-mcp
  2. Use the hosted endpoint (nothing to install)
  3. Or run it locally (stdio)
  4. Tools
  5. Environment variables (stdio server)
  6. Test
  7. Maintaining the hosted worker
  8. Data and license

paletteget-mcp

An MCP server for the PaletteGet color palette library: 90 palettes across App, Web and Mini App UIs, each organized into 10 design roles and checked against WCAG contrast requirements.

It exists so your AI coding tool stops inventing hex values. Instead of guessing, the model calls a tool and gets the real role colors, the measured contrast ratios, and the pairing advice that ships with the palette.

No API key, no sign-up.

Use the hosted endpoint (nothing to install)

https://paletteget-mcp.y7206062.workers.dev/mcp
{
  "mcpServers": {
    "paletteget": {
      "type": "http",
      "url": "https://paletteget-mcp.y7206062.workers.dev/mcp"
    }
  }
}

ChatGPT: Settings → Connectors → Add custom connector → paste the URL.

The hosted server embeds the dataset at deploy time, so it never depends on the site being reachable and answers in a few milliseconds.

Or run it locally (stdio)

git clone https://github.com/yang7206/paletteget-mcp.git
cd paletteget-mcp
npm install
{
  "mcpServers": {
    "paletteget": {
      "command": "node",
      "args": ["/absolute/path/to/paletteget-mcp/index.mjs"]
    }
  }
}

The stdio server fetches live data from the public JSON endpoints and caches it for 10 minutes.

Tools

ToolWhat it does
list_palettesList palettes, optionally filtered by platform (app / web / miniapp) or tag
get_paletteFull data for one palette: role colors, contrast results, human-written pairing advice
suggest_paletteRecommend palettes from keywords in English or Chinese, and say what matched
get_css_variablesCSS custom properties for a palette, ready to paste
check_contrastWCAG contrast between any two colors, with both the body-text and large-text verdicts
suggest_text_colorReadable text colors for a given background: same-hue tints and shades plus black and white, ranked by contrast
darken_paletteDerive a dark-mode version of a light palette with published rules, and the measured contrast of every pair
get_platform_snippetPaste-ready code for one palette: Android colors.xml, iOS UIColor, Flutter Color, mini program wxss, CSS, SCSS or Tailwind
get_color_scaleExpand one base color into a 50 to 900 scale, with white and black contrast per step; JSON, CSS or Tailwind output

Example call and result:

suggest_palette { "query": "dark finance dashboard", "limit": 2 }

- Ink Blue Night / 墨蓝夜(app,分 94)
  slug: mo-lan-ye 主色: #4c8df6
  场景: Finance & analytics apps (dark mode)
  命中: 标签:dark, 场景:finance

Environment variables (stdio server)

VariableDefaultPurpose
PALETTEGET_APIhttps://paletteget.com/api/index.jsonOverride the dataset URL
PALETTEGET_API_ZHderived (/zh/api/index.json)Override the Chinese dataset URL
PALETTEGET_CACHE_MS600000Cache lifetime in milliseconds
PALETTEGET_PROXYnoneRoute requests through a proxy, e.g. http://127.0.0.1:7897. Also honours HTTPS_PROXY.

Behind a firewall, Node's built-in fetch ignores the usual proxy variables, so set PALETTEGET_PROXY explicitly.

Test

npm run smoke

The smoke test speaks the MCP stdio protocol directly and exercises every tool against a local fixture, so it runs offline. Point PALETTEGET_API at the live site to test against production.

Maintaining the hosted worker

The worker (worker.mjs) is a hand-written, stateless subset of MCP Streamable HTTP (initialize, tools/list, tools/call, ping) with no SDK dependency, which keeps it small and Workers-native.

# 1. Regenerate the embedded dataset (run both locales)
SITE_URL=https://paletteget.com SITE_LOCALE=zh node --import ./alias-loader.mjs build-data.mjs
SITE_URL=https://paletteget.com SITE_LOCALE=en node --import ./alias-loader.mjs build-data.mjs

# 2. Local check
npx wrangler dev          # POST JSON-RPC to http://127.0.0.1:8787/mcp

# 3. Deploy (needs CLOUDFLARE_API_TOKEN with Workers Scripts:Edit)
npx wrangler deploy

build-data.mjs reuses the site's own i18n modules through alias-hooks.mjs, so names, scenes and advice stay identical to the published site. data/ is generated at build time and never committed.

Data and license

Code is MIT (see LICENSE). Palette data comes from paletteget.com and may be reused freely in personal and commercial projects; a credit link is appreciated.

Machine-readable forms of the same data, if you would rather skip MCP entirely:

  • Full dataset: https://paletteget.com/api/index.json
  • One palette: https://paletteget.com/palette-list/{platform}/{slug}/index.json
  • CSS variables: https://paletteget.com/palette-list/{platform}/{slug}/index.css
  • Agent guide: https://paletteget.com/llms.txt

Questions fréquentes

Qu'est-ce que PaletteGet ?

Curated app, web and mini program color palettes with WCAG contrast and CSS variables.

Comment installer PaletteGet ?

Il fonctionne comme serveur distant. Dans Claude Code : claude mcp add --transport http paletteget 'https://paletteget-mcp.y7206062.workers.dev/mcp'. Pour les autres clients, collez la configuration JSON de cette page dans leurs réglages MCP.

Faut-il une clé API pour PaletteGet ?

Son entrée au registre n'indique aucune clé ni secret obligatoire. Certaines fonctions peuvent tout de même demander un compte auprès du service auquel il se connecte.

PaletteGet est-il open source ?

Son code est public sur GitHub, mais le dépôt ne déclare pas de licence standard.

Qui maintient PaletteGet ?

Il est publié par yang7206. AI.tn le référence sans le maintenir ni le recommander.

Issu du registre MCP officiel. Être listé n'est pas une recommandation : vérifiez le code et les permissions d'un serveur avant de lui donner accès à vos données.