protogrid

Search / com.noteboxd/mcp

Fragrance & Perfume MCP (Noteboxd)

R0· no sign-in

Fragrance & perfume MCP: search fragrances, notes, accords, brands, perfumers, reviews & charts.

v0.1.4 · active · repository · descriptor JSON · versions

An agent can connect right now, no human step.Remote endpoint, no authentication, reachable on the last probe.
Quality86good
Trust94of 100
Uptime, 30 days100%
Latency p50293 ms

Connect

8 clients · secrets stay placeholders
{
  "mcpServers": {
    "noteboxd": {
      "type": "http",
      "url": "https://mcp.noteboxd.com/mcp"
    }
  }
}
claude mcp add --transport http noteboxd https://mcp.noteboxd.com/mcp
[mcp_servers.noteboxd]
url = "https://mcp.noteboxd.com/mcp"
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "noteboxd": {
      "type": "remote",
      "url": "https://mcp.noteboxd.com/mcp",
      "enabled": true
    }
  }
}
{
  "mcpServers": {
    "noteboxd": {
      "type": "http",
      "url": "https://mcp.noteboxd.com/mcp"
    }
  },
  "deeplink": "cursor://anysphere.cursor-deeplink/mcp/install?name=noteboxd&config=eyJ0eXBlIjoiaHR0cCIsInVybCI6Imh0dHBzOi8vbWNwLm5vdGVib3hkLmNvbS9tY3AifQ%3D%3D"
}
{
  "servers": {
    "noteboxd": {
      "type": "http",
      "url": "https://mcp.noteboxd.com/mcp"
    }
  }
}
{
  "mcpServers": {
    "noteboxd": {
      "httpUrl": "https://mcp.noteboxd.com/mcp"
    }
  }
}
extensions:
  "noteboxd":
    enabled: true
    name: "noteboxd"
    type: streamable_http
    uri: "https://mcp.noteboxd.com/mcp"
    timeout: 300

Quality 86 / 100good

protocol88 · weight 25
  • pass
    protocol.modernsupports 2026-07-28 (server/discover)
  • pass
    protocol.statelessanswers without a session
  • pass
    protocol.transportstreamable HTTP
  • warn
    protocol.list_ttltools/list declares ttlMs 0, so clients re-fetch it on every use
authorizationn/a · weight 15
  • n/a
    auth.prm, auth.as_metadata, auth.cimdno remote uses OAuth
  • n/a
    auth.secret_in_urlno templated URL
tool hygiene100 · weight 30
  • pass
    tools.descriptionsevery tool has a description
  • pass
    tools.description_lengthdescriptions are concise
  • pass
    tools.schemasevery tool has an object input schema
  • pass
    tools.annotations27 of 27 tools declare readOnlyHint or destructiveHint
  • pass
    tools.directory_hintsevery tool declares readOnlyHint, destructiveHint, idempotentHint and openWorldHint
  • pass
    tools.token_costabout 4,912 tokens to load every tool
  • pass
    tools.api_dumptools are not a one-to-one API dump
stability75 · weight 15
  • warn
    stability.changes27 tool changes in 30 days
  • pass
    stability.rug_pullno tool changed its meaning under the same name
dependencies67 · weight 15
  • pass
    deps.known_vulnsno known advisory in 98 resolved packages
  • fail
    deps.mcp_sdk_version@modelcontextprotocol/sdk 1.30.1 has 1 known advisory (GHSA-6qxp-vccf-f47h); update @modelcontextprotocol/sdk to 1.31.0 or later
  • pass
    deps.resolvable@noteboxd/[email protected] resolved: 98 packages

27 tools, about 4,912 tokens to load them all · tool set 1c300452416c · tools last changed 2026-10-17 · checked 2026-10-19 10:52 UTC

Tool changes

  • user_taste_comparechangedinput schema
  • user_taste_summarychangedinput schema
  • user_taste_publicchangedinput schema
  • user_get_wearing_historychangedinput schema
  • user_get_reviewschangedinput schema
  • user_get_collectionschangedinput schema
  • user_get_wishlistchangedinput schema
  • user_get_cabinetchangedinput schema
  • fragrance_review_digestchangedinput schema
  • fragrance_comparechangedinput schema

Showing the latest 10. Full history: list_changes · trend: quality JSON.

Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed. How it is computed.

Trust 94 / 100

provenance90
liveness100
freshness85
hygiene100

+repository +namespace-matches-repo +dns-namespace +reachable +uptime-100% ~updated-80d-ago

Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed. How it is computed.

Dependencies

@noteboxd/[email protected] npm97 dependencies, resolved · MCP SDK @modelcontextprotocol/sdk 1.30.1 · advisories checked 2026-10-19

