Skip to main content
Glama
README.md
# @striderlabs/mcp-sephora

MCP connector for **Sephora** beauty retail. Search products, manage your basket, complete purchases, and check Beauty Insider rewards — all from an AI assistant.

## Tools

| Tool | Description |
|------|-------------|
| `sephora_search_products` | Search for beauty products by keyword, category, and sort order |
| `sephora_get_product` | Get full product details, variants (shades/sizes), and reviews |
| `sephora_add_to_basket` | Add a product to the shopping basket |
| `sephora_view_basket` | View basket contents, quantities, and totals |
| `sephora_checkout` | Complete purchase with shipping and payment details |
| `sephora_get_rewards` | View Beauty Insider points, tier, and available rewards |

## Setup

```bash
# Install Playwright browser (one-time)
npx playwright install chromium

# Run the MCP server
npx @striderlabs/mcp-sephora
```

## MCP Configuration

Add to your MCP client configuration:

```json
{
  "mcpServers": {
    "sephora": {
      "command": "npx",
      "args": ["@striderlabs/mcp-sephora"]
    }
  }
}
```

## Usage Examples

### Search for products
```
sephora_search_products({ query: "vitamin C serum", category: "skincare", max_results: 5 })
```

### Get product details
```
sephora_get_product({ product_url: "https://www.sephora.com/product/...", include_reviews: true })
```

### Add to basket
```
sephora_add_to_basket({ product_url: "https://www.sephora.com/product/...", quantity: 1 })
```

### Checkout (dry run)
```
sephora_checkout({ email: "...", first_name: "...", ..., dry_run: true })
```

### View rewards
```
sephora_get_rewards({ email: "you@email.com", password: "yourpassword" })
```

## Technical Details

- **TypeScript** with strict mode
- **Playwright** headless Chromium for browser automation
- **Session management** — single shared browser context with 30-minute timeout
- **MCP SDK** `@modelcontextprotocol/sdk` over stdio transport

## Author

Strider Labs <hello@striderlabs.ai>

TDQS

A4/5.0

Scored across 6 tools

Disambiguation5/5

Each tool has a clearly distinct purpose with no overlap: search_products finds items, get_product provides details, add_to_basket adds items, view_basket shows contents, checkout completes purchase, and get_rewards handles loyalty program. The descriptions explicitly guide usage flow, eliminating any ambiguity.

Naming Consistency5/5

All tools follow a consistent 'sephora_verb_noun' pattern with snake_case throughout. The verbs (add_to, checkout, get, search, view) are descriptive and uniformly applied, making the set predictable and easy to navigate.

Tool Count5/5

Six tools are well-scoped for an e-commerce server, covering the core shopping workflow from discovery to purchase and account management. Each tool earns its place without redundancy, and the count is manageable for agents to understand and use effectively.

Completeness5/5

The toolset provides complete coverage for Sephora's shopping domain: product discovery (search_products), detail retrieval (get_product), basket management (add_to_basket, view_basket), checkout (checkout), and account features (get_rewards). No obvious gaps exist, supporting end-to-end agent workflows.

Maintenance

ActivityInactive
ResponsivenessNo issues