Scentindex

io.github.CloudCorpRecords由 GitHub 账号 CloudCorpRecords 发布v0.1.0更新于 Nov 7, 2026

搜索香水索引:香水、香调、品牌和指南;相似香气与替代选择。

AI 翻译由 AI 模型根据下方的原文描述翻译,可能有误。

原文描述

Search a fragrance index: perfumes, notes, houses and guides; similar scents and alternatives.

已验证STDIO仅桌面

概览

Scentindex 的本地 MCP 服务;无需登录;STDIO;9 个工具。

暂无 AI 概览:以下信息来自注册中心条目和服务本身。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Scentindex,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

scentindex

A window onto a large fragrance index. scentindex queries the public 10ml Fragrance Index — perfumes, the notes inside them, the houses that make them, and the guides that explain the vocabulary — and returns what the index returns, unchanged. No account and no API key are involved; it is a thin, honest client over a public API.

What you can do with it:

  • Search perfumes by free text, house, notes included or excluded, accords, family, gender, season, occasion or style, and page through the results with a cursor.
  • Open one perfume in full to see its notes, accords and metadata.
  • Start from a perfume, a note set or an accord profile and find similar scents, or look for alternatives — the same scent profile from other houses.
  • Browse perfumes by a single note, for example everything containing oud.
  • Ask what a note actually smells like and where it tends to appear.
  • List and open fragrance houses, filtered by type or country, and search the index's guides and glossary content.

Most tools accept a locale for the response language and, where the underlying operation supports it, a response_format of concise (the API's default) or detailed. List tools page with limit (1–100) and an opaque cursor taken from a previous response.

Labelled subset: 9 of 15 tools

This rebuild implements 9 of the original tool set's 15 tools — the nine that map onto operations published in the upstream OpenAPI document:

search_perfumes, get_perfume, find_similar_perfumes, find_perfume_alternatives, perfumes_by_note, explain_note, list_houses, get_house, search_guides.

The remaining six are omitted, because they have no operation in the published OpenAPI and their argument shapes are not published anywhere reachable:

compare_perfumes, recommend_perfumes, explain_perfume_term, suggest_layering, pick_for_occasion, find_gift.

Configuration

The API base defaults to https://mcp.10ml.com/api/v1 and can be overridden with the PERFUME_API_BASE environment variable. No API key is required.

CLI

Each tool is a subcommand taking one JSON argument string:

bash
npx @reneturcios/scentindex search_perfumes '{"q":"oud","limit":10}'npx @reneturcios/scentindex get_perfume '{"id":"<perfume id>"}'npx @reneturcios/scentindex find_similar_perfumes '{"perfume":"<name>"}'npx @reneturcios/scentindex find_perfume_alternatives '{"perfume":"<name>"}'npx @reneturcios/scentindex perfumes_by_note '{"note":"oud"}'npx @reneturcios/scentindex explain_note '{"id":"oud"}'npx @reneturcios/scentindex list_houses '{"country":"FR"}'npx @reneturcios/scentindex get_house '{"id":"<house id>"}'npx @reneturcios/scentindex search_guides '{"q":"layering"}'npx @reneturcios/scentindex --version

Output is the upstream JSON, verbatim. Exit codes: 0 on success, 1 on a runtime error (including a validation or upstream failure), 2 on a usage error.

MCP server

bash
npx -y @reneturcios/scentindex mcp

MCP client config:

json
{  "mcpServers": {    "scentindex": {      "command": "npx",      "args": ["-y", "@reneturcios/scentindex", "mcp"]    }  }}

Docker

bash
docker run -i ghcr.io/cloudcorprecords/scentindexdocker run --rm ghcr.io/cloudcorprecords/scentindex perfumes_by_note '{"note":"oud"}'

Development

bash
npm installnpm run build   # tsc -> dist/npm test        # tsx --test test/*.test.ts (fake fetch only, no network)npm run dev     # run the CLI from source

License

MIT — Copyright (c) 2026 Rene Turcios

来源:README.md,提交 f236f76

工具

9

search_perfumes

Search the fragrance index by text, house, notes, accords, family, gender, season, occasion or style.

输入参数qhouselimitstylecursorfamilygendericoniclocaleseasonaccordsoccasion另有 3 个

get_perfume

One perfume in full: notes, accords and metadata.

输入参数id必填houselocaleresponse_format

find_similar_perfumes

Perfumes similar to a given perfume, note set or accord profile.

输入参数houselimitnotessteercursorgenderlocaleaccordsperfumeresponse_formatother_houses_only

find_perfume_alternatives

Alternatives to a perfume, e.g. the same scent profile from other houses.

输入参数houselimitcursorlocaleperfumecloseness

perfumes_by_note

Perfumes containing a note, e.g. oud.

输入参数note必填limitcursorlocaleresponse_format

explain_note

Explain a fragrance note: what it smells like and where it appears.

输入参数id必填localeresponse_format

list_houses

List fragrance houses (brands), filterable by type or country.

输入参数typelimitquerycursorlocalecountry

get_house

One fragrance house in full.

输入参数id必填localeresponse_format

search_guides

Search the fragrance guides and glossary content.

输入参数qtypelimitcursorlocale

版本历史

1
  1. v0.1.0最新Nov 3, 2026

评分

已满足适用检查项的 90%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分
  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具必需15 分
  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分