10ML Perfume Finder
Free perfume MCP server and fragrance API: 5,400+ perfumes, note pyramids, accords, similar scents.
我該用這個嗎
品質與安全性
根據工具定義與協定合規性的自動化分析。
上下文成本
這是每次將伺服器的工具載入模型上下文時所消耗的約略 token 數量。數量越高,可用於其他工作的注意力就越少。
安裝
一鍵安裝
將以下內容加入你的 `claude_desktop_config.json` 檔案:
{
"mcpServers": {
"perfume-finder": {
"command": "npx",
"args": [
"@10ml/perfume-finder-mcp"
]
}
}
}可執行的套件
2.3.4stdio2.3.4stdio遠端端點
https://mcp.10ml.com/mcpstreamable-http它能做什麼
工具清單
工具(15)
🟢search_perfumes(query, house, notes_include, notes_exclude, accords, ...)
Search the 10ML Fragrance Index for perfumes by name, house, notes, accords, family, audience, season, occasion or style. Natural language works: 'fresh citrus summer scent for men' is understood. Set iconic to true for only the editors' iconic, era-defining classics ('must-know perfumes for her', 'iconic winter scents'). Use when someone describes what they want or names a perfume or house and you need matching perfumes. Not for the full profile of one known perfume (use get_perfume), not for 'something like X' (use find_similar_perfumes) and not for dupes or alternatives to a famous perfume (use find_perfume_alternatives). Returns ranked perfumes with house, year, family, accords, key notes, an editorial character line and 10ml.com links.
輸入結構描述
{
"type": "object",
"properties": {
"query": {
"description": "Free text: a perfume name, house, notes or mood. Examples: \"fresh citrus summer for men\", \"Tom Ford tobacco\", \"vanilla gourmand for winter\"",
"type": "string",
"maxLength": 200
},
"house": {
"description": "Only perfumes from this house. Examples: \"Dior\", \"Maison Francis Kurkdjian\", \"MFK\", \"YSL\"",
"type": "string",
"maxLength": 80
},
"notes_include": {
"description": "Every listed note must be present. Examples: [\"oud\",\"rose\"], [\"vanilla\"]",
"maxItems": 8,
"type": "array",
"items": {
"type": "string",
"maxLength": 60
}
},
"notes_exclude": {
"description": "None of these notes may be present. Example: [\"patchouli\"]",
"maxItems": 8,
"type": "array",
"items": {
"type": "string",
"maxLength": 60
}
},
"accords": {
"description": "Accords that must be present. Examples: [\"woody\",\"sweet\"], [\"fresh\",\"aquatic\"]",
"maxItems": 6,
"type": "array",
"items": {
"type": "string",
"maxLength": 40
}
},
"family": {
"description": "Fragrance family: fougere, chypre, oriental-amber, gourmand, aquatic, aromatic, woody, floral, white-floral, fruity, citrus, green, leather, oud, musky, powdery, spicy, tobacco-boozy, smoky-incense, aldehydic-floral, mineral, fresh-spicy-woody, tea-zen. Also accepts words like \"amber\" or \"citrus\".",
"type": "string",
"maxLength": 40
},
"gender": {
"description": "Audience the perfume is marketed to. men and women also include unisex perfumes.",
"type": "string",
"enum": [
"men",
"women",
"unisex"
]
},
"season": {
"description": "Season the perfume suits (fall is accepted in text queries as autumn).",
"type": "string",
"enum": [
"spring",
"summer",
"autumn",
"winter"
]
},
"occasion": {
"description": "Occasion the perfume suits: daytime, office, casual, evening, date night or special occasion.",
"type": "string",
"enum": [
"daytime",
"office",
"casual",
"evening",
"date night",
"special occasion"
]
},
"style": {
"description": "A style word: aquatic, boozy, clean, creamy, dark, floral, fresh, citrusy, fruity, gourmand, green, leathery, musky, powdery, sensual, smoky, spicy, sweet, woody.",
"type": "string",
"enum": [
"aquatic",
"boozy",
"clean",
"creamy",
"dark",
"floral",
"fresh",
"citrusy",
"fruity",
"gourmand",
"green",
"leathery",
"musky",
"powdery",
"sensual",
"smoky",
"spicy",
"sweet",
"woody"
]
},
"iconic": {
"description": "true = only the editors' iconic, era-defining classics (works with every other filter, and without a query)",
"type": "boolean"
},
"limit": {
"default": 8,
"description": "How many results per page (1-20, default 8).",
"type": "integer",
"minimum": 1,
"maximum": 20
},
"cursor": {
"description": "next_cursor from the previous page; omit for the first page.",
"type": "string",
"maxLength": 64
},
"response_format": {
"description": "concise (default) or detailed (adds note pyramid, seasons, occasions, longevity, projection).",
"default": "concise",
"type": "string",
"enum": [
"concise",
"detailed"
]
},
"locale": {
"description": "Language of the 10ml.com links and labels. Perfume, house and note names stay as they are.",
"default": "en",
"type": "string",
"enum": [
"en",
"de",
"fr",
"es",
"it",
"ro",
"el",
"hu",
"cs",
"pl"
]
}
}
}輸出結構描述
{
"type": "object",
"properties": {
"total": {
"type": "number"
},
"next_cursor": {
"type": "string"
},
"message": {
"type": "string"
},
"results": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"house": {
"type": "string"
},
"year": {
"type": "number"
},
"gender": {
"type": "string",
"enum": [
"men",
"women",
"unisex"
]
},
"family": {
"type": "string"
},
"accords": {
"type": "array",
"items": {
"type": "string"
}
},
"key_notes": {
"type": "array",
"items": {
"type": "string"
}
},
"character": {
"type": "string"
},
"links": {
"type": "array",
"items": {
"type": "object",
"properties": {
"type": {
"type": "string",
"enum": [
"try",
"guide",
"note"
]
},
"title": {
"type": "string"
},
"url": {
"type": "string"
}
},
"required": [
"type",
"title",
"url"
]
}
},
"profile": {
"type": "string",
"enum": [
"full",
"core"
]
},
"concentration": {
"type": "string"
},
"pyramid": {
"type": "object",
"properties": {
"top": {
"type": "array",
"items": {
"type": "string"
}
},
"heart": {
"type": "array",
"items": {
"type": "string"
}
},
"base": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"top",
"heart",
"base"
]
},
"seasons": {
"type": "array",
"items": {
"type": "string"
}
},
"occasions": {
"type": "array",
"items": {
"type": "string"
}
},
"styles": {
"type": "array",
"items": {
"type": "string"
}
},
"longevity": {
"type": "number"
},
"projection": {
"type": "number"
},
"perfumers": {
"type": "array",
"items": {
"type": "string"
}
},
"other_versions": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"id",
"name",
"house",
"gender",
"family",
"accords",
"key_notes",
"character",
"links",
"profile"
]
}
},
"filters": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {
"type": "string"
}
},
"relaxed": {
"type": "boolean"
},
"source": {
"type": "string"
}
},
"required": [
"total",
"results",
"filters",
"relaxed",
"source"
]
}🟢get_perfume(perfume, house, response_format, locale)
The full Fragrance Index profile of one perfume: house, launch year, audience, family, accords, note pyramid (top, heart and base notes), best seasons and occasions, longevity, projection and perfumers (full profiles), the editors' character description, five similar perfumes, editorial alternatives from other houses when they exist, related 10ML guides and links. Use when you know which perfume is meant and need facts about it ('tell me about Aventus', 'what notes are in Delina', 'what does Baccarat Rouge 540 smell like'). Not for browsing (use search_perfumes), not for comparing two or more (use compare_perfumes). Unknown names return the closest matches.
輸入結構描述
{
"type": "object",
"properties": {
"perfume": {
"type": "string",
"maxLength": 120,
"description": "A perfume by name, optionally with its house, e.g. \"Baccarat Rouge 540\", \"Dior Sauvage\", \"Delina\". An id from another tool also works, e.g. \"creed-aventus\"."
},
"house": {
"description": "House, when the name alone is ambiguous. Example: \"Creed\"",
"type": "string",
"maxLength": 80
},
"response_format": {
"description": "concise (default) or detailed (adds note pyramid, seasons, occasions, longevity, projection).",
"default": "concise",
"type": "string",
"enum": [
"concise",
"detailed"
]
},
"locale": {
"description": "Language of the 10ml.com links and labels. Perfume, house and note names stay as they are.",
"default": "en",
"type": "string",
"enum": [
"en",
"de",
"fr",
"es",
"it",
"ro",
"el",
"hu",
"cs",
"pl"
]
}
},
"required": [
"perfume"
]
}輸出結構描述
{
"type": "object",
"properties": {
"found": {
"type": "boolean"
},
"exact": {
"type": "boolean"
},
"perfume": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"house": {
"type": "string"
},
"year": {
"type": "number"
},
"gender": {
"type": "string",
"enum": [
"men",
"women",
"unisex"
]
},
"family": {
"type": "string"
},
"accords": {
"type": "array",
"items": {
"type": "string"
}
},
"key_notes": {
"type": "array",
"items": {
"type": "string"
}
},
"character": {
"type": "string"
},
"links": {
"$ref": "#/$defs/d1"
},
"profile": {
"type": "string",
"enum": [
"full",
"core"
]
},
"concentration": {
"type": "string"
},
"pyramid": {
"type": "object",
"properties": {
"top": {
"type": "array",
"items": {
"type": "string"
}
},
"heart": {
"type": "array",
"items": {
"type": "string"
}
},
"base": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"top",
"heart",
"base"
]
},
"seasons": {
"type": "array",
"items": {
"type": "string"
}
},
"occasions": {
"type": "array",
"items": {
"type": "string"
}
},
"styles": {
"type": "array",
"items": {
"type": "string"
}
},
"longevity": {
"type": "number"
},
"projection": {
"type": "number"
},
"perfumers": {
"type": "array",
"items": {
"type": "string"
}
},
"other_versions": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"id",
"name",
"house",
"gender",
"family",
"accords",
"key_notes",
"character",
"links",
"profile"
]
},
"house_info": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"country": {
"type": "string"
},
"type": {
"type": "string"
},
"style": {
"type": "string"
}
},
"required": [
"name",
"type",
"style"
]
},
"similar": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"house": {
"type": "string"
},
"closeness": {
"type": "string",
"enum": [
"very close",
"similar vibe",
"same spirit"
]
},
"shared_notes": {
"type": "array",
"items": {
"type": "string"
}
},
"url": {
"type": "string"
}
},
"required": [
"id",
"name",
"house",
"closeness",
"shared_notes",
"url"
]
}
},
"alternatives": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"house": {
"type": "string"
},
"closeness": {
"type": "string",
"enum": [
"very close",
"similar vibe",
"same spirit"
]
},
"why": {
"type": "string"
},
"id": {
"type": "string"
}
},
"required": [
"name",
"closeness",
"why"
]
}
},
"guides": {
"$ref": "#/$defs/d1"
},
"suggestions": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"house": {
"type": "string"
},
"year": {
"type": "number"
},
"gender": {
"type": "string",
"enum": [
"men",
"women",
"unisex"
]
},
"family": {
"type": "string"
},
"accords": {
"type": "array",
"items": {
"type": "string"
}
},
"key_notes": {
"type": "array",
"items": {
"type": "string"
}
},
"character": {
"type": "string"
},
"links": {
"$ref": "#/$defs/d1"
},
"profile": {
"type": "string",
"enum": [
"full",
"core"
]
},
"concentration": {
"type": "string"
},
"pyramid": {
"type": "object",
"properties": {
"top": {
"type": "array",
"items": {
"type": "string"
}
},
"heart": {
"type": "array",
"items": {
"type": "string"
}
},
"base": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"top",
"heart",
"base"
]
},
"seasons": {
"type": "array",
"items": {
"type": "string"
}
},
"occasions": {
"type": "array",
"items": {
"type": "string"
}
},
"styles": {
"type": "array",
"items": {
"type": "string"
}
},
"longevity": {
"type": "number"
},
"projection": {
"type": "number"
},
"perfumers": {
"type": "array",
"items": {
"type": "string"
}
},
"other_versions": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"id",
"name",
"house",
"gender",
"family",
"accords",
"key_notes",
"character",
"links",
"profile"
]
}
},
"message": {
"type": "string"
},
"source": {
"type": "string"
}
},
"required": [
"found",
"exact",
"source"
],
"$defs": {
"d1": {
"type": "array",
"items": {
"type": "object",
"properties": {
"type": {
"type": "string",
"enum": [
"try",
"guide",
"note"
]
},
"title": {
"type": "string"
},
"url": {
"type": "string"
}
},
"required": [
"type",
"title",
"url"
]
}
}
}
}🟢compare_perfumes(perfumes, response_format, locale)
Compare 2 to 4 perfumes side by side: notes they share, notes only one has, accords, family, audience, launch year, longevity and projection, plus plain-language differences ('A is fresher, B is sweeter and lasts longer') and how close they are overall. Use when someone is choosing between named perfumes or asks how two differ ('Sauvage vs Bleu', 'Delina or Layton'). Not for finding perfumes like one (use find_similar_perfumes) and not for one perfume's details (use get_perfume).
輸入結構描述
{
"type": "object",
"properties": {
"perfumes": {
"minItems": 2,
"maxItems": 4,
"type": "array",
"items": {
"type": "string",
"maxLength": 120
},
"description": "2 to 4 perfumes, each a name with optional house or an id. Example: [\"Dior Sauvage\",\"Tom Ford Ombre Leather\"]"
},
"response_format": {
"description": "concise (default) or detailed (adds note pyramid, seasons, occasions, longevity, projection).",
"default": "concise",
"type": "string",
"enum": [
"concise",
"detailed"
]
},
"locale": {
"description": "Language of the 10ml.com links and labels. Perfume, house and note names stay as they are.",
"default": "en",
"type": "string",
"enum": [
"en",
"de",
"fr",
"es",
"it",
"ro",
"el",
"hu",
"cs",
"pl"
]
}
},
"required": [
"perfumes"
]
}輸出結構描述
{
"type": "object",
"properties": {
"perfumes": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"house": {
"type": "string"
},
"year": {
"type": "number"
},
"gender": {
"type": "string",
"enum": [
"men",
"women",
"unisex"
]
},
"family": {
"type": "string"
},
"accords": {
"type": "array",
"items": {
"type": "string"
}
},
"key_notes": {
"type": "array",
"items": {
"type": "string"
}
},
"character": {
"type": "string"
},
"links": {
"type": "array",
"items": {
"type": "object",
"properties": {
"type": {
"type": "string",
"enum": [
"try",
"guide",
"note"
]
},
"title": {
"type": "string"
},
"url": {
"type": "string"
}
},
"required": [
"type",
"title",
"url"
]
}
},
"profile": {
"type": "string",
"enum": [
"full",
"core"
]
},
"concentration": {
"type": "string"
},
"pyramid": {
"type": "object",
"properties": {
"top": {
"type": "array",
"items": {
"type": "string"
}
},
"heart": {
"type": "array",
"items": {
"type": "string"
}
},
"base": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"top",
"heart",
"base"
]
},
"seasons": {
"type": "array",
"items": {
"type": "string"
}
},
"occasions": {
"type": "array",
"items": {
"type": "string"
}
},
"styles": {
"type": "array",
"items": {
"type": "string"
}
},
"longevity": {
"type": "number"
},
"projection": {
"type": "number"
},
"perfumers": {
"type": "array",
"items": {
"type": "string"
}
},
"other_versions": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"id",
"name",
"house",
"gender",
"family",
"accords",
"key_notes",
"character",
"links",
"profile"
]
}
},
"shared_notes": {
"type": "array",
"items": {
"type": "string"
}
},
"unique_notes": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {
"type": "array",
"items": {
"type": "string"
}
}
},
"shared_accords": {
"type": "array",
"items": {
"type": "string"
}
},
"differences": {
"type": "array",
"items": {
"type": "string"
}
},
"closeness": {
"type": "string",
"enum": [
"very close",
"similar vibe",
"same spirit",
"different"
]
},
"unresolved": {
"type": "array",
"items": {
"type": "object",
"properties": {
"query": {
"type": "string"
},
"suggestions": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"query",
"suggestions"
]
}
},
"message": {
"type": "string"
},
"source": {
"type": "string"
}
},
"required": [
"perfumes",
"shared_notes",
"unique_notes",
"shared_accords",
"differences",
"closeness",
"source"
]
}🟢find_similar_perfumes(perfume, house, notes, accords, steer, ...)
Find perfumes that smell like one the person already likes, ranked by shared notes, accords and style, each saying exactly what it shares and how close it is (very close, similar vibe, same spirit). Works from a perfume in the index (name and house, or id) OR from free notes/accords for any other perfume. Steer the result: fresher, sweeter, darker, lighter, longer_lasting or more_projection. Use for 'something like Baccarat Rouge 540', 'like Sauvage but fresher' or 'a perfume with notes of saffron and cedar'. Not for editorial dupes of a famous perfume from other houses (use find_perfume_alternatives) and not for free-text discovery (use search_perfumes).
輸入結構描述
{
"type": "object",
"properties": {
"perfume": {
"description": "A perfume by name, optionally with its house, e.g. \"Baccarat Rouge 540\", \"Dior Sauvage\", \"Delina\". Or pass an id from another tool.",
"type": "string",
"maxLength": 120
},
"house": {
"description": "House of the perfume when the name alone is ambiguous, e.g. \"Maison Francis Kurkdjian\"",
"type": "string",
"maxLength": 80
},
"notes": {
"description": "Known notes of the starting perfume, for perfumes outside the index. Example: [\"jasmine\",\"saffron\",\"ambergris\",\"cedar\"]",
"maxItems": 30,
"type": "array",
"items": {
"type": "string",
"maxLength": 60
}
},
"accords": {
"description": "Known accords of the starting perfume. Example: [\"amber\",\"woody\",\"sweet\"]",
"maxItems": 6,
"type": "array",
"items": {
"type": "string",
"maxLength": 40
}
},
"steer": {
"description": "Move away from the starting point in one direction: fresher, sweeter, darker, lighter, longer_lasting (needs a perfume in the index) or more_projection (same).",
"type": "string",
"enum": [
"fresher",
"sweeter",
"darker",
"lighter",
"longer_lasting",
"more_projection"
]
},
"gender": {
"description": "Only return perfumes for this audience (men and women include unisex)",
"type": "string",
"enum": [
"men",
"women",
"unisex"
]
},
"other_houses_only": {
"default": false,
"description": "True to leave out perfumes from the same house as the starting perfume",
"type": "boolean"
},
"limit": {
"default": 8,
"description": "How many results per page (1-15, default 8).",
"type": "integer",
"minimum": 1,
"maximum": 15
},
"cursor": {
"description": "next_cursor from the previous page; omit for the first page.",
"type": "string",
"maxLength": 64
},
"response_format": {
"description": "concise (default) or detailed (adds note pyramid, seasons, occasions, longevity, projection).",
"default": "concise",
"type": "string",
"enum": [
"concise",
"detailed"
]
},
"locale": {
"description": "Language of the 10ml.com links and labels. Perfume, house and note names stay as they are.",
"default": "en",
"type": "string",
"enum": [
"en",
"de",
"fr",
"es",
"it",
"ro",
"el",
"hu",
"cs",
"pl"
]
}
}
}輸出結構描述
{
"type": "object",
"properties": {
"total": {
"type": "number"
},
"next_cursor": {
"type": "string"
},
"message": {
"type": "string"
},
"target": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"house": {
"type": [
"string",
"null"
]
},
"in_index": {
"type": "boolean"
},
"id": {
"type": "string"
},
"notes": {
"type": "array",
"items": {
"type": "string"
}
},
"accords": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"name",
"house",
"in_index",
"notes",
"accords"
]
},
"results": {
"type": "array",
"items": {
"type": "object",
"properties": {
"perfume": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"house": {
"type": "string"
},
"year": {
"type": "number"
},
"gender": {
"type": "string",
"enum": [
"men",
"women",
"unisex"
]
},
"family": {
"type": "string"
},
"accords": {
"type": "array",
"items": {
"type": "string"
}
},
"key_notes": {
"type": "array",
"items": {
"type": "string"
}
},
"character": {
"type": "string"
},
"links": {
"type": "array",
"items": {
"type": "object",
"properties": {
"type": {
"type": "string",
"enum": [
"try",
"guide",
"note"
]
},
"title": {
"type": "string"
},
"url": {
"type": "string"
}
},
"required": [
"type",
"title",
"url"
]
}
},
"profile": {
"type": "string",
"enum": [
"full",
"core"
]
},
"concentration": {
"type": "string"
},
"pyramid": {
"type": "object",
"properties": {
"top": {
"type": "array",
"items": {
"type": "string"
}
},
"heart": {
"type": "array",
"items": {
"type": "string"
}
},
"base": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"top",
"heart",
"base"
]
},
"seasons": {
"type": "array",
"items": {
"type": "string"
}
},
"occasions": {
"type": "array",
"items": {
"type": "string"
}
},
"styles": {
"type": "array",
"items": {
"type": "string"
}
},
"longevity": {
"type": "number"
},
"projection": {
"type": "number"
},
"perfumers": {
"type": "array",
"items": {
"type": "string"
}
},
"other_versions": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"id",
"name",
"house",
"gender",
"family",
"accords",
"key_notes",
"character",
"links",
"profile"
]
},
"closeness": {
"type": "string",
"enum": [
"very close",
"similar vibe",
"same spirit"
]
},
"shared_notes": {
"type": "array",
"items": {
"type": "string"
}
},
"shared_accords": {
"type": "array",
"items": {
"type": "string"
}
},
"why": {
"type": "string"
}
},
"required": [
"perfume",
"closeness",
"shared_notes",
"shared_accords",
"why"
]
}
},
"unrecognised_notes": {
"type": "array",
"items": {
"type": "string"
}
},
"source": {
"type": "string"
}
},
"required": [
"total",
"target",
"results",
"source"
]
}🟢find_perfume_alternatives(perfume, house, closeness, limit, cursor, ...)
The editors' alternatives (dupes) to a famous perfume from other houses: for each, why it is close and how close (very close, similar vibe, same spirit), plus the 10ML guide that compares them. Covers about 100 iconic originals such as Creed Aventus, Baccarat Rouge 540, Delina, Sauvage, Black Opium or Santal 33. For other perfumes in the index the closest options from different houses are computed from notes and accords. Use for 'dupe of X', 'alternative to X', 'smells like X but from another house'. Not for general similarity inside the index (use find_similar_perfumes) and not for free-text discovery (use search_perfumes).
輸入結構描述
{
"type": "object",
"properties": {
"perfume": {
"type": "string",
"maxLength": 120,
"description": "The famous perfume to find alternatives for. Examples: \"Creed Aventus\", \"Baccarat Rouge 540\", \"Delina\""
},
"house": {
"description": "House of the original when the name is ambiguous, e.g. \"Parfums de Marly\"",
"type": "string",
"maxLength": 80
},
"closeness": {
"description": "Only alternatives at this closeness",
"type": "string",
"enum": [
"very close",
"similar vibe",
"same spirit"
]
},
"limit": {
"default": 6,
"description": "How many results per page (1-10, default 6).",
"type": "integer",
"minimum": 1,
"maximum": 10
},
"cursor": {
"description": "next_cursor from the previous page; omit for the first page.",
"type": "string",
"maxLength": 64
},
"locale": {
"description": "Language of the 10ml.com links and labels. Perfume, house and note names stay as they are.",
"default": "en",
"type": "string",
"enum": [
"en",
"de",
"fr",
"es",
"it",
"ro",
"el",
"hu",
"cs",
"pl"
]
}
},
"required": [
"perfume"
]
}輸出結構描述
{
"type": "object",
"properties": {
"total": {
"type": "number"
},
"next_cursor": {
"type": "string"
},
"message": {
"type": "string"
},
"original": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"house": {
"type": "string"
},
"id": {
"type": "string"
}
},
"required": [
"name"
]
},
"alternatives": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"house": {
"type": "string"
},
"closeness": {
"type": "string",
"enum": [
"very close",
"similar vibe",
"same spirit"
]
},
"why": {
"type": "string"
},
"id": {
"type": "string"
},
"source": {
"type": "string",
"enum": [
"editors",
"similarity"
]
}
},
"required": [
"name",
"closeness",
"why",
"source"
]
}
},
"guide": {
"type": "object",
"properties": {
"type": {
"type": "string",
"enum": [
"try",
"guide",
"note"
]
},
"title": {
"type": "string"
},
"url": {
"type": "string"
}
},
"required": [
"type",
"title",
"url"
]
},
"links": {
"type": "array",
"items": {
"type": "object",
"properties": {
"type": {
"type": "string",
"enum": [
"try",
"guide",
"note"
]
},
"title": {
"type": "string"
},
"url": {
"type": "string"
}
},
"required": [
"type",
"title",
"url"
]
}
},
"other_matches": {
"type": "array",
"items": {
"type": "string"
}
},
"source": {
"type": "string"
}
},
"required": [
"total",
"original",
"alternatives",
"links",
"source"
]
}🟢recommend_perfumes(likes, dislikes, liked_notes, avoided_notes, gender, ...)
Personal perfume recommendations from taste: perfumes they love or dislike, notes they like or avoid, plus gender, season, occasion, style and family. Every pick says why (shared notes with a loved perfume, a liked note, fits the season). Use when someone says what they enjoy or avoid and wants suggestions ('I love Delina and vanilla, nothing too sweet, for winter evenings'). Not for one-off filters without taste (use search_perfumes), not for a single occasion list (use pick_for_occasion) and not for gifts (use find_gift).
輸入結構描述
{
"type": "object",
"properties": {
"likes": {
"description": "Perfumes they love, e.g. [\"Parfums de Marly Delina\",\"Dior Sauvage\"]",
"maxItems": 6,
"type": "array",
"items": {
"type": "string",
"maxLength": 120
}
},
"dislikes": {
"description": "Perfumes they dislike; similar ones are pushed down",
"maxItems": 6,
"type": "array",
"items": {
"type": "string",
"maxLength": 120
}
},
"liked_notes": {
"description": "Notes they enjoy, e.g. [\"vanilla\",\"rose\"]",
"maxItems": 8,
"type": "array",
"items": {
"type": "string",
"maxLength": 60
}
},
"avoided_notes": {
"description": "Notes to exclude entirely, e.g. [\"patchouli\",\"oud\"]",
"maxItems": 8,
"type": "array",
"items": {
"type": "string",
"maxLength": 60
}
},
"gender": {
"description": "Audience the perfume is marketed to. men and women also include unisex perfumes.",
"type": "string",
"enum": [
"men",
"women",
"unisex"
]
},
"season": {
"description": "Season the perfume suits (fall is accepted in text queries as autumn).",
"type": "string",
"enum": [
"spring",
"summer",
"autumn",
"winter"
]
},
"occasion": {
"description": "Occasion the perfume suits: daytime, office, casual, evening, date night or special occasion.",
"type": "string",
"enum": [
"daytime",
"office",
"casual",
"evening",
"date night",
"special occasion"
]
},
"style": {
"description": "Styles wanted, e.g. [\"fresh\",\"clean\"]",
"maxItems": 4,
"type": "array",
"items": {
"description": "A style word: aquatic, boozy, clean, creamy, dark, floral, fresh, citrusy, fruity, gourmand, green, leathery, musky, powdery, sensual, smoky, spicy, sweet, woody.",
"type": "string",
"enum": [
"aquatic",
"boozy",
"clean",
"creamy",
"dark",
"floral",
"fresh",
"citrusy",
"fruity",
"gourmand",
"green",
"leathery",
"musky",
"powdery",
"sensual",
"smoky",
"spicy",
"sweet",
"woody"
]
}
},
"family": {
"description": "A fragrance family or word like \"woody\" or \"citrus\"",
"type": "string",
"maxLength": 40
},
"limit": {
"default": 6,
"description": "How many results per page (1-15, default 6).",
"type": "integer",
"minimum": 1,
"maximum": 15
},
"cursor": {
"description": "next_cursor from the previous page; omit for the first page.",
"type": "string",
"maxLength": 64
},
"response_format": {
"description": "concise (default) or detailed (adds note pyramid, seasons, occasions, longevity, projection).",
"default": "concise",
"type": "string",
"enum": [
"concise",
"detailed"
]
},
"locale": {
"description": "Language of the 10ml.com links and labels. Perfume, house and note names stay as they are.",
"default": "en",
"type": "string",
"enum": [
"en",
"de",
"fr",
"es",
"it",
"ro",
"el",
"hu",
"cs",
"pl"
]
}
}
}輸出結構描述
{
"type": "object",
"properties": {
"total": {
"type": "number"
},
"next_cursor": {
"type": "string"
},
"message": {
"type": "string"
},
"picks": {
"type": "array",
"items": {
"type": "object",
"properties": {
"perfume": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"house": {
"type": "string"
},
"year": {
"type": "number"
},
"gender": {
"type": "string",
"enum": [
"men",
"women",
"unisex"
]
},
"family": {
"type": "string"
},
"accords": {
"type": "array",
"items": {
"type": "string"
}
},
"key_notes": {
"type": "array",
"items": {
"type": "string"
}
},
"character": {
"type": "string"
},
"links": {
"type": "array",
"items": {
"type": "object",
"properties": {
"type": {
"type": "string",
"enum": [
"try",
"guide",
"note"
]
},
"title": {
"type": "string"
},
"url": {
"type": "string"
}
},
"required": [
"type",
"title",
"url"
]
}
},
"profile": {
"type": "string",
"enum": [
"full",
"core"
]
},
"concentration": {
"type": "string"
},
"pyramid": {
"type": "object",
"properties": {
"top": {
"type": "array",
"items": {
"type": "string"
}
},
"heart": {
"type": "array",
"items": {
"type": "string"
}
},
"base": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"top",
"heart",
"base"
]
},
"seasons": {
"type": "array",
"items": {
"type": "string"
}
},
"occasions": {
"type": "array",
"items": {
"type": "string"
}
},
"styles": {
"type": "array",
"items": {
"type": "string"
}
},
"longevity": {
"type": "number"
},
"projection": {
"type": "number"
},
"perfumers": {
"type": "array",
"items": {
"type": "string"
}
},
"other_versions": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"id",
"name",
"house",
"gender",
"family",
"accords",
"key_notes",
"character",
"links",
"profile"
]
},
"why": {
"type": "string"
}
},
"required": [
"perfume",
"why"
]
}
},
"taste": {
"type": "object",
"properties": {
"liked_perfumes": {
"type": "array",
"items": {
"type": "string"
}
},
"liked_notes": {
"type": "array",
"items": {
"type": "string"
}
},
"avoided_notes": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"liked_perfumes",
"liked_notes",
"avoided_notes"
]
},
"unresolved": {
"type": "array",
"items": {
"type": "string"
}
},
"source": {
"type": "string"
}
},
"required": [
"total",
"picks",
"taste",
"source"
]
}🟢perfumes_by_note(note, position, gender, season, occasion, ...)
List the perfumes in the 10ML Fragrance Index built around a note (vanilla, oud, bergamot, tonka bean, rose, iris, leather, sandalwood...), most prominent first, optionally only where the note sits in the top, heart or base, or for an audience, season or occasion. Spelling variants and other languages work (agarwood finds oud, Vanille finds vanilla). Use for 'perfumes with oud', 'a vanilla scent for winter' or 'bergamot-forward colognes for men'. Not for explaining what a note smells like (use explain_note) and not for several notes at once (use search_perfumes with notes_include).
輸入結構描述
{
"type": "object",
"properties": {
"note": {
"type": "string",
"minLength": 1,
"maxLength": 60,
"description": "The note. Examples: \"oud\", \"vanilla\", \"pink pepper\", \"Vanille\""
},
"position": {
"description": "Where the note sits in the pyramid: top, heart, base or any",
"default": "any",
"type": "string",
"enum": [
"any",
"top",
"heart",
"base"
]
},
"gender": {
"description": "Audience the perfume is marketed to. men and women also include unisex perfumes.",
"type": "string",
"enum": [
"men",
"women",
"unisex"
]
},
"season": {
"description": "Season the perfume suits (fall is accepted in text queries as autumn).",
"type": "string",
"enum": [
"spring",
"summer",
"autumn",
"winter"
]
},
"occasion": {
"description": "Occasion the perfume suits: daytime, office, casual, evening, date night or special occasion.",
"type": "string",
"enum": [
"daytime",
"office",
"casual",
"evening",
"date night",
"special occasion"
]
},
"limit": {
"default": 8,
"description": "How many results per page (1-20, default 8).",
"type": "integer",
"minimum": 1,
"maximum": 20
},
"cursor": {
"description": "next_cursor from the previous page; omit for the first page.",
"type": "string",
"maxLength": 64
},
"response_format": {
"description": "concise (default) or detailed (adds note pyramid, seasons, occasions, longevity, projection).",
"default": "concise",
"type": "string",
"enum": [
"concise",
"detailed"
]
},
"locale": {
"description": "Language of the 10ml.com links and labels. Perfume, house and note names stay as they are.",
"default": "en",
"type": "string",
"enum": [
"en",
"de",
"fr",
"es",
"it",
"ro",
"el",
"hu",
"cs",
"pl"
]
}
},
"required": [
"note"
]
}輸出結構描述
{
"type": "object",
"properties": {
"total": {
"type": "number"
},
"next_cursor": {
"type": "string"
},
"message": {
"type": "string"
},
"note": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"family": {
"type": "string"
},
"smells_like": {
"type": "string"
},
"links": {
"type": "array",
"items": {
"type": "object",
"properties": {
"type": {
"type": "string",
"enum": [
"try",
"guide",
"note"
]
},
"title": {
"type": "string"
},
"url": {
"type": "string"
}
},
"required": [
"type",
"title",
"url"
]
}
}
},
"required": [
"name",
"links"
]
},
"results": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"house": {
"type": "string"
},
"year": {
"type": "number"
},
"gender": {
"type": "string",
"enum": [
"men",
"women",
"unisex"
]
},
"family": {
"type": "string"
},
"accords": {
"type": "array",
"items": {
"type": "string"
}
},
"key_notes": {
"type": "array",
"items": {
"type": "string"
}
},
"character": {
"type": "string"
},
"links": {
"type": "array",
"items": {
"type": "object",
"properties": {
"type": {
"type": "string",
"enum": [
"try",
"guide",
"note"
]
},
"title": {
"type": "string"
},
"url": {
"type": "string"
}
},
"required": [
"type",
"title",
"url"
]
}
},
"profile": {
"type": "string",
"enum": [
"full",
"core"
]
},
"concentration": {
"type": "string"
},
"pyramid": {
"type": "object",
"properties": {
"top": {
"type": "array",
"items": {
"type": "string"
}
},
"heart": {
"type": "array",
"items": {
"type": "string"
}
},
"base": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"top",
"heart",
"base"
]
},
"seasons": {
"type": "array",
"items": {
"type": "string"
}
},
"occasions": {
"type": "array",
"items": {
"type": "string"
}
},
"styles": {
"type": "array",
"items": {
"type": "string"
}
},
"longevity": {
"type": "number"
},
"projection": {
"type": "number"
},
"perfumers": {
"type": "array",
"items": {
"type": "string"
}
},
"other_versions": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"id",
"name",
"house",
"gender",
"family",
"accords",
"key_notes",
"character",
"links",
"profile"
]
}
},
"source": {
"type": "string"
}
},
"required": [
"total",
"note",
"results",
"source"
]
}🟢explain_note(note, response_format, locale)
Explain a fragrance note: what it smells like, its family and mood, where it comes from, which notes it pairs with, similar notes, famous perfumes where it leads and a link to the 10ML note page or guide when one exists. Covers about 285 notes in many spellings and languages. Use for 'what does ambroxan smell like', 'what is oud', 'what goes with bergamot'. Not for listing every perfume with the note (use perfumes_by_note) and not for general terms like EDP or sillage (use explain_perfume_term).
輸入結構描述
{
"type": "object",
"properties": {
"note": {
"type": "string",
"minLength": 1,
"maxLength": 60,
"description": "The note. Examples: \"ambroxan\", \"oud\", \"iris\", \"orris\", \"Bergamotte\""
},
"response_format": {
"description": "concise (default) or detailed (adds note pyramid, seasons, occasions, longevity, projection).",
"default": "concise",
"type": "string",
"enum": [
"concise",
"detailed"
]
},
"locale": {
"description": "Language of the 10ml.com links and labels. Perfume, house and note names stay as they are.",
"default": "en",
"type": "string",
"enum": [
"en",
"de",
"fr",
"es",
"it",
"ro",
"el",
"hu",
"cs",
"pl"
]
}
},
"required": [
"note"
]
}輸出結構描述
{
"type": "object",
"properties": {
"found": {
"type": "boolean"
},
"note": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"family": {
"type": "string"
},
"origin": {
"type": "string"
},
"smells_like": {
"type": "string"
},
"mood": {
"type": "string"
},
"description": {
"type": "string"
},
"also_called": {
"type": "array",
"items": {
"type": "string"
}
},
"pairs_with": {
"type": "array",
"items": {
"type": "string"
}
},
"similar_notes": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"id",
"name",
"family",
"origin",
"smells_like",
"mood",
"also_called",
"pairs_with",
"similar_notes"
]
},
"famous_perfumes": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"house": {
"type": "string"
},
"year": {
"type": "number"
},
"gender": {
"type": "string",
"enum": [
"men",
"women",
"unisex"
]
},
"family": {
"type": "string"
},
"accords": {
"type": "array",
"items": {
"type": "string"
}
},
"key_notes": {
"type": "array",
"items": {
"type": "string"
}
},
"character": {
"type": "string"
},
"links": {
"type": "array",
"items": {
"type": "object",
"properties": {
"type": {
"type": "string",
"enum": [
"try",
"guide",
"note"
]
},
"title": {
"type": "string"
},
"url": {
"type": "string"
}
},
"required": [
"type",
"title",
"url"
]
}
},
"profile": {
"type": "string",
"enum": [
"full",
"core"
]
},
"concentration": {
"type": "string"
},
"pyramid": {
"type": "object",
"properties": {
"top": {
"type": "array",
"items": {
"type": "string"
}
},
"heart": {
"type": "array",
"items": {
"type": "string"
}
},
"base": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"top",
"heart",
"base"
]
},
"seasons": {
"type": "array",
"items": {
"type": "string"
}
},
"occasions": {
"type": "array",
"items": {
"type": "string"
}
},
"styles": {
"type": "array",
"items": {
"type": "string"
}
},
"longevity": {
"type": "number"
},
"projection": {
"type": "number"
},
"perfumers": {
"type": "array",
"items": {
"type": "string"
}
},
"other_versions": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"id",
"name",
"house",
"gender",
"family",
"accords",
"key_notes",
"character",
"links",
"profile"
]
}
},
"links": {
"type": "array",
"items": {
"type": "object",
"properties": {
"type": {
"type": "string",
"enum": [
"try",
"guide",
"note"
]
},
"title": {
"type": "string"
},
"url": {
"type": "string"
}
},
"required": [
"type",
"title",
"url"
]
}
},
"suggestions": {
"type": "array",
"items": {
"type": "string"
}
},
"message": {
"type": "string"
},
"source": {
"type": "string"
}
},
"required": [
"found",
"source"
]
}🟢get_house(house, response_format, locale)
Profile of a perfume house: country, founded year, style (designer, niche, Middle Eastern, indie), what it is known for, its signature perfumes in the index and a link to explore it at 10ML. Understands nicknames (YSL, MFK, PDM, Paco Rabanne). Use for 'tell me about Creed', 'what is Amouage known for' or 'best Dior perfumes'. Not for browsing all houses (use list_houses) and not for one perfume (use get_perfume).
輸入結構描述
{
"type": "object",
"properties": {
"house": {
"type": "string",
"minLength": 1,
"maxLength": 80,
"description": "The house. Examples: \"Creed\", \"YSL\", \"Maison Francis Kurkdjian\", \"Parfums de Marly\""
},
"response_format": {
"description": "concise (default) or detailed (adds note pyramid, seasons, occasions, longevity, projection).",
"default": "concise",
"type": "string",
"enum": [
"concise",
"detailed"
]
},
"locale": {
"description": "Language of the 10ml.com links and labels. Perfume, house and note names stay as they are.",
"default": "en",
"type": "string",
"enum": [
"en",
"de",
"fr",
"es",
"it",
"ro",
"el",
"hu",
"cs",
"pl"
]
}
},
"required": [
"house"
]
}輸出結構描述
{
"type": "object",
"properties": {
"found": {
"type": "boolean"
},
"house": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"country": {
"type": "string"
},
"type": {
"type": "string"
},
"founded": {
"type": "number"
},
"perfumes_in_index": {
"type": "number"
},
"known_for": {
"type": "array",
"items": {
"type": "string"
}
},
"style": {
"type": "string"
},
"aliases": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"id",
"name",
"type",
"perfumes_in_index",
"known_for",
"style",
"aliases"
]
},
"signature_perfumes": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"house": {
"type": "string"
},
"year": {
"type": "number"
},
"gender": {
"type": "string",
"enum": [
"men",
"women",
"unisex"
]
},
"family": {
"type": "string"
},
"accords": {
"type": "array",
"items": {
"type": "string"
}
},
"key_notes": {
"type": "array",
"items": {
"type": "string"
}
},
"character": {
"type": "string"
},
"links": {
"type": "array",
"items": {
"type": "object",
"properties": {
"type": {
"type": "string",
"enum": [
"try",
"guide",
"note"
]
},
"title": {
"type": "string"
},
"url": {
"type": "string"
}
},
"required": [
"type",
"title",
"url"
]
}
},
"profile": {
"type": "string",
"enum": [
"full",
"core"
]
},
"concentration": {
"type": "string"
},
"pyramid": {
"type": "object",
"properties": {
"top": {
"type": "array",
"items": {
"type": "string"
}
},
"heart": {
"type": "array",
"items": {
"type": "string"
}
},
"base": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"top",
"heart",
"base"
]
},
"seasons": {
"type": "array",
"items": {
"type": "string"
}
},
"occasions": {
"type": "array",
"items": {
"type": "string"
}
},
"styles": {
"type": "array",
"items": {
"type": "string"
}
},
"longevity": {
"type": "number"
},
"projection": {
"type": "number"
},
"perfumers": {
"type": "array",
"items": {
"type": "string"
}
},
"other_versions": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"id",
"name",
"house",
"gender",
"family",
"accords",
"key_notes",
"character",
"links",
"profile"
]
}
},
"links": {
"type": "array",
"items": {
"type": "object",
"properties": {
"type": {
"type": "string",
"enum": [
"try",
"guide",
"note"
]
},
"title": {
"type": "string"
},
"url": {
"type": "string"
}
},
"required": [
"type",
"title",
"url"
]
}
},
"suggestions": {
"type": "array",
"items": {
"type": "string"
}
},
"message": {
"type": "string"
},
"source": {
"type": "string"
}
},
"required": [
"found",
"source"
]
}🟢list_houses(type, country, query, limit, cursor, ...)
Browse the perfume houses in the 10ML Fragrance Index with country, type (designer, niche, middle-eastern, indie, celebrity), perfumes profiled and what each is known for. Filter by type, country or a name fragment. Use when someone wants to explore brands, find niche or Middle Eastern houses, or see which houses are covered. Not for one house's full profile (use get_house) and not for perfumes (use search_perfumes).
輸入結構描述
{
"type": "object",
"properties": {
"type": {
"description": "Only houses of this type",
"type": "string",
"enum": [
"designer",
"niche",
"middle-eastern",
"indie",
"celebrity"
]
},
"country": {
"description": "Only houses from this country, e.g. \"France\", \"Italy\", \"United Arab Emirates\"",
"type": "string",
"maxLength": 40
},
"query": {
"description": "Part of a house name, e.g. \"tom\" or \"maison\"",
"type": "string",
"maxLength": 60
},
"limit": {
"default": 20,
"description": "How many results per page (1-50, default 20).",
"type": "integer",
"minimum": 1,
"maximum": 50
},
"cursor": {
"description": "next_cursor from the previous page; omit for the first page.",
"type": "string",
"maxLength": 64
},
"locale": {
"description": "Language of the 10ml.com links and labels. Perfume, house and note names stay as they are.",
"default": "en",
"type": "string",
"enum": [
"en",
"de",
"fr",
"es",
"it",
"ro",
"el",
"hu",
"cs",
"pl"
]
}
}
}輸出結構描述
{
"type": "object",
"properties": {
"total": {
"type": "number"
},
"next_cursor": {
"type": "string"
},
"message": {
"type": "string"
},
"houses": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"country": {
"type": "string"
},
"type": {
"type": "string"
},
"founded": {
"type": "number"
},
"perfumes_in_index": {
"type": "number"
},
"known_for": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"id",
"name",
"type",
"perfumes_in_index",
"known_for"
]
}
},
"source": {
"type": "string"
}
},
"required": [
"total",
"houses",
"source"
]
}🟢explain_perfume_term(term, limit, cursor, locale)
Explain perfume vocabulary and fragrance families: concentrations (EDC, EDT, EDP, extrait, elixir), sillage, projection, longevity, dry down, accord, top/heart/base notes, flanker, maceration, layering, niche vs designer, plus the 23 fragrance families (chypre, fougere, gourmand, oriental / amber...) with their key notes and example perfumes. Use for 'what is the difference between EDT and EDP', 'what is a chypre', 'what does sillage mean'. Leave term empty to list everything covered. Not for individual notes (use explain_note).
輸入結構描述
{
"type": "object",
"properties": {
"term": {
"description": "A term or family. Examples: \"EDP\", \"sillage\", \"chypre\", \"dry down\", \"fougere\". Omit to list all terms.",
"type": "string",
"maxLength": 60
},
"limit": {
"default": 12,
"description": "How many results per page (1-60, default 12).",
"type": "integer",
"minimum": 1,
"maximum": 60
},
"cursor": {
"description": "next_cursor from the previous page; omit for the first page.",
"type": "string",
"maxLength": 64
},
"locale": {
"description": "Language of the 10ml.com links and labels. Perfume, house and note names stay as they are.",
"default": "en",
"type": "string",
"enum": [
"en",
"de",
"fr",
"es",
"it",
"ro",
"el",
"hu",
"cs",
"pl"
]
}
}
}輸出結構描述
{
"type": "object",
"properties": {
"total": {
"type": "number"
},
"next_cursor": {
"type": "string"
},
"message": {
"type": "string"
},
"matches": {
"type": "array",
"items": {
"type": "object",
"properties": {
"kind": {
"type": "string",
"enum": [
"term",
"family"
]
},
"name": {
"type": "string"
},
"definition": {
"type": "string"
},
"related": {
"type": "array",
"items": {
"type": "string"
}
},
"key_notes": {
"type": "array",
"items": {
"type": "string"
}
},
"subfamilies": {
"type": "array",
"items": {
"type": "string"
}
},
"example_perfumes": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"kind",
"name",
"definition",
"related"
]
}
},
"available": {
"type": "array",
"items": {
"type": "string"
}
},
"suggestions": {
"type": "array",
"items": {
"type": "string"
}
},
"source": {
"type": "string"
}
},
"required": [
"total",
"matches",
"source"
]
}🟢suggest_layering(notes, perfumes, limit, response_format, locale)
Perfume layering ideas: which notes or perfumes combine well, what the combination smells like, how to spray (order, amount) and when it suits. Works from two notes ('vanilla and citrus'), one note (what it layers with), one perfume (partners from the index) or two perfumes (does this pair work). Editorial pairings are marked 'editors'; others are marked 'suggested' and should be tested on skin. Use for 'how do I layer vanilla', 'can I layer Delina with something', 'does Sauvage layer with Aventus'. Not for choosing a single perfume (use recommend_perfumes).
輸入結構描述
{
"type": "object",
"properties": {
"notes": {
"description": "One or two notes. Examples: [\"vanilla\",\"citrus\"], [\"oud\"]",
"minItems": 1,
"maxItems": 2,
"type": "array",
"items": {
"type": "string",
"maxLength": 60
}
},
"perfumes": {
"description": "One or two perfumes. Examples: [\"Parfums de Marly Delina\"], [\"Dior Sauvage\",\"Creed Aventus\"]",
"minItems": 1,
"maxItems": 2,
"type": "array",
"items": {
"type": "string",
"maxLength": 120
}
},
"limit": {
"default": 5,
"description": "How many results per page (1-10, default 5).",
"type": "integer",
"minimum": 1,
"maximum": 10
},
"response_format": {
"description": "concise (default) or detailed (adds note pyramid, seasons, occasions, longevity, projection).",
"default": "concise",
"type": "string",
"enum": [
"concise",
"detailed"
]
},
"locale": {
"description": "Language of the 10ml.com links and labels. Perfume, house and note names stay as they are.",
"default": "en",
"type": "string",
"enum": [
"en",
"de",
"fr",
"es",
"it",
"ro",
"el",
"hu",
"cs",
"pl"
]
}
}
}輸出結構描述
{
"type": "object",
"properties": {
"mode": {
"type": "string",
"enum": [
"two_notes",
"one_note",
"one_perfume",
"two_perfumes"
]
},
"pairs": {
"type": "array",
"items": {
"type": "object",
"properties": {
"notes": {
"type": "array",
"items": [
{
"type": "string"
},
{
"type": "string"
}
],
"additionalItems": false,
"minItems": 2,
"maxItems": 2
},
"result": {
"type": "string"
},
"tip": {
"type": "string"
},
"best_for": {
"type": "array",
"items": {
"type": "string"
}
},
"source": {
"type": "string",
"enum": [
"editors",
"suggested"
]
}
},
"required": [
"notes",
"result",
"tip",
"best_for",
"source"
]
}
},
"partners": {
"type": "array",
"items": {
"type": "object",
"properties": {
"perfume": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"house": {
"type": "string"
},
"year": {
"type": "number"
},
"gender": {
"type": "string",
"enum": [
"men",
"women",
"unisex"
]
},
"family": {
"type": "string"
},
"accords": {
"type": "array",
"items": {
"type": "string"
}
},
"key_notes": {
"type": "array",
"items": {
"type": "string"
}
},
"character": {
"type": "string"
},
"links": {
"type": "array",
"items": {
"type": "object",
"properties": {
"type": {
"type": "string",
"enum": [
"try",
"guide",
"note"
]
},
"title": {
"type": "string"
},
"url": {
"type": "string"
}
},
"required": [
"type",
"title",
"url"
]
}
},
"profile": {
"type": "string",
"enum": [
"full",
"core"
]
},
"concentration": {
"type": "string"
},
"pyramid": {
"type": "object",
"properties": {
"top": {
"type": "array",
"items": {
"type": "string"
}
},
"heart": {
"type": "array",
"items": {
"type": "string"
}
},
"base": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"top",
"heart",
"base"
]
},
"seasons": {
"type": "array",
"items": {
"type": "string"
}
},
"occasions": {
"type": "array",
"items": {
"type": "string"
}
},
"styles": {
"type": "array",
"items": {
"type": "string"
}
},
"longevity": {
"type": "number"
},
"projection": {
"type": "number"
},
"perfumers": {
"type": "array",
"items": {
"type": "string"
}
},
"other_versions": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"id",
"name",
"house",
"gender",
"family",
"accords",
"key_notes",
"character",
"links",
"profile"
]
},
"via": {
"type": "string"
},
"why": {
"type": "string"
}
},
"required": [
"perfume",
"via",
"why"
]
}
},
"verdict": {
"type": "string"
},
"advice": {
"type": "array",
"items": {
"type": "string"
}
},
"message": {
"type": "string"
},
"source": {
"type": "string"
}
},
"required": [
"mode",
"pairs",
"advice",
"source"
]
}🟢pick_for_occasion(season, occasion, gender, style, limit, ...)
Perfume picks for a moment: a season, an occasion (daytime, office, casual, evening, date night, special occasion), an audience and a style, each with the reason it fits. Use for 'a fresh summer office scent for men', 'date night perfume for her' or 'what to wear to a winter wedding'. Give at least one of season, occasion, gender or style. Not for taste-based matching (use recommend_perfumes), not for gifts (use find_gift) and not for classics (use search_perfumes with iconic true).
輸入結構描述
{
"type": "object",
"properties": {
"season": {
"description": "Season the perfume suits (fall is accepted in text queries as autumn).",
"type": "string",
"enum": [
"spring",
"summer",
"autumn",
"winter"
]
},
"occasion": {
"description": "Occasion the perfume suits: daytime, office, casual, evening, date night or special occasion.",
"type": "string",
"enum": [
"daytime",
"office",
"casual",
"evening",
"date night",
"special occasion"
]
},
"gender": {
"description": "Audience the perfume is marketed to. men and women also include unisex perfumes.",
"type": "string",
"enum": [
"men",
"women",
"unisex"
]
},
"style": {
"description": "Styles wanted, e.g. [\"fresh\",\"clean\"] for summer office wear",
"maxItems": 3,
"type": "array",
"items": {
"description": "A style word: aquatic, boozy, clean, creamy, dark, floral, fresh, citrusy, fruity, gourmand, green, leathery, musky, powdery, sensual, smoky, spicy, sweet, woody.",
"type": "string",
"enum": [
"aquatic",
"boozy",
"clean",
"creamy",
"dark",
"floral",
"fresh",
"citrusy",
"fruity",
"gourmand",
"green",
"leathery",
"musky",
"powdery",
"sensual",
"smoky",
"spicy",
"sweet",
"woody"
]
}
},
"limit": {
"default": 6,
"description": "How many results per page (1-15, default 6).",
"type": "integer",
"minimum": 1,
"maximum": 15
},
"cursor": {
"description": "next_cursor from the previous page; omit for the first page.",
"type": "string",
"maxLength": 64
},
"response_format": {
"description": "concise (default) or detailed (adds note pyramid, seasons, occasions, longevity, projection).",
"default": "concise",
"type": "string",
"enum": [
"concise",
"detailed"
]
},
"locale": {
"description": "Language of the 10ml.com links and labels. Perfume, house and note names stay as they are.",
"default": "en",
"type": "string",
"enum": [
"en",
"de",
"fr",
"es",
"it",
"ro",
"el",
"hu",
"cs",
"pl"
]
}
}
}輸出結構描述
{
"type": "object",
"properties": {
"total": {
"type": "number"
},
"next_cursor": {
"type": "string"
},
"message": {
"type": "string"
},
"picks": {
"type": "array",
"items": {
"type": "object",
"properties": {
"perfume": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"house": {
"type": "string"
},
"year": {
"type": "number"
},
"gender": {
"type": "string",
"enum": [
"men",
"women",
"unisex"
]
},
"family": {
"type": "string"
},
"accords": {
"type": "array",
"items": {
"type": "string"
}
},
"key_notes": {
"type": "array",
"items": {
"type": "string"
}
},
"character": {
"type": "string"
},
"links": {
"type": "array",
"items": {
"type": "object",
"properties": {
"type": {
"type": "string",
"enum": [
"try",
"guide",
"note"
]
},
"title": {
"type": "string"
},
"url": {
"type": "string"
}
},
"required": [
"type",
"title",
"url"
]
}
},
"profile": {
"type": "string",
"enum": [
"full",
"core"
]
},
"concentration": {
"type": "string"
},
"pyramid": {
"type": "object",
"properties": {
"top": {
"type": "array",
"items": {
"type": "string"
}
},
"heart": {
"type": "array",
"items": {
"type": "string"
}
},
"base": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"top",
"heart",
"base"
]
},
"seasons": {
"type": "array",
"items": {
"type": "string"
}
},
"occasions": {
"type": "array",
"items": {
"type": "string"
}
},
"styles": {
"type": "array",
"items": {
"type": "string"
}
},
"longevity": {
"type": "number"
},
"projection": {
"type": "number"
},
"perfumers": {
"type": "array",
"items": {
"type": "string"
}
},
"other_versions": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"id",
"name",
"house",
"gender",
"family",
"accords",
"key_notes",
"character",
"links",
"profile"
]
},
"why": {
"type": "string"
}
},
"required": [
"perfume",
"why"
]
}
},
"filters": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {
"type": "string"
}
},
"guides": {
"type": "array",
"items": {
"type": "object",
"properties": {
"type": {
"type": "string",
"enum": [
"try",
"guide",
"note"
]
},
"title": {
"type": "string"
},
"url": {
"type": "string"
}
},
"required": [
"type",
"title",
"url"
]
}
},
"source": {
"type": "string"
}
},
"required": [
"total",
"picks",
"filters",
"source"
]
}🟢find_gift(recipient, relationship, age_range, loves, liked_notes, ...)
Perfume gift ideas from who the gift is for: recipient (him, her or anyone), relationship, age range, perfumes or notes they already love, style, occasion and how adventurous to be. Each pick comes with the reason it suits them. Use for 'gift for a woman who loves Delina', 'something safe for my dad' or 'a bold present for a friend'. Not for personal taste recommendations (use recommend_perfumes) and not for classics lists (use search_perfumes with iconic true).
輸入結構描述
{
"type": "object",
"properties": {
"recipient": {
"description": "Who the gift is for: him (men and unisex), her (women and unisex) or anyone (unisex-friendly)",
"type": "string",
"enum": [
"him",
"her",
"anyone"
]
},
"relationship": {
"description": "Example: \"partner\", \"dad\", \"colleague\", \"friend\"",
"type": "string",
"maxLength": 40
},
"age_range": {
"description": "Age range of the recipient",
"type": "string",
"enum": [
"teen",
"20s",
"30s-40s",
"50plus"
]
},
"loves": {
"description": "Perfumes they already wear or love, e.g. [\"Delina\"]",
"maxItems": 5,
"type": "array",
"items": {
"type": "string",
"maxLength": 120
}
},
"liked_notes": {
"description": "Notes they like, e.g. [\"vanilla\",\"rose\"]",
"maxItems": 6,
"type": "array",
"items": {
"type": "string",
"maxLength": 60
}
},
"style": {
"maxItems": 3,
"type": "array",
"items": {
"description": "A style word: aquatic, boozy, clean, creamy, dark, floral, fresh, citrusy, fruity, gourmand, green, leathery, musky, powdery, sensual, smoky, spicy, sweet, woody.",
"type": "string",
"enum": [
"aquatic",
"boozy",
"clean",
"creamy",
"dark",
"floral",
"fresh",
"citrusy",
"fruity",
"gourmand",
"green",
"leathery",
"musky",
"powdery",
"sensual",
"smoky",
"spicy",
"sweet",
"woody"
]
}
},
"occasion": {
"description": "When they would wear it most, e.g. \"office\"",
"type": "string",
"enum": [
"daytime",
"office",
"casual",
"evening",
"date night",
"special occasion"
]
},
"boldness": {
"default": "safe",
"description": "safe: crowd-pleasing classics; adventurous: distinctive niche picks",
"type": "string",
"enum": [
"safe",
"adventurous"
]
},
"limit": {
"default": 5,
"description": "How many results per page (1-12, default 5).",
"type": "integer",
"minimum": 1,
"maximum": 12
},
"cursor": {
"description": "next_cursor from the previous page; omit for the first page.",
"type": "string",
"maxLength": 64
},
"response_format": {
"description": "concise (default) or detailed (adds note pyramid, seasons, occasions, longevity, projection).",
"default": "concise",
"type": "string",
"enum": [
"concise",
"detailed"
]
},
"locale": {
"description": "Language of the 10ml.com links and labels. Perfume, house and note names stay as they are.",
"default": "en",
"type": "string",
"enum": [
"en",
"de",
"fr",
"es",
"it",
"ro",
"el",
"hu",
"cs",
"pl"
]
}
},
"required": [
"recipient"
]
}輸出結構描述
{
"type": "object",
"properties": {
"total": {
"type": "number"
},
"next_cursor": {
"type": "string"
},
"message": {
"type": "string"
},
"picks": {
"type": "array",
"items": {
"type": "object",
"properties": {
"perfume": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"house": {
"type": "string"
},
"year": {
"type": "number"
},
"gender": {
"type": "string",
"enum": [
"men",
"women",
"unisex"
]
},
"family": {
"type": "string"
},
"accords": {
"type": "array",
"items": {
"type": "string"
}
},
"key_notes": {
"type": "array",
"items": {
"type": "string"
}
},
"character": {
"type": "string"
},
"links": {
"type": "array",
"items": {
"type": "object",
"properties": {
"type": {
"type": "string",
"enum": [
"try",
"guide",
"note"
]
},
"title": {
"type": "string"
},
"url": {
"type": "string"
}
},
"required": [
"type",
"title",
"url"
]
}
},
"profile": {
"type": "string",
"enum": [
"full",
"core"
]
},
"concentration": {
"type": "string"
},
"pyramid": {
"type": "object",
"properties": {
"top": {
"type": "array",
"items": {
"type": "string"
}
},
"heart": {
"type": "array",
"items": {
"type": "string"
}
},
"base": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"top",
"heart",
"base"
]
},
"seasons": {
"type": "array",
"items": {
"type": "string"
}
},
"occasions": {
"type": "array",
"items": {
"type": "string"
}
},
"styles": {
"type": "array",
"items": {
"type": "string"
}
},
"longevity": {
"type": "number"
},
"projection": {
"type": "number"
},
"perfumers": {
"type": "array",
"items": {
"type": "string"
}
},
"other_versions": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"id",
"name",
"house",
"gender",
"family",
"accords",
"key_notes",
"character",
"links",
"profile"
]
},
"why": {
"type": "string"
}
},
"required": [
"perfume",
"why"
]
}
},
"tip": {
"type": "string"
},
"unresolved": {
"type": "array",
"items": {
"type": "string"
}
},
"source": {
"type": "string"
}
},
"required": [
"total",
"picks",
"tip",
"source"
]
}🟢search_guides(query, type, limit, cursor, locale)
Find 10ML's perfume guides and articles to read or cite: how-tos (where to spray, finding a signature scent, making perfume last), notes explained, house guides, lists, and alternatives guides that compare famous perfumes with similar ones from other houses. Returns title, type and a link per locale. Use whenever you want a source to cite or a deeper read ('how to layer perfume', 'best oud perfumes', 'Creed Aventus dupes guide'). Not for facts about a perfume (use get_perfume) and not for note definitions (use explain_note).
輸入結構描述
{
"type": "object",
"properties": {
"query": {
"description": "What the guide is about. Examples: \"how to make perfume last\", \"oud\", \"Creed Aventus dupes\", \"gift\". Omit to browse.",
"type": "string",
"maxLength": 120
},
"type": {
"description": "how-to, list (rankings/comparisons), alternatives (dupes guides), note (a note explained), house (a house mapped)",
"type": "string",
"enum": [
"how-to",
"list",
"alternatives",
"note",
"house"
]
},
"limit": {
"default": 8,
"description": "How many results per page (1-20, default 8).",
"type": "integer",
"minimum": 1,
"maximum": 20
},
"cursor": {
"description": "next_cursor from the previous page; omit for the first page.",
"type": "string",
"maxLength": 64
},
"locale": {
"description": "Language of the 10ml.com links and labels. Perfume, house and note names stay as they are.",
"default": "en",
"type": "string",
"enum": [
"en",
"de",
"fr",
"es",
"it",
"ro",
"el",
"hu",
"cs",
"pl"
]
}
}
}輸出結構描述
{
"type": "object",
"properties": {
"total": {
"type": "number"
},
"next_cursor": {
"type": "string"
},
"message": {
"type": "string"
},
"guides": {
"type": "array",
"items": {
"type": "object",
"properties": {
"title": {
"type": "string"
},
"type": {
"type": "string"
},
"topics": {
"type": "array",
"items": {
"type": "string"
}
},
"url": {
"type": "string"
},
"translated": {
"type": "boolean"
}
},
"required": [
"title",
"type",
"topics",
"url",
"translated"
]
}
},
"source": {
"type": "string"
}
},
"required": [
"total",
"guides",
"source"
]
}社群
證據