Perfume Picks
Server Details
Search the Perfume Picks fragrance database: 13,000+ scents with notes, dupes, and wear data.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
- Repository
- bguillow-rgb/perfume-picks-mcp
- GitHub Stars
- 0
- Server Listing
- Perfume Picks MCP Server
TDQS
Scored across 8 tools
Most tools have clearly distinct purposes: search, detail, comparison, similarity, dupes, recommendations, trends, and situational suggestions. The main potential confusion is between find_similar and find_dupes, since both return fragrances related to a given one, though their intent differs.
Tool names mostly follow a verb_noun snake_case pattern: compare_fragrances, find_similar, get_fragrance, search_fragrances. trending_fragrances and what_to_wear_tonight break the verb-first convention slightly, but the overall naming style is coherent and readable.
Eight tools is well-scoped for a fragrance discovery and recommendation service. Each tool covers a distinct user need without redundancy or bloat, and the count feels appropriate for the domain.
The tool set covers the full fragrance journey: searching, retrieving details, comparing, finding alternatives, personalized recommendations, trend awareness, and context-based picks. There are no obvious dead ends or critical missing operations for a read-focused recommendation API.
Available Tools
8 toolscompare_fragrancesARead-onlyIdempotentInspect
Side-by-side comparison: note pyramids, shared and distinct accords, longevity/sillage/compliment scores, concentration, and price difference.
| Name | Required | Description | Default |
|---|---|---|---|
| fragrance_a | Yes | First fragrance — slug or name | |
| fragrance_b | Yes | Second fragrance — slug or name |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish that the tool is read-only, idempotent, and non-destructive. The description adds the core behavioral context: exactly what dimensions the comparison covers. It does not explain edge cases like missing fragrance data, but for a safe read-only comparison this is strong additional context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, tightly written sentence that front-loads the operation and then uses a colon-separated list to convey the comparison scope. No redundant words or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a low-complexity two-parameter tool with strong read-only annotations and no output schema. The description adequately conveys what the result will cover and the pair being compared. It lacks explicit alternativ routing, but the operation is clear enough to invoke correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already documents both parameters with 100% coverage, including that each accepts a slug or name. The description does not add parameter-specific details, which is acceptable since the schema carries the burden.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the operation as a side-by-side comparison and enumerates concrete comparison dimensions: note pyramids, shared/distinct accords, longevity/sillage/compliment scores, concentration, and price difference. This distinguishes it from sibling tools like get_fragrance or find_similar, which are single-fragrance or similarity-focused tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'side-by-side comparison' implies the tool should be used when a user wants to compare two fragrances, and the parameter names make the pair explicit. However, it does not mention when to prefer this over siblings like find_similar or find_dupes, nor any when-not conditions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
find_dupesARead-onlyIdempotentInspect
Curated dupes for a fragrance — cheaper scents documented to smell like the original, with match percentage and price comparison. The answer to 'what smells like X without the price tag'.
| Name | Required | Description | Default |
|---|---|---|---|
| fragrance | Yes | Fragrance slug or name to find dupes for |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already signal read-only, idempotent, non-destructive behavior, so the description adds meaningful context by explaining that results are curated, documented to smell like the original, and include match percentage and price comparison. This goes beyond the structured annotations and clarifies the curated nature of the data.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences deliver the purpose, key output details, and the user-facing trigger phrase with no filler. The main behavior is front-loaded and every word contributes to understanding.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter tool with no output schema, the description adequately explains what the tool returns: curated dupes, match percentage, and price comparison. Combined with the clear input schema and supportive annotations, nothing essential is missing for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already covers the single parameter fully with a description ('Fragrance slug or name to find dupes for'), and schema coverage is 100%. The description adds no new parameter details beyond reinforcing that the input is a fragrance, so the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: find curated, cheaper fragrance dupes for a given original, with match percentage and price comparison. It also distinguishes itself from siblings like find_similar by emphasizing 'dupes' and the 'without the price tag' angle, making the intended use unmistakable.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives a clear usage context: use this when someone asks for what smells like a fragrance at a lower price. It does not explicitly name alternatives or exclusion criteria, but the trigger phrase 'the answer to...' effectively routes the agent to this tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
find_similarARead-onlyIdempotentInspect
Fragrances most similar to a given one, from Perfume Picks' precomputed similarity ranking over notes and accords.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max results (default 5) | |
| fragrance | Yes | Fragrance slug or name |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already signal readOnly, idempotent, and non-destructive behavior. The description adds useful context beyond that by stating the similarity is precomputed and based on notes and accords, indicating a deterministic, offline ranking rather than live user-specific filtering.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is one tight sentence with no wasted words. It front-loads the main purpose and then gives the distinguishing source of similarity, making it easy for an agent to parse quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter read-only lookup, the description provides enough context: what it returns, how similarity is determined, and the input basis. It does not describe the exact output structure, but the notion of a similarity ranking makes the return shape reasonably inferable.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so both parameters (fragrance and limit) are already documented in the schema. The description adds no extra parameter-level meaning, which is acceptable given the schema carries the load.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool returns fragrances similar to a given fragrance, based on a precomputed similarity ranking over notes and accords. It does not use an explicit verb like 'returns' or 'lists,' and it doesn't directly contrast with siblings like find_dupes or get_recommendations, though the precomputed ranking over notes/accords helps distinguish it.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The context is implied: use this tool when you need similar fragrances to a specified one. However, there is no explicit guidance about when not to use it or which sibling tool would be a better choice for related but different needs.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_fragranceARead-onlyIdempotentInspect
Detailed record for one fragrance: full note pyramid (top/heart/base), accords, concentration, community longevity/sillage/compliment scores, and MSRP. Accepts a Perfume Picks slug or a name like 'Bleu de Chanel'.
| Name | Required | Description | Default |
|---|---|---|---|
| slug_or_name | Yes | Fragrance slug or name |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so no safety contradictions exist. The description adds meaningful scoping context by stating it returns a 'detailed record for one fragrance' and listing the output attributes, which clarifies the tool's behavior beyond a generic getter. It does not disclose edge-case behavior (e.g., handling of ambiguous names or not-found errors), but the annotations lower the bar.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, each earning its place: the first lists the record's contents, the second specifies the input format. No filler or repetition of schema/annotation data.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter, read-only retrieval tool with no output schema, the description covers both invocation (slug or name) and expected return contents (note pyramid, scores, MGRP). No critical information is missing for an agent to successfully call it, and annotations already provide the safety profile.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already documents the slug_or_name parameter with 100% coverage, so the baseline is 3. The description adds a concrete example ('Bleu de Chaanel') and clarifies that a slug must be a 'Perfume Picks slug', giving the agent a better sense of the accepted format than the schema's generic 'Fragrance slug or name'.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with 'Detailed record for one fragrance', which specifies the verb (get) and resource (fragrance) precisely. Listing the full note pyramid, accords, concentration, community scores, and MSRP distinguishes it from siblings like search_fragrances or compare_fragrances, which operate on lists or multiple items. This makes the tool's purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description makes it clear this is for retrieving a single fragrance's detailed record, so an agent can infer when to use it: when a specific fragrance is already known. It does not explicitly name alternatives or say when not to use it, such as 'for browsing, use search_fragrances'. However, the contextual clue 'one fragrance' versus the sibling names implies the appropriate use case.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_recommendationsBRead-onlyIdempotentInspect
Personalized fragrance picks from note/accord preferences (e.g. 'vanilla', 'oud', 'citrus'), a budget in USD, an occasion ('office', 'date night', 'gift', 'signature scent'), and gender presentation.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max results (default 5) | |
| budget | No | Max MSRP in USD | |
| gender | No | Marketed gender category of the fragrance; omit to include all | |
| occasion | No | What the fragrance is for | |
| preferences | Yes | Notes or accords the wearer enjoys, e.g. ['vanilla','amber','rose'] |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and idempotentHint=true, so the safety profile is covered. The description adds that the result is a curated set of 'picks' rather than a full listing, which is a useful behavioral trait, but it does not disclose return format, ordering, or any limitations. This is modest added context beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that front-loads the core purpose ('Personalized fragrance picks') and packs examples into parentheticals. It is information-dense but organized and not bloated, though it is slightly long relative to the unique value it adds over the schema.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and no explicit differentiation from sibling tools, the description leaves gaps: it does not explain what the returned recommendations look like or when to prefer this over find_similar or search_fragrances. Parameter constraints are fully covered by the schema and read-only annotations, so the essential calling contract is present, but the contextual gaps keep this below a 4.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with parameters like preferences, budget, occasion, and gender already described with examples. The description provides some clearer example values for occasion and preferences, but it largely repeats schema information and does not significantly reduce reliance on the schema. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific verb—'picks' as in recommends—and resource, 'fragrance picks,' while specifying the personalization inputs (preferences, budget, occasion, gender). This distinguishes it from generic search siblings, though it does not explicitly name any alternative.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool should be used when a user has note/accord preferences and optionally budget, occasion, or gender to get personalized fragrance suggestions. However, it offers no explicit when-to-use versus siblings like find_similar or trending_fragrances; the usage context must be inferred from the word 'personalized'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_fragrancesARead-onlyIdempotentInspect
Full-text search across 13,000+ fragrances in the Perfume Picks database. Filter by brand, fragrance family, gender, and MSRP (USD). Returns note pyramids, accords, and community wear scores with source attribution.
| Name | Required | Description | Default |
|---|---|---|---|
| brand | No | Brand name filter, e.g. 'Dior' | |
| limit | No | Max results (default 10) | |
| query | No | Free-text search: fragrance or brand name | |
| gender | No | Marketed gender category of the fragrance; omit to include all | |
| price_max | No | Maximum MSRP in USD | |
| price_min | No | Minimum MSRP in USD | |
| fragrance_family | No | Family filter, e.g. 'woody', 'amber', 'fresh' |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds useful behavioral context by disclosing that results include note pyramids, accords, community wear scores, and source attribution, which is important because there is no output schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no filler. The first sentence front-loads the core purpose and scope, the second covers filters and output. Every phrase earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is complete enough for a read-only search tool with strong annotations and 100% schema parameter coverage. It explains the database scope, filters, and return data despite lacking an output schema. Minor gaps remain around result ordering, pagination, and whether a query is required, but these are not critical for invoking the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the parameters are already documented in ${schema}. The description adds minimal extra parameter meaning by mapping 'brand, fragrance family, gender, and MSRP (USD)' to the corresponding fields, but it does not clarify query semantics, limit behavior, or how filters combine.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action ('Full-text search'), the exact resource ('13,000+ fragrances in the Perfume Picks database'), and the available filter dimensions (brand, family, gender, MSRP). It also lists the return fields, making it easy for an agent to distinguish this broad search tool from sibling tools like get_fragrance or find_similar.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use the tool by defining it as a full-text search across the entire fragrance database, but it does not explicitly say when to prefer it over siblings like find_similar, find_dupes, or get_recommendations. The usage context is clear enough for an agent to infer, but there is no explicit alternative routing or exclusion.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
trending_fragrancesARead-onlyIdempotentInspect
Fragrances Perfume Picks users are adding to their wardrobes most over the last 30 days (falls back to catalog popularity when live activity data is unavailable). The method used is labeled in the response.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max results (default 10) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so safety is covered. The description adds meaningful behavioral details: the fallback mechanism when live data is unavailable and the labeling of the method in the response, which helps the agent interpret results correctly.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that immediately states the purpose and key behavior. It is front-loaded and contains zero filler, conveying everything needed without waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with one optional parameter and no output schema, the description explains the data source (30-day live activity), the fallback, and that the method is labeled in the response. This fully equips an agent to use the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema fully covers the only parameter (limit) with a description ('Max results (default 10)'), so the tool description adds no additional semantic value beyond what the schema provides. Baseline score of 3 is appropriate given 100% schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists fragrances users are adding to wardrobes most in the last 30 days, with a fallback to catalog popularity. It distinguishes itself from sibling tools like search_fragrances or get_recommendations by focusing on trending/popular based on live activity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context: it uses 30-day live activity data, falling back to catalog popularity when unavailable. It does not explicitly mention when not to use it or direct to alternatives, but the context implies it's for trending insights rather than personalized recommendations or comparisons.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
what_to_wear_tonightARead-onlyIdempotentInspect
A fragrance suggestion for right now, based on mood, occasion (e.g. 'date', 'office tomorrow', 'night out', 'cozy evening in'), and season — scored with Perfume Picks' community compliment, office-safety, and versatility data.
| Name | Required | Description | Default |
|---|---|---|---|
| mood | No | How you're feeling | |
| gender | No | Marketed gender category of the fragrance; omit to include all | |
| season | No | Season to weight the pick toward — heavier, warmer scents in winter; fresher in summer | |
| occasion | No | The setting |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish the tool as read-only, idempotent, and non-destructive. The description adds useful behavioral context by indicating that the result is a suggestion scored with community compliment, office-safety, and versatility data, which helps an agent set expectations about the output and recommendation logic.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single front-loaded sentence with no filler, stating the purpose before listing input factors and examples. It is slightly dense with parenthetical examples, but every component contributes to tool selection and invocation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple, read-only suggestion tool with all parameters optional and well-covered by the schema, the description is sufficient: an agent knows what inputs matter and what kind of output to expect. There is no output schema, but 'a fragrance suggestion' plus the scoring basis covers the essentials for a first call.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, and the schema already documents gender and season with useful descriptions. The description reinforces mood, occasion, and season as inputs and adds occasion examples, but it does not add significant semantics beyond what the schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the resource ('a fragrance suggestion') and the situational basis (mood, occasion, season), so an agent can understand what the tool produces. It does not explicitly differentiate from the sibling get_recommendations, but the 'for right now' framing and scoring criteria provide enough distinction for a 4.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives a clear context for use: selecting a fragrance for the current moment based on mood, occasion, and season, with concrete occasion examples. It does not name alternatives or exclusions, but the situational trigger is reasonably explicit and actionable.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
7 tool updates
- Changed
compare_fragrances2 fields changed- added
Input schema / properties / fragrance_a / maxLengthAdded value: +200 - added
Input schema / properties / fragrance_b / maxLengthAdded value: +200
- Changed
find_dupes1 field changed- added
Input schema / properties / fragrance / maxLengthAdded value: +200
- Changed
find_similar1 field changed- added
Input schema / properties / fragrance / maxLengthAdded value: +200
- Changed
get_fragrance1 field changed- added
Input schema / properties / slug_or_name / maxLengthAdded value: +200
- Changed
get_recommendations3 fields changed- added
Input schema / properties / occasion / maxLengthAdded value: +120 - added
Input schema / properties / preferences / items / maxLengthAdded value: +60 - added
Input schema / properties / preferences / maxItemsAdded value: +20
- Changed
search_fragrances3 fields changed- added
Input schema / properties / brand / maxLengthAdded value: +200 - added
Input schema / properties / fragrance_family / maxLengthAdded value: +120 - added
Input schema / properties / query / maxLengthAdded value: +120
- Changed
what_to_wear_tonight2 fields changed- added
Input schema / properties / mood / maxLengthAdded value: +120 - added
Input schema / properties / occasion / maxLengthAdded value: +120
8 tool updates
- First observed
compare_fragrances - First observed
find_dupes - First observed
find_similar - First observed
get_fragrance - First observed
get_recommendations - First observed
search_fragrances - First observed
trending_fragrances - First observed
what_to_wear_tonight
Related MCP Connectors
Fragrance encyclopedia: note pyramids, accords, perfumers and dupes (parfica.com).
Search the Pour Picks bourbon & whiskey database: 4,700+ bottles with tasting profiles and prices.
Fragrance & perfume MCP: search fragrances, notes, accords, brands, perfumers, reviews & charts.
Search the Percolate specialty coffee database: 1,100+ coffees with brew recipes and pairings.
Related MCP Servers
- AlicenseAqualityBmaintenanceEnables querying the Pour Picks bourbon & whiskey database with tools for search, bottle details, recommendations, comparisons, and trending, providing structured tasting profiles, prices, pairings, and ratings.877MIT

Reletterofficial
AlicenseAqualityBmaintenanceSearch 7M+ newsletters and full-text archives, with subscriber numbers, contacts, social accounts, rankings, and audience data.12MIT- AlicenseAqualityCmaintenanceSearch and explore 1,100+ games with 69-dimension Gameplay DNA profiles and find similar games via AI-powered cosine similarity.49MIT
- AlicenseAqualityCmaintenanceSearch the AI Tool Directory catalog of 2,000+ AI tools — compare tools, find curated alternatives, and check whether a tool is still active, defunct, or acquired (backed by the AI Graveyard dataset).6111MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.