An MCP server plus five skills that teach an agent to actually use it.
A live tool call finds the right component. A skill is what stops an agent from stopping there — composition rules, token architecture, and framework-specific conventions the MCP intentionally doesn’t restate.
Five skills, bundled as one plugin
Installed together on Claude Code, Cowork, Codex CLI, and Gemini CLI — lookup, generation, brand theming, and live interactive surfaces.
Web Components guidance for vanilla JS/HTML and Lit — which component a job calls for, and the token architecture underneath it.
The same judgment, for React — 72 components with props, patterns, and conventions specific to the React wrappers.
Serves Cre8 components as live, interactive UI from a Python FastMCP server — a tool call that returns a working surface, not a text reply.
Extracts a brand's colors, type and shape from a website, a picture, or a Design.md, and turns it into a seed-token override.
Coordinates the whole branded-app build — theming, then integration, then per-host rendering checks — handing each stage’s artifacts to the next.
Three specialists, one workflow that drives them
Building a branded MCP App is three jobs with hard handoffs between them. Each runs as its own agent that returns to the main session with named artifacts, so the next stage starts from evidence rather than a summary.
Extracts and verifies the brand. Returns theme.css and a handoff recording source evidence, inferred values, and anything it could not confirm.
Builds the MCP server and embedded UI on the ext-apps bridge for both Claude Desktop and ChatGPT, keeping host extensions isolated and capability-gated.
Reproduces the failing tool call and traces it end to end — connection, resource URI, CSP, bridge init, component upgrade, theme cascade, callback round trip.
Runs all three as a deterministic workflow in Claude Code: one verification lane per host, and an independent auditor that downgrades any pass it cannot show was observed.
Why the auditor matters. A local harness passing is not the desktop app working, and the difference is invisible in a summary. Every scenario the debugger reports carries how it was observed and what evidence backs it; a separate agent that did not do the work then tries to refute each pass claim. What survives is reported as passing. What doesn’t is marked unverified — which is the honest answer, and the one you can act on.
// Ask for it by name — workflows need an explicit opt-in > run the cre8:workflow-themed-mcp-app workflow // Optional args { "brandSource": "https://example.com", "hosts": ["Claude Desktop", "ChatGPT"], "entry": "theme" // or "integrate" | "debug" }
The same branded app, verified in both hosts
One Starbucks-themed MCP App, served by one server and rendering in both desktop hosts — the part a screenshot can’t show.
One bundle, four hosts
// MCP server, five skills, three agents, one workflow claude plugin install cre8@tmorrow_ai
// Same bundle, Codex’s own plugin format codex plugin add cre8@tmorrow_ai
// Same bundle, as a Gemini extension gemini extensions install https://github.com/tmorrowdev/cre8-gemini-extension.git
On Cursor, Windsurf, VS Code, OpenCode, or any other MCP-compatible tool? Those don’t have an equivalent plugin mechanism for the skills yet. But @tmorrow/cre8-mcp is the same standard MCP server either way — drop it into that tool’s MCP config and every tool works identically. The composition guidance the skills carry is still reachable through the MCP itself: call cre8_guide and get_composition the same way an agent with the skills installed would.