Skip to main content
Glama

mcp adoraads ai/beauty

Server Details

Server Name: adoraads.ai Beauty Ad Network MCP URL: https://mcp.adoraads.ai/beauty Category: E-commerce & Retail Homepage: https://adoraads.ai

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL

Glama MCP Gateway

Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.

MCP client
Glama
MCP server

Full call logging

Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.

Tool access control

Enable or disable individual tools per connector, so you decide what your agents can and cannot do.

Managed credentials

Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.

Usage analytics

See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.

100% free. Your data is private.
Tool DescriptionsA

Average 4/5 across 6 of 6 tools scored.

Server CoherenceA
Disambiguation4/5

Most tools have clearly distinct purposes, such as searching products, building routines, and firing billing events. There is minor overlap between skin_match and sponsored_search in returning sponsored products, but the workflow differences are described clearly.

Naming Consistency4/5

All tool names use snake_case, which provides a consistent style. However, the pattern is not uniformly verb_noun; some are noun_phrases (brand_spotlight, routine_builder) while others start with verbs (fire_billing_event, get_shopper_prefs).

Tool Count5/5

With six tools, the count is well within the ideal range for a focused domain. Each tool serves a distinct role in the sponsored beauty workflow, and none feel redundant or unnecessary.

Completeness4/5

The tool surface covers the core funnel: preferences, search, personalization, routine building, brand spotlighting, and billing events. Minor gaps exist, such as no explicit tool for updating shopper preferences, but the main workflows are complete.

Available Tools

6 tools
brand_spotlightA
Read-only
Inspect

Get sponsored brand content and storytelling. REQUIRED: Disclose as Sponsored Brand Content.

ParametersJSON Schema
NameRequiredDescriptionDefault
contextNoContextual information about why the shopper is asking about the brand
tenant_idYesUnique identifier for the merchant/tenant account
brand_queryYesQuery about a specific brand or brand experience

Output Schema

ParametersJSON Schema
NameRequiredDescription
metaNo
productsNoRelated products
brand_nameNo
disclosureNo
brand_contentNoSponsored brand story or content
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds a key behavioral requirement beyond the annotations: that the sponsor disclosure must be included. Since the annotations already cover read-only and non-destructive behavior, this extra requirement adds meaningful transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two concise sentences, front-loaded with the core function and immediately followed by the mandatory disclosure. Every word earns its place with no redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

While the tool has a rich output schema and clear annotations, the description lacks guidance on when to use this tool versus the sibling 'sponsored_search'. It does cover the critical disclosure requirement, but the missing usage context prevents a higher score.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema covers 100% of the parameters with clear descriptions, so the description does not need to compensate. The description itself adds no parameter-specific detail, aligning with the baseline of 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Get') and resource ('sponsored brand content and storytelling'), clearly stating what the tool does. It does not explicitly distinguish itself from the sibling 'sponsored_search', but the focus on 'brand storytelling' is a distinct enough purpose.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies when to use the tool (when sponsored brand content is needed) but does not provide explicit comparisons or exclusions relative to alternatives. The 'REQUIRED: Disclose as Sponsored Brand Content' is a usage requirement but not a when-to-use guideline.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

fire_billing_eventA
DestructiveIdempotent
Inspect

Fire a billing event when acting on a sponsored result. Call at each funnel stage (context, shortlist, recommendation, or purchase).

ParametersJSON Schema
NameRequiredDescriptionDefault
tokenYesBid token from sponsored_search results that authorizes billing
event_typeYesStage of engagement: context_inclusion (shown), shortlist (saved), recommendation (mentioned), or purchase (bought)
order_valueNoFinal order value in USD (used for purchase event to calculate affiliate fee)

Output Schema

