Skip to main content
Glama

BeautySpark MCP

Server Details

Color-season palettes, product picks and makeup looks from BeautySpark's guides

Ownership verified
Status
Healthy
Uptime
100.0% over the last 24 hours
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL
ChatGPT
–
Claude
–

TDQS

A3.6/5.0

Scored across 22 tools

Disambiguation4/5

Most tools target a distinct resource-and-action pair (guides vs. article looks vs. my looks vs. generations vs. palettes vs. try-on steps). The main soft spot is the parallel 'search/fetch' pair restricted to research modes alongside 'search_guides/get_guide' for chat, which an agent could plausibly mix up. Boundaries like save_my_look vs. save_generation_to_my_looks and get_color_season vs. list_my_palettes are clarified well enough by the descriptions.

Naming Consistency4/5

Nearly all tools follow a verb_noun pattern (get_guide, search_my_looks, save_my_look, delete_my_look, try_look_from_photo). The two bare-verb names 'search' and 'fetch' are the notable deviations and are also the most generic labels on the server. Overall the set reads predictably and consistently across the 22 tools.

Tool Count3/5

At 22 tools the surface is on the heavy side for the domain, and the mode-specific search/fetch duplicates add surface area that is unlikely to be used in ordinary chat interactions. Each tool maps to a real operation, but the set could plausibly be trimmed or consolidated.

Completeness4/5

The surface covers the core lifecycle well: discovering/reading guides and article looks, season palettes, product picks, full CRUD on My Looks, listing generations and saving them, and the complete try-on flow (prepare, confirm, status, upload). Minor gaps remain—no deletion or management of palettes, no product detail/search beyond season checks, and no profile update—but agents can work around these.

Available Tools

22 tools
check_product_for_seasonCheck a product against the BeautySpark picksA
Read-only
Inspect

Looks a product (and optional shade) up in BeautySpark's season picks. Returns the seasons it is recommended for, or match: null when BeautySpark has not reviewed it; then do not present any verdict as BeautySpark's. Pass season to also get that season's palette for comparison.

NameRequiredDescriptionDefault
shadeNoShade name, e.g. "Flambé".
localeNoThe user's language as a language tag, e.g. "de" or "pt-BR". Set it from the user's language. Defaults to English.
seasonNoColor season, e.g. "True Winter" or "true_winter". One of the 12 seasons.
productYesBrand and product name, e.g. "ILIA Overglaze".

Output Schema

NameRequiredDescription
matchYes
seasonPaletteNo
confirm_look_generationConfirm try-onA
Destructive
Inspect

Start the try-on prepared by try_look_from_photo. This spends the BeautySpark credits it quoted. The try-on widget calls it when the user presses Confirm. If no widget is showing, ask the user to confirm the cost first and call it only after they agree. Calling it again for the same quote returns the same job without charging again. If it answers conflict, the same quote is still being confirmed: call it again in a few seconds.

NameRequiredDescriptionDefault
quoteIdYesThe quoteId from try_look_from_photo.

Output Schema

NameRequiredDescription
jobIdYes
alreadyStartedYes
create_upload_urlCreate photo upload URLBInspect

Used by the try-on widget to upload a photo the user picked. Returns an upload URL valid for 15 minutes.

NameRequiredDescriptionDefault
contentTypeYes

Output Schema

NameRequiredDescription
headersYes
uploadIdYes
uploadUrlYes
delete_my_lookDelete my lookC
Destructive
Inspect

Delete a saved look from the user's BeautySpark My Looks. The look is removed.

NameRequiredDescriptionDefault
idYesA saved look id from search_my_looks.
fetchFetch BeautySpark content (research)A
Read-only
Inspect

For research modes (deep research, company knowledge). In chat, use get_guide instead. Returns the full text of one item from search: a guide section ("/#"), an article look ("look:") or a colour-season palette page ("season:").

NameRequiredDescriptionDefault
idYesAn id returned by search.
localeNoThe user's language as a language tag, e.g. "de" or "pt-BR". Set it from the user's language. Defaults to English.

Output Schema

NameRequiredDescription
idYes
urlYes
textYes
titleYes
metadataYes
find_article_looksFind article looksA
Read-only
Inspect

Find makeup looks shown in BeautySpark articles, filtered by color season, article type and words. With a season, looks made for that season come first; general looks (no season) follow and are labelled. Returns look ids for get_article_look and the article URL to cite.

NameRequiredDescriptionDefault
typeNoArticle type.
limitNo
queryNoWords to match against the look title, tags and image description, e.g. "smoky", "graphic liner".
localeNoThe user's language as a language tag, e.g. "de" or "pt-BR". Set it from the user's language. Defaults to English.
seasonNoColor season, e.g. "True Winter" or "true_winter". One of the 12 seasons.

