Skip to main content
Glama
Hermoso

Hermoso

Official

Draft profile

draft_brand
Destructive

Draft a brand profile from a domain, description, or social handle for ad planning and generation, then verify the returned name matches the intended brand before spending credits.

Instructions

Fill in a profile (a business brand or a creator) from a website domain, a free-text description, or a social handle, into a {name, products, logo, …} object you can pass to plan_ad / generate. 0 credits. IMPORTANT: a domain can resolve to a DIFFERENT company than intended (e.g. bala.com is an engineering firm, not the Bala fitness brand at shopbala.com). Before spending any credits on research or renders, VERIFY the returned name (and summary) match the brand the user meant; if it looks wrong, re-draft with the correct domain or a description (pass save:false until confirmed) — this tool cannot ask the user, so the caller owns that check.

Input Schema

NameRequiredDescriptionDefault
saveNosave onto the active profile (like Studio onboarding) so plan_ad/create use it automatically. Default: saves only when NO brand is saved yet; pass true to REPLACE the saved profile (the drafted fields overwrite the saved ones), false to never save
domainNoa website to scrape, or a social link (profile, YouTube channel or one post) to draft from the account it names
platformNosocialHandle platform: instagram/tiktok/youtube/twitter/threads
descriptionNoa free-text brand description (no website)
socialHandleNoa social handle (creators); needs platform, never guessed

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed3 schema fields changedv0.1.436
    • changedInput schema / properties / domain / description
      Previous value: -"a website to scrape"New value: +"a website to scrape, or a social link (profile, YouTube channel or one post) to draft from the account it names"
    • changedInput schema / properties / platform / description
      Previous value: -"platform for socialHandle (instagram/tiktok/…)"New value: +"socialHandle platform: instagram/tiktok/youtube/twitter/threads"
    • changedInput schema / properties / socialHandle / description
      Previous value: -"a social handle to draft from (influencers/creators) — pair with platform"New value: +"a social handle (creators); needs platform, never guessed"
  2. Changed1 schema field changedv0.1.374
    • changedInput schema / properties / save / description
      Previous value: -"save as the workspace’s brand (like Studio onboarding) so plan_ad/create use it automatically. Default: saves only when NO brand is saved yet; pass true to REPLACE the saved brand profile (the drafted fields overwrite the saved ones), false to never save"New value: +"save onto the active profile (like Studio onboarding) so plan_ad/create use it automatically. Default: saves only when NO brand is saved yet; pass true to REPLACE the saved profile (the drafted fields overwrite the saved ones), false to never save"
  3. Changed1 schema field changedv0.1.366
    • changedInput schema / properties / save / description
      Previous value: -"save as the workspace’s brand (like Studio onboarding) so plan_ad/create use it automatically. Default: saves only when NO brand is saved yet; pass true to overwrite, false to never save"New value: +"save as the workspace’s brand (like Studio onboarding) so plan_ad/create use it automatically. Default: saves only when NO brand is saved yet; pass true to REPLACE the saved brand profile (the drafted fields overwrite the saved ones), false to never save"
  4. Changed1 schema field changedv0.1.161
    • changedOutput schema / (root)
      Previous value: -{
      -  "$schema": "http://json-schema.org/draft-07/schema#",
      -  "additionalProperties": false,
      -  "properties": {
      -    "category": {
      -      "description": "the detected category",
      -      "type": "string"
      -    },
      -    "domain": {
      -      "description": "the brand website domain (empty for non-website drafts)",
      -      "type": "string"
      -    },
      -    "logo": {
      -      "description": "the detected logo URL",
      -      "type": "string"
      -    },
      -    "name": {
      -      "description": "the drafted brand name — VERIFY it matches the brand the user meant",
      -      "type": "string"
      -    },
      -    "palette": {
      -      "description": "the brand colors",
      -      "items": {},
      -      "type": "array"
      -    },
      -    "productImages": {
      -      "description": "product photo URLs",
      -      "items": {},
      -      "type": "array"
      -    },
      -    "products": {
      -      "description": "the detected products"
      -    },
      -    "sells": {
      -      "description": "what the brand sells"
      -    },
      -    "summary": {
      -      "description": "a short positioning summary",
      -      "type": "string"
      -    }
      -  },
      -  "type": "object"
      -}New value: +null
  5. First observedv0.1.0

TDQS

A4.2/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Adds substantial context beyond the annotations: 0 credits, save=true overwrites the saved profile while default only saves when none exists, the tool cannot ask the user so the caller owns verification, and domain-based resolution can silently hit the wrong company. This meaningfully elaborates the destructiveHint=true / idempotentHint=false profile the annotations only imply.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with purpose, cost, and the verification warning in that order, with no filler sentences. The bala.com example costs a clause but is concrete and earns its space; slightly denser than it needs to be with parenthetical asides.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema exists, and the description compensates by sketching the returned object ({name, products, logo, …}) and naming the two fields to verify. Field-level detail of the full returned profile is missing, but the essential decision-relevant output information is present for a 5-param, all-optional tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3; the description still adds operational meaning to save (pass false until confirmed) and to the domain-vs-description fallback path. It also clarifies that the returned name/summary are the artifacts to inspect, which the schema does not express.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource: drafts a profile object from a domain, free-text description, or social handle, and names the downstream consumers (plan_ad / generate). It does not explicitly distinguish itself from near-siblings like create_brand, get_brand, or use_brand, which an agent may confuse with 'draft' when a profile is then saved.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives concrete when-to guidance: use before spending credits on research or renders, and pass save:false until the returned identity is confirmed. It does not name alternative tools (e.g. get_brand to fetch an existing profile, create_brand to start from scratch), leaving that comparison to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Deploy Server

Other Tools