# Brand Finder: agent guide

Top 10 brands in each category, built from ListeningMind search data. The Korean edition breaks them down by generation and gender; the Japanese and US editions by category only. For the top 10 brands in 65 categories (64 in the US), it shows search volume, change, rising momentum, 3-year change, and how AI recognises their Distinctive Brand Assets (DBA).

## Connect
- MCP: `https://daas-brand.listeningmind.ai/mcp` (Streamable HTTP). Start with `app_guide`.
- Browser agents: tools are registered on every page through WebMCP (`document.modelContext`).
- REST: `https://daas-brand.listeningmind.ai/.well-known/openapi.json`

## Approval
- read and action tools run at once.
- run and delete tools need a person's approval. Over MCP the tool returns `confirm_url`; show it to the person, then call `confirmation_status` with the token until state is done.
- In the browser the page shows the person a confirm box.

## Workflow
1. `get_brand_profile` (read): Check for a stored profile first. Find the genre id and brand name on the market page.
2. `build_brand_profile` (run): If state is none, confirm with the person and build the profile.
3. `get_brand_profile` (read): Read again until state is done.
4. `list_profile_jobs` (read): If it takes long, check the build jobs.

## Inputs
Market (kr / jp / us page), then a genre and a brand. Profile tools take cc (market), g (genre id) and n (brand name as listed in the databank).

## Outputs
Pages: generation view (Korea) or field ranking (Japan, US), rising brands, genre view, 3-year change, selection rules, method and limits. Profile: brand plus asset-word search volume, SERP / AI Overview evidence, asset candidates by type, AI answer test (Gemini, OpenAI), synthetic panel and Taste Finder link, competitors.

## Cost and time
Reading the databank pages and stored profiles is free. Building a profile for a brand opened for the first time costs about 100 Data API credits plus several Gemini / OpenAI calls and takes 1-2 minutes.

## Limits
Databank rankings have no separate API; they are in the market pages (/, /jp/, /us/). Profiles can only be built for brands listed in the databank (others return 404 unknown), and at most 2 builds run at once. The AI answer test and synthetic panel are not consumer responses. Data is refreshed every two months. Page text is mostly Korean.

## Method (how the analysis works)
1. Build a brand databank of 65 genres (64 in the US) from ListeningMind search data: by generation in Korea, by field in Japan and the US.
2. Put brand search volume, change, rising brands and 3-year change on the pages, refreshed every two months.
3. When a brand is opened, measure brand plus asset-word search volumes and read stored SERP and AI Overview evidence.
4. Extract distinctive brand asset (DBA) candidates with an LLM, each tied to evidence numbers.
5. Repeat an AI answer test on Gemini and OpenAI and store the profile.

## Reading the result
- assets lists the asset candidates (colour, shape, logo, character, celebrity, tagline, sound, font, pack) with type and evidence.
- salience is the search salience of brand plus asset words; the evidence lines are the SERP and AI Overview support.
- ai.result and ai.baseline.fame come from the AI answer test on Gemini and OpenAI; they are not consumer responses.
- competitors lists competing brands; credits and secs record the build cost and time.
- Rankings (generation or field view, rising brands, 3-year change) are only on the market pages, not in the API.

## Requests this app answers well
- Which cosmetics brands do people in their 20s in Korea search for most
- Which beverage brands are rising in Japan right now
- List this brand's distinctive asset candidates (colour, logo, character and so on) with search evidence
- Show whether AI identifies this brand from its assets in the answer test