Output Schema

NameRequiredDescription
looksYes
get_article_lookGet article lookA
Read-only
Inspect

Get the steps and shades of one makeup look from a BeautySpark article. The id is a look id returned by find_article_looks ("/images/blog//").

NameRequiredDescriptionDefault
idYesA look id from find_article_looks, e.g. "/images/blog/<article-slug>/<look-name>".
localeNoThe user's language as a language tag, e.g. "de" or "pt-BR". Set it from the user's language. Defaults to English.

Output Schema

NameRequiredDescription
idYes
urlYes
stepsYes
titleYes
shadesYes
webUrlYes
thumbnailUrlYes
get_color_seasonGet color season paletteA
Read-only
Inspect

BeautySpark's palette for one of the 12 color seasons: best, neutral and avoid colors with hex codes, plus the eye makeup and lips & cheeks advice from the season guide. Cite the returned URLs.

NameRequiredDescriptionDefault
localeNoThe user's language as a language tag, e.g. "de" or "pt-BR". Set it from the user's language. Defaults to English.
seasonYesColor season, e.g. "True Winter" or "true_winter". One of the 12 seasons.

Output Schema

NameRequiredDescription
langYes
adviceYes
seasonYes
guideUrlYes
swatchesYes
displayNameYes
get_guideRead a BeautySpark guide sectionA
Read-only
Inspect

Read one section of a BeautySpark guide in full, by an id from search_guides. Also lists the ids and headings of the other sections of the same article. Cite the returned url.

NameRequiredDescriptionDefault
idYesA section id returned by search_guides, e.g. "en/how-to-find-your-undertone#intro".

Output Schema

NameRequiredDescription
idYes
urlYes
langYes
textYes
titleYes
metadataYes
get_look_statusGet try-on statusA
Read-only
Inspect

Check a try-on started by confirm_look_generation. Waits up to waitSeconds (at most 25) for it to finish before answering. When completed, the result includes the image URL and, when the look has them, its step-by-step instructions with the colours for each step.

NameRequiredDescriptionDefault
jobIdYesThe jobId from confirm_look_generation.
waitSecondsNoSeconds to wait for completion before answering, 0 to 25. Use 25.

Output Schema

NameRequiredDescription
stepYes
jobIdYes
stepsNo
statusYes
afterUrlNo
progressYes
stepsNoteNo
nextPollMsYes
get_my_lookGet my lookA
Read-only
Inspect

Get one saved look in full: steps, products and shades, tags, categories, notes, photos and a link to open it in BeautySpark.

NameRequiredDescriptionDefault
idYesA saved look id from search_my_looks.

Output Schema

NameRequiredDescription
idYes
tagsYes
notesYes
stepsYes
titleYes
photosYes
webUrlYes
categoryYes
personIdYes
productsYes
createdAtYes
occasionsYes
updatedAtYes
categoriesYes
isFavouriteYes
sourceJobIdYes
inspirationUrlYes
intensityLevelYes
difficultyLevelYes
estimatedTotalTimeYes
get_my_profileGet my beauty profileA
Read-only
Inspect

The user's BeautySpark analysis: color season, undertone, eye shape, face shape and app language. Fields are null until the selfie analysis has been run in the app.

NameRequiredDescriptionDefault

No parameters

Output Schema

NameRequiredDescription
noteNo
seasonYes
eyeShapeYes
languageYes
faceShapeYes
undertoneYes
get_product_picksGet product picks for a color seasonB
Read-only
Inspect

BeautySpark's top product pick per category (blush, highlighter, eyeliner, lipstick, lip gloss, bronzer, eyeshadow palette) for a color season, each with the reason and the article it comes from.

NameRequiredDescriptionDefault
localeNoThe user's language as a language tag, e.g. "de" or "pt-BR". Set it from the user's language. Defaults to English.
seasonYesColor season, e.g. "True Winter" or "true_winter". One of the 12 seasons.
categoryNoOnly return picks of this category.

Output Schema

NameRequiredDescription
picksYes
seasonYes
list_my_generationsList my generationsA
Read-only
Inspect

The user's finished BeautySpark look generations, newest first: title, date, thumbnail and whether it is already in My Looks. Pass a jobId to save_generation_to_my_looks to save one.

NameRequiredDescriptionDefault
limitNoHow many to return (default 20).

Output Schema

NameRequiredDescription
generationsYes
list_my_palettesList my palettesA
Read-only
Inspect

The palettes the user scanned in BeautySpark, with shade names and hex colors. Use them to advise with products the user owns; pass a paletteId as a product's userPaletteId in save_my_look.

