putty
MCPBrand

Brand

Draft a brand brief, save it as a kit, read it back, and write it into a project's brand seam.

The Brand category is the brand studio as four tools: brand_draft, brand_save, brand_get, and brand_apply. The order is the loop — draft → save → read → apply.

What a kit is

A brand kit is a name, a tagline, a voice in three adjectives, a five-to-seven colour palette, a Google Fonts pairing, and any logo assets. Every palette is contrast-checked against WCAG AA for its text pairs before it can be saved, and a failing one is refused with the offending pair named, so a kit that saved is a kit that reads.

The brand seam

brand_apply is the only tool that may write a project's brand files:

PathWhat lands there
src/brand/tokens.cssthe --brand-* CSS variables
src/brand/brand.jsonname, tagline, voice, logo paths
src/brand/fonts.cssthe allowlisted Google Fonts import
public/brand/the logo files

It writes those paths and nothing else. Every other path in the project is the Project category's business.

Two boundaries worth knowing

A kit is scoped to its owner. brand_get and brand_apply look a kit up by owner, so a kit that belongs to someone else returns the same not-found as one that does not exist. Neither tool is an id oracle.

A font family is checked against a committed allowlist before it can reach a generated CSS @import. A family name is model-authored text, and an arbitrary one in src/brand/fonts.css would be a request-forgery primitive against every viewer of the project.

On this page