advisoryseveritypackagefixed in
GHSA-6qxp-vccf-f47hMCP TypeScript SDK: OAuth client could send credentials to an authorization server chosen by the MCP serverhigh@modelcontextprotocol/[email protected]MCP SDK, directfixed in 1.31.0

Dependency graphs from deps.dev; advisories from OSV.dev, including the GitHub Advisory Database and the PyPI Advisory Database; all CC BY 4.0. The graph is what a clean install of this version resolves today; nothing was installed or run. How it is checked.

Endpoints

remoteauthreachableuptime 30dp50protocollast ok
https://mcp.noteboxd.com/mcp streamable-httpnoneyes100%293 ms2026-07-282026-10-19
packageregistryversionruntimesecrets
@noteboxd/mcpnpm0.1.4–NOTEBOXD_API_KEY

Tools (27)

ai_collectionread-onlyGenerate a curated fragrance collection from a natural-language prompt (e.g. 'office-safe designer scents under $100', 'niche oud masterpieces'). Returns 5–25 grounded picks with rationale. Requires Pro. See also: `ai_recommend` for personalized picks · `fragrance_search` for manual filtering.
ai_recommendread-onlyGet personalized fragrance recommendations based on your taste profile. Optional natural-language prompt to guide results (e.g. 'something fresh for summer'). Requires Pro. See also: `ai_wear_today` for what to wear right now · `user_get_cabinet` for your collection.
ai_wear_todayread-onlyWhat should I wear today? Picks from your owned cabinet (CURRENT status only) based on optional prompt/weather. Returns nothing if your cabinet is empty. Requires Pro. See also: `ai_recommend` for discovery beyond your cabinet · `user_get_cabinet` for your full collection.
brand_getread-onlyGet a brand profile (name, country, founded, description) and its top fragrances. Use the brand slug, e.g. 'maison-francis-kurkdjian'. See also: `fragrance_search` with the `brand` filter to get the full paginated catalogue for this brand · `perfumer_get` if the brand has a known house perfumer.
chart_getread-onlyGet a specific chart leaderboard by slug (e.g. 'top-rated', 'trending', 'top-rated-brand-chanel'). Returns ranked fragrances with scores and movement. See also: `charts_list` to see all available charts · `fragrance_get` for the full profile of any fragrance on the chart.
charts_listread-onlyList all available Noteboxd chart rankings (e.g. top-rated, trending, top by brand). Returns chart names and summary stats. See also: `chart_get` with a chart slug to see the full leaderboard · `trending` for a quick snapshot of what's hot.
fragrance_compareread-onlyCompare two fragrances head-to-head — shared vs. distinct notes/accords/families, community and critic scores, audience, and an AI-written synthesis (shared character, differences, who each suits). Public, cached 7 days per pair. See also: `fragrance_get` for full profiles · `fragrance_similar` for alternatives.
fragrance_getread-onlyGet the full profile for a single fragrance by UUID or slug (e.g. 'tom-ford/oud-wood'). Returns notes pyramid, accords, FOTW classification, perfumer, community score, and more. See also: `fragrance_similar` for fragrances with similar accord profiles · `fragrance_get_reviews` for community reviews · `fragrance_get_wearing_stats` for when people wear it.
fragrance_get_reviewsread-onlyGet paginated community reviews for a fragrance. Sort by helpfulness, recency, or score. See also: `fragrance_get` for the fragrance's full profile · `fragrance_get_wearing_stats` for aggregate wearing data.
fragrance_get_wearing_statsread-onlyAggregate wearing statistics for a fragrance — when people wear it, in what seasons, and mood tags. Free tier sees total check-ins only; Pro sees full breakdowns. See also: `fragrance_get` for full profile · `fragrance_similar` for alternatives with similar profiles.
fragrance_review_digestread-onlyGet a concise AI-generated digest summarizing a fragrance's community reviews — key themes, consensus, and standout opinions. Public, cached per fragrance. See also: `fragrance_get_reviews` for individual reviews · `fragrance_get` for full profile.
fragrance_searchread-onlySearch and filter the Noteboxd fragrance encyclopedia. Requires a query or at least one filter — the full catalogue cannot be listed. Tip: The `q` parameter searches fragrance names OR brand names independently. For best results with a known brand, use the `brand` slug filter instead of including the brand name in `q`. Examples: - "Find woody fragrances above 8/10 from the 2010s" → note='woody' + minScore=8 + decade='2010s' - "Creed fragrances" → brand='creed' - "Bleu de Chanel" → q='Bleu' + brand='chanel' See also: `fragrance_get` for a single fragrance's full profile · `search` for universal cross-entity lookup (brands, notes, perfumers, collections in one call).
fragrance_similarread-onlyFind fragrances with similar accord profiles to a given fragrance. Returns ranked alternatives based on shared accords and character. See also: `fragrance_get` for the source fragrance's full profile · `fragrance_search` with note/accord filters for manual exploration.
noteboxd_openread-onlyOpen the Noteboxd app UI in ChatGPT. Call with no arguments to show the home screen (trending fragrances), with `query` to run a fragrance search inside the app, or with `fragrance` (slug or UUID) to show a fragrance profile. The app renders the returned result; keep the chat reply to one short line.
note_exploreread-onlyGet a note's profile (family, description, origin, extraction method) and top fragrances featuring it, sorted by community score. Use the note slug, e.g. 'oud', 'bergamot', 'iris'. See also: `notes_list` to browse all notes by family/popularity · `fragrance_search` with the `note` filter to find fragrances featuring this note.
notes_listread-onlyBrowse fragrance notes — filter by family (e.g. 'woody', 'floral', 'citrus') and sort by popularity or name. Returns note names, families, colours, and fragrance counts. See also: `note_explore` for a single note's full profile and top fragrances · `fragrance_search` with the `note` filter to find fragrances featuring a specific note.
perfumer_getread-onlyGet a perfumer's profile (bio, country, house affiliation) and their top fragrances by community score. See also: `fragrance_search` to find more fragrances by this perfumer · `brand_get` if you want the brand they work for.
searchread-onlyUniversal search across all Noteboxd entities — fragrances, brands, notes, perfumers, and collections — in a single call. Best for quick lookups and vague queries. Examples: - "Jacques Polge" → returns the perfumer - "oud" → returns the note, plus top oud fragrances - "Bleu" → returns Bleu de Chanel, Bleu de Dior, etc. See also: `fragrance_search` for advanced fragrance-only filtering (by note, decade, score, concentration) · `trending` for what's popular right now.
trendingread-onlyWhat's trending on Noteboxd right now — top search queries, highest-rated fragrances, and most popular notes. No parameters needed. See also: `charts_list` for full ranking leaderboards · `fragrance_search` to explore specific categories.
user_get_cabinetread-onlyGet your fragrance cabinet — fragrances you own, have tried, or finished. Requires a Pro account. See also: `fragrance_get` for full details on any fragrance in your cabinet · `fragrance_similar` to find alternatives to your favourites · `user_get_wishlist` for fragrances you want to try.
user_get_collectionsread-onlyGet your collections (fragrance lists). Optionally pass a collectionId to see its items. Requires a Pro account. See also: `fragrance_get` for full details on any fragrance in a collection.
user_get_reviewsread-onlyGet reviews you've written, or reviews you found helpful. Requires a Pro account. See also: `fragrance_get_reviews` for community reviews on a specific fragrance.
user_get_wearing_historyread-onlyGet your wearing check-in history over time. Requires a Pro account. See also: `fragrance_get_wearing_stats` for aggregate community wearing data on a specific fragrance.
user_get_wishlistread-onlyGet your fragrance wishlist. Requires a Pro account. See also: `fragrance_get` for full details on any wishlist fragrance · `user_get_cabinet` for fragrances you already own.
user_taste_compareread-onlyCompare your taste with another user — compatibility score, shared and divergent notes/accords/families, and an optional AI overview. Requires Pro for the overview. See also: `user_taste_public` for a user's top preferences · `user_taste_summary` for your own summary.
user_taste_publicread-onlyGet a user's public taste profile — their top notes, accords, and families derived from their collection and reviews. No LLM call, deterministic. See also: `user_taste_compare` for compatibility between two users.
user_taste_summaryread-onlyGet your AI-generated taste profile summary — a natural-language description of your fragrance preferences based on your cabinet, reviews, and likes. Requires Pro. See also: `user_taste_public` for the deterministic breakdown · `user_taste_compare` for compatibility.

Schemas: list_tools.

Similar MCP servers

Official server.json
{
  "name": "com.noteboxd/mcp",
  "title": "Fragrance & Perfume MCP (Noteboxd)",
  "$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
  "remotes": [
    {
      "url": "https://mcp.noteboxd.com/mcp",
      "type": "streamable-http"
    }
  ],
  "version": "0.1.4",
  "packages": [
    {
      "version": "0.1.4",
      "transport": {
        "type": "stdio"
      },
      "identifier": "@noteboxd/mcp",
      "registryType": "npm",
      "environmentVariables": [
        {
          "name": "NOTEBOXD_API_KEY",
          "format": "string",
          "isSecret": true,
          "isRequired": true,
          "description": "Noteboxd API key (nb_live_...). Create one free at https://developers.noteboxd.com"
        }
      ]
    }
  ],
  "repository": {
    "url": "https://github.com/noteboxd/mcp",
    "source": "github"
  },
  "description": "Fragrance & perfume MCP: search fragrances, notes, accords, brands, perfumers, reviews & charts."
}