Skip to main content
Glama

ulta_product_reviews

Read-only

One page of an Ulta Beauty product's normalized customer reviews, plus the retailer's own site-wide rating summary. product_id is taken from a search result's product_id field or a product page's URL. A product with zero reviews, or a well-formed but unrecognized product_id, returns a normal, empty result rather than an error.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "product_id": "<product_id>"
    },
    "name": "ulta_product_reviews"
  }
}

Input Schema

NameRequiredDescriptionDefault
pageNoResult page, 1-based, defaults to 1
product_idYesUlta product id, from a search result's product_id field

Output Schema

NameRequiredDescriptionDefault
dataYesThe tool result payload (shape varies per tool; see each tool's docs resource).

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • addedInput schema / properties / page / description
      Added value: +"Result page, 1-based, defaults to 1"
    • addedInput schema / properties / product_id / description
      Added value: +"Ulta product id, from a search result's product_id field"
  2. First observed

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already declare readOnlyHint and openWorldHint, so safety is covered. The description adds genuinely useful behavior: results are paginated one page at a time, and a product with zero reviews or an unrecognized product_id yields a normal empty result rather than an error — a non-obvious contract an agent needs.

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?

Three tight sentences, front-loaded with what the tool returns, then parameter provenance, then the empty-result edge case. No filler and no repetition of schema field names.

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

Completeness5/5

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

An output schema exists, so return values need no explanation. The description covers scope, pagination, argument provenance, and the empty-result contract — everything an agent needs to call this correctly with no surprises.

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

Parameters4/5

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

Schema description coverage is 100%, so the baseline is 3. The description earns extra credit by clarifying accepted sources for product_id (search result field or product page URL) and implying page-based iteration, adding meaning beyond the schema text.

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?

States a specific verb and resource ('one page of an Ulta Beauty product's normalized customer reviews') and additionally names the site-wide rating summary it returns. An agent knows exactly what data comes back and that it is scoped to a single product.

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?

Gives a concrete route to the required argument ('product_id is taken from a search result's product_id field or a product page's URL'), which is real usage guidance. It stops short of naming when not to use it or pointing at alternatives, but no sibling competes for the same job.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.