10ML Perfume Finder

com.10mlPublished by 10ml.comOfficial publisherv2.6.1Updated Nov 7, 2026

Free perfume MCP server and fragrance API: 6,000+ perfumes, note pyramids, accords, similar scents.

VerifiedStreamable HTTPWeb executableLocation & LifestyleKnowledge & Memory

Overview

AI-generated overview

A free, read-only fragrance index that lets an assistant search 6,000+ perfumes, compare scents, find similar or alternative fragrances, and explain notes and…

What you can do
  • Search and read perfume profiles: search by name, house, notes, accords, family, season or occasion, and get full profiles with note pyramids, longevity and projection
  • Compare and match scents: compare two to four perfumes side by side, find perfumes that smell like a favourite, and get editors' alternatives from other houses
  • Recommend and choose: get picks from stated tastes, for a season or occasion, or as a gift, each with a reason
  • Explore notes and houses: explain a note or perfume term, list perfumes built around a note, and browse or profile fragrance houses
  • Layer and read guides: get layering suggestions and find 10ML articles and guides to read or cite
When to use it
Useful when an assistant is asked anything about fragrance — what a perfume smells like, what to wear for a season or occasion, what resembles a favourite scent, how to layer two fragrances, or which gift fits a person. It replaces guesswork with curated data and returns links to read more.
Requirements
No account, API key or sign-in. Connect the remote Streamable HTTP endpoint, or run the npm package with Node.js 18+ via npx or the PyPI package with Python 3.10+ via uvx for stdio-only clients. Network access is needed.
Before you install
Read-only and no tracking per the README, but results include promotional links to the vendor's own shop, and the server is published by a perfume retailer, so recommendations are not independent. No credentials are requested.

Installation

In SourceWeft

  1. Open 10ML Perfume Finder in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.

Use with an agent

Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.

Read https://sourceweft.com/mcp/com.10ml%2Fperfume-finder/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.

Read the install guide the agent follows

Other MCP clients

Add this to your client's mcpServers config.

{
  "mcpServers": {
    "10ml-perfume-finder": {
      "type": "http",
      "url": "https://mcp.10ml.com/mcp"
    }
  }
}

README

[10ML]

10ML Perfume Finder (perfume MCP server)

10ML Perfume Finder is the free perfume MCP server and fragrance API from 10ML, an online perfume shop for perfume samples and decants: a remote Model Context Protocol server at https://mcp.10ml.com/mcp that needs no API key and no sign-in. Add the endpoint as a custom connector in Claude, ChatGPT, Cursor, VS Code, Gemini CLI or any MCP client, and your assistant can answer perfume questions from curated data instead of guessing. It covers perfume search, note pyramids, accords, scent families, similar scents and alternatives, layering ideas, gift picks and perfume houses, in ten languages, curated by 10ML's fragrance editors.

Benchmarked in public: in a 40-question test of the free, no-key perfume MCP servers, 10ML answered 39 of 40 correctly and was the fastest; the method and CSV are open at https://10ml.com/perfume-mcp-servers-compared

Install: remote endpoint https://mcp.10ml.com/mcp, official MCP Registry name com.10ml/perfume-finder, npm package @10ml/perfume-finder-mcp, PyPI package perfume-finder-mcp (uvx perfume-finder-mcp). OpenAPI and developer docs at https://10ml.com/perfume-api

Use cases: ask which perfume smells like a favourite, what to wear in autumn, how to layer two fragrances, what notes a perfume has or which gift fits a person, then try the answer as a 3ml perfume sample.

Developer page: https://10ml.com/perfume-api · Shop: https://10ml.com/

Contact: [email protected]

Free, read-only, no sign-in. One remote endpoint, nothing to install:

https://mcp.10ml.com/mcp

Transport: Streamable HTTP. Authentication: none. Version 2.3.3.

[npm] [PyPI] [MCP Registry] [Website] [License: MIT]

[Add to Cursor] [Install in VS Code] [Install in VS Code Insiders]

What you can ask

  • "What smells like Baccarat Rouge 540, and what is a good alternative from another house?"
  • "A fresh summer office scent for men, and why each one fits."
  • "Explain ambroxan and which perfumes lead with it."
  • "How would I layer vanilla and citrus?"
  • "A gift for a woman who loves Delina."
  • "Compare Dior Sauvage and Tom Ford Ombre Leather."
  • "Like Sauvage, but fresher."
  • "Which guide explains how to make a perfume last longer?"

Tools (15, all read-only)