NameRequiredDescriptionDefault

No parameters

Output Schema

NameRequiredDescription
palettesYes
save_generation_to_my_looksSave a generation to My LooksAInspect

Save a finished BeautySpark generation (a jobId from list_my_generations) as a look in My Looks. Saving the same generation again returns the look already saved.

NameRequiredDescriptionDefault
jobIdYesA jobId from list_my_generations.

Output Schema

NameRequiredDescription
lookYes
createdYes
summaryYes
save_my_lookSave to My LooksAInspect

Save a new look to the user's BeautySpark My Looks. Photos can't be added from chat: if the user attached or mentions a photo, tell them before saving that only the text is saved and that they can add the photo in BeautySpark from the returned link. Repeating the same save within 10 minutes returns the first look instead of a copy.

NameRequiredDescriptionDefault
notesNoFree-text notes about the look.
stepsNoOrdered steps, first to last. Each step: instruction (required); title; area; positions = where on the eye, only when area is "eyes"; technique (free text); toolsNeeded = tool slugs from the allowed values only; intensity; estimatedTime in minutes (max 120); notes; productRefs = 0-based indexes into this look's products; shadeRefs = {productIndex, shadeIndex}, 0-based indexes into products and that product's shades. Leave photoAssetId and position unset.
titleYesShort name for the look, e.g. "Soft bronze smoky eye".
productsNoProducts used. Each: name (required); productType, e.g. "eyeshadow palette"; area; userPaletteId = the paletteId from list_my_palettes when it is a palette the user owns; shades = the pans used, each with name, hexColor (#RRGGBB) and position in the palette.
tagNamesNoTag names. A name the user already has reuses that tag; a new name creates one.
occasionsNoFree-text occasions, e.g. ["office", "wedding guest"].
personNameNoName of one of the user's persons in BeautySpark (exact name, any case). Leave it out unless the user names someone.
isFavouriteNoMark the look as a favourite.
categorySlugsNoCategories: preset slugs (everyday, work, date_night, evening, party, festival, wedding_guest, bridal, prom, holiday, vacation, photoshoot, editorial, no_makeup, smokey, glam, natural_glow, bold_color) or the names of the user's own categories.
inspirationUrlNoAn http(s) link to what inspired the look, kept as text. Never fetched.
intensityLevelNoHow strong the whole look is.
difficultyLevelNoHow hard the look is to do.
estimatedTotalTimeNoTime for the whole look, in minutes.

Output Schema

NameRequiredDescription
lookYes
createdYes
summaryYes
search_guidesSearch BeautySpark guidesA
Read-only
Inspect

Search BeautySpark's makeup and colour-season guides for sections that answer a question, e.g. eyeliner for hooded eyes or how to find your undertone. Returns up to 5 sections with a short snippet and a link; read one in full with get_guide. Cite the returned url. When nothing matches, the result has a note saying no BeautySpark guide covers it.

NameRequiredDescriptionDefault
typeNoOnly articles of this type.
limitNoResults to return, 1 to 5. Defaults to 5.
queryYesKeywords for the makeup or colour question, e.g. "eyeliner hooded eyes".
localeNoThe user's language as a language tag, e.g. "de" or "pt-BR". Set it from the user's language. Defaults to English.
seasonNoColor season, e.g. "True Winter" or "true_winter". One of the 12 seasons.

Output Schema

NameRequiredDescription
noteNo
resultsYes
search_my_looksSearch my looksA
Read-only
Inspect

Search the user's saved looks in BeautySpark My Looks by words, tag, category, favourite or person. Returns look ids for get_my_look.

NameRequiredDescriptionDefault
qNoText to find in look titles, notes, product, shade and palette names. Use tag for tags.
tagNoOnly looks with this tag name.
limitNoLooks per page (default 20).
cursorNonextCursor from the previous page.
personNoOnly looks for this person (exact name, any case).
categoryNoOnly looks in this category (preset slug or the user's own category name).
favouriteNotrue for favourites only.

Output Schema

NameRequiredDescription
looksYes
totalYes
nextCursorYes
try_look_from_photoTry a look from a photoAInspect

Prepare a try-on: BeautySpark recreates a makeup look on the user's selfie. Give one reference: articleLookId (from find_article_looks) or savedLookId (from search_my_looks). Photos (a reference photo or a different selfie) can only be uploaded in the try-on widget, never taken from chat attachments. The saved selfie is used unless the user uploads another in the widget. Returns the credit cost and balance without charging; nothing is generated until confirm_look_generation.

NameRequiredDescriptionDefault
savedLookIdNoA saved look id from search_my_looks, to try one of the user's own looks on.
selfiePhotoNoSet by the try-on widget in ChatGPT. Leave unset.
articleLookIdNoA look id from find_article_looks, to try that article look on.
referencePhotoNoSet by the try-on widget in ChatGPT. Leave unset.
selfieUploadIdNoSet by the try-on widget after an upload. Leave unset.
referenceUploadIdNoSet by the try-on widget after an upload. Leave unset.

Output Schema

NameRequiredDescription

No output parameters

update_my_lookUpdate my lookA
Destructive
Inspect

Change a saved look. Only the fields you send change; list fields (steps, products, tags, categories, occasions) replace the stored list whole. Look photos are kept. Steps can't be changed while any step has a photoUrl; the user edits those steps in the BeautySpark app. When the look's steps link products or shades, send productRefs and shadeRefs on every step you send ([] for a step with none): a step sent without them is refused unless products is sent too. To unlink every step, send products too.

NameRequiredDescriptionDefault
idYesA saved look id from search_my_looks.
notesNoFree-text notes about the look. Send null to clear it.
stepsNoOrdered steps, first to last. Each step: instruction (required); title; area; positions = where on the eye, only when area is "eyes"; technique (free text); toolsNeeded = tool slugs from the allowed values only; intensity; estimatedTime in minutes (max 120); notes; productRefs = 0-based indexes into this look's products; shadeRefs = {productIndex, shadeIndex}, 0-based indexes into products and that product's shades. Leave photoAssetId and position unset. Replaces the whole stored list, so send the complete list.
titleNoShort name for the look, e.g. "Soft bronze smoky eye".
productsNoProducts used. Each: name (required); productType, e.g. "eyeshadow palette"; area; userPaletteId = the paletteId from list_my_palettes when it is a palette the user owns; shades = the pans used, each with name, hexColor (#RRGGBB) and position in the palette. Replaces the whole stored list, so send the complete list. Send steps too, so their productRefs stay correct.
tagNamesNoTag names. A name the user already has reuses that tag; a new name creates one. Replaces the whole stored list, so send the complete list.
occasionsNoFree-text occasions, e.g. ["office", "wedding guest"]. Replaces the whole stored list, so send the complete list.
personNameNoName of one of the user's persons in BeautySpark (exact name, any case). Leave it out unless the user names someone. Send null to clear it.
isFavouriteNoMark the look as a favourite.
categorySlugsNoCategories: preset slugs (everyday, work, date_night, evening, party, festival, wedding_guest, bridal, prom, holiday, vacation, photoshoot, editorial, no_makeup, smokey, glam, natural_glow, bold_color) or the names of the user's own categories. Replaces the whole stored list, so send the complete list.
inspirationUrlNoAn http(s) link to what inspired the look, kept as text. Never fetched. Send null to clear it.
intensityLevelNoHow strong the whole look is.
difficultyLevelNoHow hard the look is to do.
estimatedTotalTimeNoTime for the whole look, in minutes.

Output Schema

NameRequiredDescription
lookYes
createdYes
summaryYes

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 22 tool updates
    • First observedcheck_product_for_season
    • First observedconfirm_look_generation
    • First observedcreate_upload_url
    • First observeddelete_my_look
    • First observedfetch
    • First observedfind_article_looks
    • First observedget_article_look
    • First observedget_color_season
    • First observedget_guide
    • First observedget_look_status
    • First observedget_my_look
    • First observedget_my_profile
    • First observedget_product_picks
    • First observedlist_my_generations
    • First observedlist_my_palettes
    • First observedsave_generation_to_my_looks
    • First observedsave_my_look
    • First observedsearch
    • First observedsearch_guides
    • First observedsearch_my_looks
    • First observedtry_look_from_photo
    • First observedupdate_my_look

Publisher details

Operator
BeautySpark · Publisher source
Vendor relationship
Not available
Restrictions
Most of the tools are free. The account-specific tools such as try-ons require a connected BeautySpark account.

Related MCP Servers

  • A
    license
    Not graded
    quality
    C
    maintenance
    Remote MCP server that lets AI assistants read tracked competitive intelligence — competitor news, reviews, website changes, social posts and ads — and act on it by managing projects, competitors, battle cards, reports and canvases. Every answer carries a source and a date, and write actions only publish when explicitly shared.
    MIT
  • A
    license
    A
    quality
    D
    maintenance
    Enables brand visibility monitoring across major AI platforms like ChatGPT, Claude, Gemini, and Perplexity. It allows users to track visibility scores, analyze competitor data, and receive actionable insights to improve AI-generated brand recommendations.
    16
    23 npm
    1
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Browse IndustryLens's published competitive-intelligence reports and head-to-head competitor comparisons from any AI agent — real, source-backed data.
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources