Skip to main content
Bloom keeps one brand identity while the Brand Skill that represents it evolves. Each published Skill records exactly which version informed a result.

Evidence starts the brand

A brand can begin with an ordered mix of:
  • one public website;
  • one Instagram account; and
  • supporting files such as a brand guide, campaign brief, logo, or other brand files.
Optional instructions tell the Brand Agent what matters for that run. They can ask it to emphasize a source or add guidance needed by an integration, but they do not define a rigid output schema. See Create a brand for the API and MCP workflows.

The brand remains stable

A brand has one stable ID. Its current profile contains the identity needed by common interfaces, including its name, primary logo, favicon, palette, and typography. Creation runs asynchronously while Bloom examines the sources. A brand starts as analyzing and becomes usable for generation when its status is ready. A failed brand includes a machine-readable failure code and a message that can be shown to the user.

The active Skill holds the complete context

A Brand Skill contains:
  • the structured brand profile;
  • SKILL.md and supporting Markdown files describing the brand’s voice, visual language, messaging, imagery, and other evidence-backed guidance; and
  • references to the Brand Library assets used by those files.
Every published Skill is immutable and has its own skillId. The brand points to one active Skill. If that pointer changes later, the Brand ID stays the same and the new Skill has a new identity. Bloom automatically uses the active Skill during image generation. An application can also retrieve the complete active Skill and give that context to another system.
A Brand Skill describes one brand. The optional Bloom Skill instead teaches an agent how and when to use Bloom; it contains no brand data and does not connect the MCP server.

API and MCP expose the same system differently

The API is designed for application and server code. Its public REST endpoints, request fields, responses, and errors are defined by the live OpenAPI specification. MCP is designed for interactive agents. After connecting, the client asks Bloom for the tools and schemas available to that account. Tool availability can vary during a rollout, so the live tools/list response is canonical. See Available MCP tools. The interface changes how the work is invoked; it does not create a separate copy of the brand.