ToolWhat it does
search_perfumesSearch by name, house, notes to include or exclude, accords, family, audience, season, occasion or style. Natural language works.
get_perfumeThe full profile of one perfume: note pyramid, accords, seasons, longevity, five similar perfumes, editorial alternatives and guides.
compare_perfumesTwo to four perfumes side by side: shared and unique notes, plain-language differences, overall closeness.
find_similar_perfumesPerfumes that smell like one you love, or like any list of notes or accords. Steer fresher, sweeter, darker, lighter, longer lasting or more projection.
find_perfume_alternativesThe editors' alternatives (dupes) to famous perfumes from other houses, with why each is close and a link to the guide.
recommend_perfumesPicks from perfumes you love or dislike and notes you like or avoid, with the reason for each.
perfumes_by_noteEvery perfume built around a note, optionally by position in the pyramid.
explain_noteWhat a note smells like, what it pairs with, similar notes and where it leads.
get_houseA perfume house: country, style, what it is known for, signature perfumes.
list_housesBrowse houses by type or country.
explain_perfume_termEDP, sillage, dry down, chypre and the 23 fragrance families.
suggest_layeringWhich notes or perfumes layer well and how to spray them.
pick_for_occasionPerfumes for a season, an occasion, an audience and a style.
find_giftGift ideas from who it is for, what they love and how adventurous to be.
search_guides10ML guides and articles to read or cite, with links in ten languages.

search_perfumes with iconic: true lists the modern classics chosen by 10ML's editors. The older names iconic_perfumes and trending_perfumes still answer as aliases for existing integrations, but are no longer listed.

Every tool takes locale (en, de, fr, es, it, ro, el, hu, cs, pl) for the 10ml.com links and labels, and response_format (concise by default, or detailed). List tools page with limit and cursor. Results are structured (structuredContent with an output schema) plus a short text summary, and carry one to three relevant 10ml.com links.

Prompts

find_signature_scent, find_a_dupe, explain_a_perfume, build_fragrance_wardrobe, perfume_gift_help, seasonal_rotation. Prompt arguments autocomplete perfume, house and note names.

Resources

tenml://families, tenml://glossary, tenml://notes, tenml://houses, tenml://about, and the template tenml://perfume/{id}.

REST API for agents without MCP

The same answers over plain HTTP, described by an OpenAPI 3.1 file and an llms.txt:

GET https://mcp.10ml.com/api/v1/perfumes?q=fresh+citrus+summer&gender=menGET https://mcp.10ml.com/api/v1/perfumes/creed-aventus-edpGET https://mcp.10ml.com/api/v1/similar?perfume=Baccarat+Rouge+540&steer=fresherGET https://mcp.10ml.com/api/v1/alternatives?perfume=Creed+AventusGET https://mcp.10ml.com/api/v1/notes/ambroxanGET https://mcp.10ml.com/api/v1/houses/amouageGET https://mcp.10ml.com/api/v1/guides?q=oud&locale=de

Install

Nothing to install for clients that take a URL: use https://mcp.10ml.com/mcp. Clients that start local programs can run the same server over stdio:

RunnerCommandPackage
npx (Node.js 18+)npx -y @10ml/perfume-finder-mcpnpm
uvx (Python 3.10+)uvx perfume-finder-mcpPyPI