## Continue in another app
- [ICSS](https://daas-icss.listeningmind.ai/llms.txt) (MCP `https://daas-icss.listeningmind.ai/mcp`): When you want to test the asset candidates in a distinctive brand asset (DBA) recognition test. Carry: The brand, aliases, competitors and the asset candidates rewritten as masked descriptions without the brand name.
- [Taste Finder](https://daas-taste.listeningmind.ai/llms.txt) (MCP `https://daas-taste.listeningmind.ai/mcp`): When you want the sensory and emotional words people use to choose the brand or its genre. Carry: The brand name (or the genre keyword) and market as the keyword.

## Using the screens (browser agents)
- `describe_screen`: menus, tabs, fields and buttons of the current screen, and what the page is for
- `go_to`: open a menu or page of this app by its label or path
- `fill_field`: type a value into a field by its label (never presses run; runs go through the run tools, which ask the person)
- `read_this_page`: the text and ids of what the person is looking at

## The ListeningMind apps (same account, same tools, call any of them)
Each app has `/mcp`, `/llms.txt`, `/agents.md` and WebMCP on its pages. `family_apps` and `recommend_app` return this list with addresses.
- [ACO](https://daas-aco.listeningmind.ai/llms.txt): Diagnoses whether a product detail page can be cited by AI answers and used by shopping agents (MCP `https://daas-aco.listeningmind.ai/mcp`)
- [AOO](https://daas-aoo.listeningmind.ai/llms.txt): Measures whether AI agents can get real tasks done on a website (MCP `https://daas-aoo.listeningmind.ai/mcp`)
- [Brand Naming Agent](https://daas-naming.listeningmind.ai/llms.txt): Creates and checks brand name candidates grounded in search data (MCP `https://daas-naming.listeningmind.ai/mcp`)
- [Brand Wiki](https://daas-wiki.listeningmind.ai/llms.txt): Turns a brand website into the entities, wiki pages and evidence AI assistants read (MCP `https://daas-wiki.listeningmind.ai/mcp`)
- [CEP Finder](https://daas-cep.listeningmind.ai/llms.txt): In which situations do people start looking for this category (category entry point map) (MCP `https://daas-cep.listeningmind.ai/mcp`)
- [Creative Finder](https://daas-creative.listeningmind.ai/llms.txt): Finds purchase situations (CEP) in search data and drafts a creative, an image and a video for each (MCP `https://daas-creative.listeningmind.ai/mcp`)
- [Demand Forecast](https://daas-forecast.listeningmind.ai/llms.txt): What category demand looks like in the next 3-6 months and when to launch or campaign (MCP `https://daas-forecast.listeningmind.ai/mcp`)
- [Funnel Leak Finder](https://daas-funnel.listeningmind.ai/llms.txt): Where category search journeys leak to competitors (MCP `https://daas-funnel.listeningmind.ai/mcp`)
- [GEO Audit](https://daas-geo.listeningmind.ai/llms.txt): Checks whether a web page is ready to be read and cited by search engines and AI answer engines (MCP `https://daas-geo.listeningmind.ai/mcp`)
- [ICSS](https://daas-icss.listeningmind.ai/llms.txt): Synthetic consumer panel conditioned on search intent, for surveys and FGDs (MCP `https://daas-icss.listeningmind.ai/mcp`)
- [Intent KG](https://daas-intent.listeningmind.ai/llms.txt): What people look for about a topic, why, and how they choose (Intent Knowledge Graph) (MCP `https://daas-intent.listeningmind.ai/mcp`)
- [Prompt Builder](https://daas-prompt.listeningmind.ai/llms.txt): Finds what consumers ask AI and builds managed brand prompts with AI visibility (MCP `https://daas-prompt.listeningmind.ai/mcp`)
- [Pulse Finder](https://daas-pulse.listeningmind.ai/llms.txt): What is rising in search for a gender and age segment right now (MCP `https://daas-pulse.listeningmind.ai/mcp`)
- [Smart Store Suite](https://daas-store.listeningmind.ai/llms.txt): Which Smart Store products to grow, and how to rewrite their titles and detail pages in searchers' words (MCP `https://daas-store.listeningmind.ai/mcp`)
- [Taste Finder](https://daas-taste.listeningmind.ai/llms.txt): In what sensory and emotional words do people choose this (consumer taste report from search data) (MCP `https://daas-taste.listeningmind.ai/mcp`)
- [ListeningMind Data API](https://daas.listeningmind.ai/llms.txt): the search data behind every app (MCP `https://daas.listeningmind.ai/mcp`) · [glossary](https://daas.listeningmind.ai/en/glossary) · [all apps](https://daas.listeningmind.ai/en/apps)

## All tools
### get_brand_profile
Returns the stored brand asset profile for one databank brand: {state: done, profile} with search salience of brand plus asset words, SERP / AI Overview evidence lines, distinctive brand asset candidates (colour, shape, logo, character, celebrity, tagline, sound, font, pack), AI answer test results (Gemini and OpenAI, not consumers), synthetic panel and Taste Finder link when they exist, competitors, credits and build time. Other states: running {step}, none (never built), error, unknown (brand not in the databank, HTTP 404). Free. Repeat while state is running. Read only, free. Waits up to about 45 s for 'state' to reach done, error, none, unknown; call again if not done. Usually followed by: build_brand_profile.
`GET /api/profile`
- `cc` (required): Market of the databank: kr, jp or us. On the /jp/ and /us/ pages it is taken from the URL.
- `g` (required): Genre id the brand is listed under. KR ids: apparel, shoes, bag, watch, outdoor, athleisure, makeup, skincare, hair, hairneeds, aesthetic, supplement, drink, detergent, pet, coffee, burger, chicken, bakery, cvs, ramen, delivery, beer, soju, whisky, wine, trad, carmodel, carbrand, ev, usedcar, mobility, music, kpop, game, ott, character, travel, hotel, ota, airline, sports, shopping, interest, seniortopic, hearing, healthdev, parkgolf, golf, homeshop, securities, aichat, aichar, aitool, aitopic, collab, hr, hrm, erp, crm, esign, pg, cloud, smb. JP adds gyudon, sushi, sake, chuhai, jidol, vtuber (no hairneeds, chicken, soju, trad, parkgolf); US adds chicken, pizza, fastcasual, seltzer, spirits (no hairneeds, soju, trad, parkgolf).
- `n` (required): Brand name exactly as listed in that market's databank, in the local script (e.g. 유니클로 for kr, ユニクロ for jp, Uniqlo for us).

### build_brand_profile
Builds the asset profile for a databank brand in the background: brand plus asset-word search volumes, stored SERP and AI Overview evidence, LLM extraction of asset candidates tied to evidence numbers, and a repeated AI answer test on Gemini and OpenAI. Returns {state: running} (HTTP 202), or the stored profile when one exists and force is false. Poll get_brand_profile. About 100 Data API credits plus several LLM calls, 1-2 minutes. Only brands listed in the databank are accepted. Visitors who are not signed in can build too (the app caps visitor builds at 5 per IP and 40 in total per hour; over that it answers HTTP 429 {state: busy}). Rebuilding a stored profile with force=true is for signed-in members only. Spends ListeningMind Data API credits or paid model calls. Over MCP a person approves it first (you get a confirm link); in the browser the page asks the person. Cost: free; built on first open for anyone and cached for everyone (visitor builds capped per IP and per hour). Time: 1-2 minutes. Usually followed by: get_brand_profile.
`POST /api/profile`
- `cc` (required): Market of the databank: kr, jp or us. On the /jp/ and /us/ pages it is taken from the URL.
- `g` (required): Genre id the brand is listed under. KR ids: apparel, shoes, bag, watch, outdoor, athleisure, makeup, skincare, hair, hairneeds, aesthetic, supplement, drink, detergent, pet, coffee, burger, chicken, bakery, cvs, ramen, delivery, beer, soju, whisky, wine, trad, carmodel, carbrand, ev, usedcar, mobility, music, kpop, game, ott, character, travel, hotel, ota, airline, sports, shopping, interest, seniortopic, hearing, healthdev, parkgolf, golf, homeshop, securities, aichat, aichar, aitool, aitopic, collab, hr, hrm, erp, crm, esign, pg, cloud, smb. JP adds gyudon, sushi, sake, chuhai, jidol, vtuber (no hairneeds, chicken, soju, trad, parkgolf); US adds chicken, pizza, fastcasual, seltzer, spirits (no hairneeds, soju, trad, parkgolf).
- `n` (required): Brand name exactly as listed in that market's databank, in the local script (e.g. 유니클로 for kr, ユニクロ for jp, Uniqlo for us).
- `force`: Rebuild even when a stored profile exists (spends credits and LLM calls again). false returns the stored profile unchanged. A rebuild uses fresh LLM and AI-answer samples, so assets and AI test scores can differ from the previous build. Signed-in members only.

### refresh_brand_visuals
Looks up again the logo, person photos and colours of a stored brand asset profile from public sources (Wikidata, Wikimedia Commons, the official site) with one LLM check. Returns {state: running} (HTTP 202), or {state: busy} (HTTP 429; visitors are capped at 20 per IP per hour). Poll get_brand_visuals. Free: no Data API credits, and no Lima is charged. Spends ListeningMind Data API credits or paid model calls. Over MCP a person approves it first (you get a confirm link); in the browser the page asks the person. Cost: free (no Data API credits; Wikidata, Commons and the official site plus one LLM check; visitors capped at 20 per IP per hour). Usually followed by: get_brand_visuals.
`POST /api/profile/visuals`
- `cc` (required): Market of the databank: kr, jp or us. On the /jp/ and /us/ pages it is taken from the URL.
- `g` (required): Genre id the brand is listed under. KR ids: apparel, shoes, bag, watch, outdoor, athleisure, makeup, skincare, hair, hairneeds, aesthetic, supplement, drink, detergent, pet, coffee, burger, chicken, bakery, cvs, ramen, delivery, beer, soju, whisky, wine, trad, carmodel, carbrand, ev, usedcar, mobility, music, kpop, game, ott, character, travel, hotel, ota, airline, sports, shopping, interest, seniortopic, hearing, healthdev, parkgolf, golf, homeshop, securities, aichat, aichar, aitool, aitopic, collab, hr, hrm, erp, crm, esign, pg, cloud, smb. JP adds gyudon, sushi, sake, chuhai, jidol, vtuber (no hairneeds, chicken, soju, trad, parkgolf); US adds chicken, pizza, fastcasual, seltzer, spirits (no hairneeds, soju, trad, parkgolf).
- `n` (required): Brand name exactly as listed in that market's databank, in the local script (e.g. 유니클로 for kr, ユニクロ for jp, Uniqlo for us).

### get_brand_visuals
State and result of refresh_brand_visuals for one brand: {state: none|running|done|error, result}. Free. Repeat while state is running. Read only, free. Waits up to about 45 s for 'state' to reach done, error, none; call again if not done.
`GET /api/profile/visuals`
- `cc` (required): Market of the databank: kr, jp or us. On the /jp/ and /us/ pages it is taken from the URL.
- `g` (required): Genre id the brand is listed under. KR ids: apparel, shoes, bag, watch, outdoor, athleisure, makeup, skincare, hair, hairneeds, aesthetic, supplement, drink, detergent, pet, coffee, burger, chicken, bakery, cvs, ramen, delivery, beer, soju, whisky, wine, trad, carmodel, carbrand, ev, usedcar, mobility, music, kpop, game, ott, character, travel, hotel, ota, airline, sports, shopping, interest, seniortopic, hearing, healthdev, parkgolf, golf, homeshop, securities, aichat, aichar, aitool, aitopic, collab, hr, hrm, erp, crm, esign, pg, cloud, smb. JP adds gyudon, sushi, sake, chuhai, jidol, vtuber (no hairneeds, chicken, soju, trad, parkgolf); US adds chicken, pizza, fastcasual, seltzer, spirits (no hairneeds, soju, trad, parkgolf).
- `n` (required): Brand name exactly as listed in that market's databank, in the local script (e.g. 유니클로 for kr, ユニクロ for jp, Uniqlo for us).

### list_profile_jobs
Lists profile builds started since the server last restarted, keyed by market/genre/hash: {state, step, started, ended, cc, g, n, error}. At most 2 builds run at the same time. Free. Read only, free.
`GET /api/profile/jobs`