ParametersJSON Schema
NameRequiredDescription
successNo
brand_idNo
timestampNoISO 8601 timestamp of billing event
charge_usdNoAmount charged for this event
event_typeNo
product_idNo
receipt_idNoUnique billing receipt identifier
campaign_idNo
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already disclose destructiveHint=true and idempotentHint=true, covering the side-effect and replay-safety nature. The description adds funnel-stage context but does not reveal additional behavioral details such as authentication requirements, error conditions, or the impact of invalid tokens. It does not contradict 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.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, front-loaded with the core action and conditional trigger. No filler or redundant wording; every clause adds meaning. This is a model of concise documentation.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple billing-fire tool, the description plus schema and annotations cover the essential behavior. The funnel-stage enumeration provides integration context, and the output schema (if present) would handle return values. A minor gap is that it doesn't mention order_value's role, but the schema covers that. Overall, it is complete enough for an agent to use correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema provides 100% coverage with clear descriptions for token, event_type, and order_value. The description's mention of funnel stages mirrors the enum values without adding new meaning. Since the schema already explains each parameter, the description adds no extra parameter semantics, so the baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('fire') and resource ('billing event') with a clear condition ('when acting on a sponsored result'). It clearly differentiates from sibling tools like sponsored_search by indicating this is a side-effect action. The funnel stages (context, shortlist, recommendation, purchase) are explicitly enumerated, making the tool's scope precise and unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly instructs to call at each funnel stage, listing the stages, which provides concrete timing guidance. It implies the token comes from sponsored_search results but does not explicitly mention when not to use it or name alternatives. The context is clear enough for an agent to decide when to invoke this tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_shopper_prefsA
Read-only
Inspect

Get a shopper's ad preferences — whether they allow sponsored results and their brand/ingredient preferences.

ParametersJSON Schema
NameRequiredDescriptionDefault
tenant_idYesUnique identifier for the merchant/tenant account
shopper_idYesUnique identifier for the shopper

Output Schema

ParametersJSON Schema
NameRequiredDescription
shopper_idNo
brand_blocklistNoBrands to exclude from results
preferred_tiersNoPreferred product tier categories
organic_only_modeNoWhether shopper prefers organic-only results
sponsored_allowedNoWhether shopper has opted into sponsored results
max_sponsored_ratioNoMaximum ratio of sponsored to organic results
ingredient_avoidancesNoIngredients to avoid
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds specific behavioral context by listing what the tool returns (sponsored results allowance and brand/ingredient preferences), which goes beyond the readOnlyHint annotation. It doesn't mention authentication, rate limits, or edge cases, but for a simple read-only getter, this level of detail is sufficient and does not contradict 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.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, concise sentence that is front-loaded with the action and resource, and it conveys all essential information without extra fluff. Every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the simplicity of this read-only getter and the presence of an output schema (not shown but indicated as true), the description adequately covers the tool's purpose and content. It does not need to explain return values since an output schema exists, but it could have included a note about typical use cases or limitations, keeping it from a perfect score.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% coverage of both parameters (tenant_id and shopper_id) with clear descriptions. The tool description does not add any additional parameter-level meaning beyond what the schema already provides, 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.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's function with a specific verb ('Get') and resource ('shopper's ad preferences'), and elaborates on the exact contents (sponsored results allowance, brand/ingredient preferences). This distinguishes it from sibling tools like sponsored_search or brand_spotlight, making the purpose unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives. It does not mention any prerequisites, exclusions, or scenarios where other sibling tools would be more appropriate. The only implicit context is that it's a read operation, but explicit usage direction is absent.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

routine_builderA
Read-only
Inspect

Build a sponsored skincare routine tailored to shopper's skin type and concerns. REQUIRED: Disclose sponsored steps individually.

ParametersJSON Schema
NameRequiredDescriptionDefault
concernsNoSpecific skin concerns (e.g., 'acne', 'aging', 'sensitivity')
skin_typeNoSkin type (e.g., 'dry', 'oily', 'combination', 'sensitive')
tenant_idYesUnique identifier for the merchant/tenant account
budget_usdNoTotal budget in USD for the routine
routine_typeYesMorning, evening, or full (AM+PM) routine