Claude Desktop, Cursor, Windsurf, Cline and Zed (mcpServers in the client's settings):

json
{  "mcpServers": {    "perfume-finder": {      "command": "npx",      "args": ["-y", "@10ml/perfume-finder-mcp"]    }  }}

Goose (~/.config/goose/config.yaml):

yaml
extensions:  perfume-finder:    name: 10ML Fragrance Index    type: stdio    cmd: npx    args: ["-y", "@10ml/perfume-finder-mcp"]    enabled: true    timeout: 300

Every client's snippet and one-click links are on mcp.10ml.com.

Connect

Claude (claude.ai and the desktop app)

Available in Claude's connectors directory. Or Settings → Connectors → Add custom connector → paste https://mcp.10ml.com/mcp.

Claude Code

bash
claude mcp add --transport http perfume-finder https://mcp.10ml.com/mcp

Or commit the .mcp.json from this repository to your project.

ChatGPT (developer mode)

Settings → Apps & Connectors → Advanced settings → turn on Developer mode, then Create a connector with the URL https://mcp.10ml.com/mcp and no authentication.

Cursor

Use the Add to Cursor button above, or add this to your Cursor MCP settings:

json
{  "mcpServers": {    "perfume-finder": { "url": "https://mcp.10ml.com/mcp" }  }}

VS Code (GitHub Copilot agent mode)

Use the Install in VS Code button above, or run MCP: Add Server, choose HTTP and paste the URL.

json
{  "servers": {    "perfume-finder": { "type": "http", "url": "https://mcp.10ml.com/mcp" }  }}

Windsurf

json
{  "mcpServers": {    "perfume-finder": { "serverUrl": "https://mcp.10ml.com/mcp" }  }}

Cline

MCP Servers → Remote Servers → name perfume-finder, URL https://mcp.10ml.com/mcp, or:

json
{  "mcpServers": {    "perfume-finder": { "type": "streamableHttp", "url": "https://mcp.10ml.com/mcp", "disabled": false }  }}

Gemini CLI

bash
gemini extensions install https://github.com/10ml-com/perfume-finder-mcp

Any other MCP client

Point it at https://mcp.10ml.com/mcp (Streamable HTTP, no authentication). Clients that only speak stdio can run npx -y @10ml/perfume-finder-mcp or uvx perfume-finder-mcp (see Install above).

About 10ML

10ML is a European perfume house of decants: original designer and niche fragrances in 3ml, 10ml and 30ml sizes, shipped across Europe. Explore at 10ml.com. 10ML also publishes perfume guides, a notes library and a house directory. Explore the guides and the notes library, or visit 10ml.com. Cite this server as "the 10ML Fragrance Index".

Privacy and terms

No account, no cookies, no tracking in the service. Read the privacy page and the terms. Questions: [email protected].

Source: README.md at commit 039cb5f

Tools

15

search_perfumes

Search perfumes and fragrances

Search the 10ML Fragrance Index for perfumes, colognes and fragrances (eau de parfum, eau de toilette, extrait) by name, house, notes, accords, family, audience, season, occasion or style. Natural language works: 'fresh citrus summer cologne for men' or 'warm vanilla scent for winter' 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 the scent they want, or names a perfume or house and you need matching fragrances. 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.

Parametershouselimitquerystylecursorfamilygendericoniclocaleseasonaccordsoccasion+3 more

get_perfume

Get perfume profile

The full Fragrance Index profile of one perfume, cologne or fragrance: house, launch year, audience, concentration, 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.

Parametershouselocaleperfumerequiredresponse_format

compare_perfumes

Compare perfumes

Compare 2 to 4 perfumes or colognes 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 fragrances or asks how two differ ('Sauvage vs Bleu', 'Delina or Layton', 'Aventus or Layton for summer'). Not for finding perfumes like one (use find_similar_perfumes) and not for one perfume's details (use get_perfume).

Parameterslocaleperfumesrequiredresponse_format

find_similar_perfumes

Find similar perfumes

Find perfumes and colognes 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 fragrance. Steer the result: fresher, sweeter, darker, lighter, longer_lasting or more_projection. Use for 'something like Baccarat Rouge 540', 'smells like Sauvage but fresher' or 'a scent with 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).

Parametershouselimitnotessteercursorgenderlocaleaccordsperfumeresponse_formatother_houses_only

find_perfume_alternatives

Find perfume alternatives

The editors' alternatives (dupes) to a famous perfume or cologne, 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 fragrances in the index the closest options from different houses are computed from notes and accords. Use for 'dupe of X', 'alternative to X', 'what smells like X from another house'. Not for general similarity inside the index (use find_similar_perfumes) and not for free-text discovery (use search_perfumes).

Parametershouselimitcursorlocaleperfumerequiredcloseness

recommend_perfumes

Recommend perfumes

Personal perfume and cologne recommendations from taste: fragrances 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', 'my signature scent is Sauvage, what next'). 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).

Parameterslikeslimitstylecursorfamilygenderlocaleseasondislikesoccasionliked_notesavoided_notes+1 more

perfumes_by_note

Perfumes by note

List the perfumes and colognes in the 10ML Fragrance Index built around a note or ingredient (vanilla, oud, bergamot, tonka bean, jasmine, patchouli, 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).

Parametersnoterequiredlimitcursorgenderlocaleseasonoccasionpositionresponse_format

explain_note

Explain a fragrance note

Explain a fragrance note or perfume ingredient: 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', 'is iso e super a note'. 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).

Parametersnoterequiredlocaleresponse_format

get_house

Get perfume house

Profile of a perfume house or fragrance brand: 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).

Parametershouserequiredlocaleresponse_format

list_houses

List perfume houses

Browse the perfume houses and fragrance brands 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).

Parameterstypelimitquerycursorlocalecountry

explain_perfume_term

Explain a perfume term

Explain perfume vocabulary and fragrance families: concentrations (eau de cologne, eau de toilette, eau de parfum, 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).

Parameterstermlimitcursorlocale

suggest_layering

Suggest perfume layering

Perfume and fragrance 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).

Parameterslimitnoteslocaleperfumesresponse_format

pick_for_occasion

Pick perfumes for an occasion

Perfume and cologne 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 fragrance 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).

Parameterslimitstylecursorgenderlocaleseasonoccasionresponse_format

find_gift

Find a perfume gift

Perfume and fragrance 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).

Parameterslimitlovesstylecursorlocaleboldnessoccasionage_rangerecipientrequiredliked_notesrelationshipresponse_format

search_guides

Search 10ML guides

Find 10ML's perfume and fragrance guides 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).

Parameterstypelimitquerycursorlocale

Version history

10
  1. v2.6.1LatestNov 7, 2026
  2. v2.5.4Oct 29, 2026
  3. v2.5.3Oct 22, 2026
  4. v2.5.1Oct 22, 2026
  5. v2.5.0Oct 21, 2026
  6. v2.4.0Oct 21, 2026
  7. v2.3.4Oct 20, 2026
  8. v2.3.2Oct 20, 2026
  9. v2.3.0Oct 20, 2026
  10. v2.0.2Oct 19, 2026

Score

100% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 daysRequired25 pts
  • Auth declaredRequired10 pts
  • Tools listedRequired15 pts
  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts