# Bloom > The brand layer for agents. Bloom turns your brand into a working system that powers everything you create. Available as a web app, REST API, and MCP server. Bloom is the brand layer: one place where a brand lives and evolves. Give it a website, social media, brand guides, briefs, logos, or other brand material. Bloom turns that context into a versioned Brand Skill—structured data and clear guidance that agents, applications, and people can use. As the brand changes, Bloom can publish a new version while keeping the brand itself in one place. A Brand Skill can equip any capable system creating on the brand's behalf, whether it is making images, slides, websites, video, documents, or something else. Bloom includes image creation and transformation today; in other workflows, Bloom supplies the brand context and the connected system creates the output. See [How Bloom works](https://docs.trybloom.ai/how-bloom-works). ## Product - [Features](https://www.trybloom.ai/features/): Generate, edit, resize, upload, 4K output, team collaboration — all on-brand - [Pricing](https://www.trybloom.ai/pricing/): Plus ($20/mo, 50 credits), Pro ($35/mo, 100 credits) - [Bloom for Claude](https://www.trybloom.ai/mcp/claude): Connect Bloom to claude.ai, Claude Desktop, Claude Code, and Cowork through one MCP endpoint - [FAQ](https://www.trybloom.ai/faq/): Frequently asked questions ## Docs - [Introduction](https://docs.trybloom.ai/introduction): What Bloom provides, current capabilities, and whether to begin with the API or MCP - [How Bloom works](https://docs.trybloom.ai/how-bloom-works): How source evidence becomes a brand that can evolve through versioned Brand Skills - [API quickstart](https://docs.trybloom.ai/api): Authenticate, select or create a brand, generate an image, and retrieve the result - [MCP quickstart](https://docs.trybloom.ai/mcp/getting-started): Connect an agent, create or select a brand, and generate an image - [Installable Bloom Skill](https://github.com/trybloomai/bloom-skills): Optional persistent guidance that teaches a compatible agent what Bloom is and when to use API or MCP - [Create a brand](https://docs.trybloom.ai/guides/create-brand): Source-first brand creation through the API or MCP - [Retrieve and use a Brand Skill](https://docs.trybloom.ai/guides/use-brand-skill): Server-side active Skill retrieval, caching, and errors - [Generate images](https://docs.trybloom.ai/guides/generate-images): On-brand API and MCP generation, references, models, and results - [Edit and adapt images](https://docs.trybloom.ai/guides/edit-adapt-images): Editing, resizing, background removal, and vectorization - [API overview](https://docs.trybloom.ai/api/openapi): Entry point to the complete public REST contract and live OpenAPI specification - [MCP tools](https://docs.trybloom.ai/mcp/tools): Generally available capabilities and live tool-discovery rules - [Docs index (llms.txt)](https://docs.trybloom.ai/llms.txt): Per-page index of every docs page in Markdown - [Docs full text (llms-full.txt)](https://docs.trybloom.ai/llms-full.txt): Entire docs site combined into a single file for LLM context - [OpenAPI spec](https://www.trybloom.ai/api/v1/spec.json): Live OpenAPI 3.1 spec — always reflects the running API ## Start by task - To assess whether Bloom fits a workflow, read the Introduction and How Bloom works. - To add Bloom to application or server code, use the API quickstart and live OpenAPI specification. - To operate Bloom from an MCP-compatible agent, use the MCP quickstart, then read the connected account's live tool schemas. - To keep Bloom guidance available across agent sessions, install the optional Bloom Skill, then follow the same API or MCP path. Installing it does not connect or authenticate Bloom. - To create brand context from evidence, use Create a brand. - To retrieve complete brand context for another system, use Retrieve and use a Brand Skill. - To create or transform images, use the relevant image guide and then the API or MCP reference for exact fields. ## API Base URL: https://www.trybloom.ai/api/v1 Authentication: include your API key in every request via either header: - x-api-key: your-api-key - Authorization: Bearer your-api-key Manage API keys at https://www.trybloom.ai/settings/api-keys Response format: `{ "data": ... }` on success, `{ "error": { "code": "...", "message": "..." } }` on error. The live OpenAPI specification is Bloom's public REST contract. Routes still changing in private beta are omitted until Bloom can support their schemas as stable contracts. To retrieve a brand's complete active Skill, including its structured profile and Markdown files, call `GET /brands/{id}/skill`. If the brand is still processing or has no active Skill, the endpoint returns `409 BRAND_SKILL_UNAVAILABLE`. Endpoint reference and schemas: see https://docs.trybloom.ai/api/openapi — task guides are indexed above and the full Markdown surface is at https://docs.trybloom.ai/llms-full.txt. ## MCP Server Bloom provides an MCP (Model Context Protocol) server for AI clients including Claude, Codex, Cursor, VS Code, and ChatGPT desktop. Streamable HTTP transport — no local server install required. MCP clients discover the tools and schemas currently available to the connected account through `tools/list`. The runtime result is the source of truth and can vary by account as capabilities roll out. The inventory below covers generally available tools; it is not the complete inventory for every account. Endpoint: https://www.trybloom.ai/api/mcp Optional persistent guidance for compatible agents: npx skills add https://docs.trybloom.ai --skill bloom The Bloom Skill teaches an agent how and when to use Bloom. It does not connect the MCP server, authenticate an account, or contain a customer-specific Brand Skill. ### Authentication - OAuth (default): most clients negotiate authentication automatically when given just the endpoint URL — sign in once with your Bloom account through the client's connector flow. - API key (fallback): for headless setups or clients that don't yet support OAuth, pass your key as `Authorization: Bearer your-api-key`. ### Setup by client Claude Code (CLI): claude mcp add --transport http bloom https://www.trybloom.ai/api/mcp Claude Code (.claude/mcp.json): { "mcpServers": { "bloom": { "type": "http", "url": "https://www.trybloom.ai/api/mcp" } } } Claude chat and desktop: open Settings → Connectors and paste https://www.trybloom.ai/api/mcp as a custom connector. Sign in with your Bloom account when prompted. ChatGPT desktop: open Settings → MCP servers, add a Streamable HTTP server using https://www.trybloom.ai/api/mcp, restart the app, then select Authenticate. ChatGPT on the web requires an installed workspace plugin; Bloom does not currently document a public web installation path. Cursor (.cursor/mcp.json): { "mcpServers": { "bloom": { "url": "https://www.trybloom.ai/api/mcp" } } } VS Code (.vscode/mcp.json): { "servers": { "bloom": { "type": "http", "url": "https://www.trybloom.ai/api/mcp" } } } Codex CLI: codex mcp add bloom --url https://www.trybloom.ai/api/mcp codex mcp login bloom Codex API key (~/.codex/config.toml or .codex/config.toml): [mcp_servers.bloom] url = "https://www.trybloom.ai/api/mcp" bearer_token_env_var = "BLOOM_API_KEY" Windsurf (~/.codeium/windsurf/mcp_config.json): { "mcpServers": { "bloom": { "serverUrl": "https://www.trybloom.ai/api/mcp" } } } ### API key authentication For non-OAuth clients or headless setups, add an Authorization header. Example (Cursor — pattern is the same for Claude Code, VS Code, and Windsurf): { "mcpServers": { "bloom": { "url": "https://www.trybloom.ai/api/mcp", "headers": { "Authorization": "Bearer your-api-key" } } } } ### Generally available MCP tools Images: - bloom_generate_image: Generate on-brand images with optional references and 1–5 variants - bloom_edit_image: Edit a previously generated or uploaded image using Bloom AI. - bloom_get_image: Check generation status and retrieve the result - bloom_list_images: List images with filtering and pagination - bloom_delete_images: Delete one or more images from the library - bloom_search_user_images: Semantic search over the brand's image library; returns ranked candidates (id, short URL, AI description) for use as references in bloom_generate_image - bloom_find_reference_ads: Semantic search over Bloom's curated library of real, high-performing brand ads. - bloom_resize_image: Resize an image to a different aspect ratio - bloom_remove_background: Strip the background from an image and return a transparent PNG - bloom_vectorize_image: Convert a raster image to a scalable SVG. Best for logos, icons, and flat illustrations - bloom_upload_image: Upload an image by URL for use as reference or edit subject - bloom_open_upload_ui: Open an inline file picker so the user can upload one or more local images to a brand session in a single batch. - bloom_create_image_upload_url: Mint 1–10 short-lived signed URLs for uploading local image files for use as references or edit subjects when a Bloom API key isn't directly accessible from your shell (e.g. when it lives inside an MCP client's config). Does not change the brand's logo. Brands: - bloom_onboard_brand: Create a brand from a website, Instagram account, files, or a combination; source-based inputs build a Brand Skill, while the compatibility logo_url input uses the older Visual DNA flow and can return logo_required; returns a Brand ID while processing continues - bloom_get_brand: Get a brand's details and onboarding status - bloom_list_brands: List all brands in your account - bloom_delete_brand: Delete a brand from your account - bloom_update_brand_logo: Update the logo when an older Visual DNA brand reports logo_required (URL-based, with upload paths for local logo files) - bloom_open_logo_upload_ui: Open an inline file picker so the user can upload a local file as a brand's primary logo. - bloom_create_logo_upload_url: Mint a short-lived signed URL for replacing a brand's primary logo file (triggers visual DNA re-analysis) when a Bloom API key isn't directly accessible from your shell. For non-logo images, use bloom_create_image_upload_url instead. - bloom_list_workspaces: List workspaces the caller can access. Credits: - bloom_check_credits: Check your remaining credit balance Account: - bloom_get_account: Show which Bloom account this session is connected to. ## Optional - [Terms of Service](https://www.trybloom.ai/terms/) - [Privacy Policy](https://www.trybloom.ai/privacy/) - [Careers](https://www.trybloom.ai/careers/): Open roles at Bloom - [Founding Product Engineer](https://www.trybloom.ai/careers/founding-product-engineer/): Engineer #2 at Bloom - [Founding Growth / Marketing](https://www.trybloom.ai/careers/founding-growth/): Bloom's first non-engineering hire — own the growth function