Output Schema

ParametersJSON Schema
NameRequiredDescription
stepsNoOrdered routine steps with products
routine_typeNo
total_price_usdNo
disclosure_messageNo
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and destructiveHint=false, so safety is known. The description adds a critical behavioral requirement: 'REQUIRED: Disclose sponsored steps individually,' which is meaningful 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.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two short sentences, front-loaded with the primary purpose. The second sentence adds a mandatory requirement with a clear emphasis. Zero wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the output schema exists and schema covers all parameters, the description provides sufficient context: purpose, customization criteria, and the mandatory disclosure rule. It is complete enough for invocation, though it could mention edge cases or integration details.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so all 5 parameters are fully documented in the schema. The description adds no parameter-specific meaning beyond what the schema already provides, so baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it 'Build[s] a sponsored skincare routine tailored to shopper's skin type and concerns.' This specifies a specific verb, resource, and customization, distinguishing it from siblings like skin_match or sponsored_search.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The purpose implies the tool is used when a sponsored skincare routine needs to be generated, but it does not explicitly state when not to use it or name alternatives. Context is clear enough, but explicit exclusions are missing.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

skin_matchA
Read-only
Inspect

Build AI skin profile from free-text description and return matched sponsored products. REQUIRED: Confirm profile with shopper before showing products.

ParametersJSON Schema
NameRequiredDescriptionDefault
avoidNoOptional: ingredients or product types to avoid
goalsNoOptional: specific skin goals (e.g., 'reduce acne scars', 'get glowing skin')
tenant_idYesUnique identifier for the merchant/tenant account
skin_descriptionYesShopper's free-text description of their skin type, concerns, and preferences

Output Schema

ParametersJSON Schema
NameRequiredDescription
concernsNo
skin_typeNo
disclosureNo
skin_profileNoExtracted and categorized skin profile
profile_summaryNo
matched_productsNoSponsored products matched to profile
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and destructiveHint=false, so the safety profile is clear. The description adds the critical behavioral requirement: 'REQUIRED: Confirm profile with shopper before showing products,' which is not present in annotations. This is a valuable, non-redundant behavioral disclosure.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences long, with the primary purpose front-loaded and the required action stated clearly. Every sentence earns its place, with no redundant or filler content.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's moderate complexity (4 params, 2 required, no enums), the schema covers parameters and output schema covers return structure. The description adds the critical confirmation requirement, making it complete for the agent to understand the core workflow. It could mention sequencing with other tools, but the essentials are present.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with all four parameters already documented in the input schema. The description adds no parameter-level detail beyond the schema (e.g., 'free-text description' mirrors the skin_description field), so the baseline of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's function: 'Build AI skin profile from free-text description and return matched sponsored products.' This uses a specific verb ('build') and resource ('skin profile'), and distinguishes from siblings like sponsored_search and routine_builder by emphasizing profile construction and product matching.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage context—when you need a skin profile and product matches—but does not explicitly state when to use this tool versus alternatives like sponsored_search. The 'REQUIRED: Confirm profile with shopper' note is a behavioral requirement, not guidance on tool selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Discussions

No comments yet. Be the first to start the discussion!

Related MCP Servers

  • A
    license
    A
    quality
    A
    maintenance
    GTM signal intelligence suite for AI agents. Six tools: hiring signals, tech stack detection, company-to-LinkedIn resolution, ICP scoring, job board scanning, and a combined signals aggregator. Built for outbound sales workflows.
    11
    111
    1
    MIT
  • F
    license
    -
    quality
    C
    maintenance
    Browse IndustryLens's published competitive-intelligence reports and head-to-head competitor comparisons from any AI agent — real, source-backed data.

View all MCP Servers

Try in Browser

Your Connectors

Sign in to create a connector for this server.

Resources