A colour engine your agent can trust.
One word in, a complete accessible UI theme out: 15 role-assigned tokens, dark and light, every contrast pair measured. Same seed, same palette, every caller, forever. It does not know your brand, and says so instead of guessing: your agent locks the real colours and the engine builds the system around them.
See for yourself →Why not just ask the model?
Asked once for five accessible colours, a frontier LLM delivers. Asked twice, every hex changes,
and five colours is a third of a theme anyway: no hover or pressed states, no focus ring, nothing
measured. Verify us from two terminals:
curl "https://palette-forge.fly.dev/palette?seed=ocean"
koi pond0/15 hexes stable across LLM runs · 16/16 stable here, forever
LLM · run one
LLM · run two, same request
Palette Forge · every run, every caller
Add the connector
Endpoint (no login, no API key):
https://palette-forge.fly.dev/mcp
Claude Code: run the line below, then /mcp to confirm.
Add --scope user for every project.
claude mcp add --transport http palette-forge https://palette-forge.fly.dev/mcp
ChatGPT (web only, Plus/Pro): Settings → Connectors → Advanced → Developer mode on, then add a connector with the endpoint URL, authentication none.
Claude app (desktop, claude.ai, mobile): Settings → Connectors → Add custom connector,
paste the endpoint. The brief-first-theme prompt appears under + on desktop.
Then ask for a palette for something real and see whether it interviews you first. That is the point.
the explorer · seed gallery · llms.txt · service info · v4.7.0 · build b15cc69