# Mcmaster — Wrapped API

> **You are on:** `https://api.beta.paywithlocus.com/api` | [llms.txt](https://beta.paywithlocus.com/llms.txt) | [docs](https://docs.paywithlocus.com)
>
> Locus runs on multiple environments -- make sure every URL you call matches your expected environment.
> | Environment | Landing | API | Docs |
> |---|---|---|---|
> | Production | paywithlocus.com | api.paywithlocus.com | docs.paywithlocus.com |
> | Beta | beta.paywithlocus.com | api.beta.paywithlocus.com | docs.paywithlocus.com |
> | Stage | stage.paywithlocus.com | api.stage.paywithlocus.com | docs.paywithlocus.com |
>
> If the API URL above doesn't match your expected environment, re-fetch this file from the correct domain.

> Search McMaster-Carr's industrial supply catalog to discover products by category, view detailed listings with part numbers and prices, and apply filters to find exactly what you need. Look up specific part numbers to get complete product information and pricing in seconds.

**Category:** E-commerce | **Website:** [www.mcmaster.com/](https://www.mcmaster.com/) | **Docs:** [parse.bot/marketplace/01062b86-4335-4593-bd6a-23bb41400b48/mcmaster-com-api](https://parse.bot/marketplace/01062b86-4335-4593-bd6a-23bb41400b48/mcmaster-com-api)

Pay-per-use API proxy for Locus Pro. Each call burns credits from your workspace balance.

## Access

**Base URL:** `https://api.beta.paywithlocus.com/api/wrapped/credits/mcmaster/`
**Auth:** `Authorization: Bearer <LOCUS_CREDITS_SECRET_KEY>` (an `lcr_` secret key or a scoped `lcac_` agent credential)
**Required header:** `Idempotency-Key: <fresh UUID per call>`. A retry with the same key replays the stored result without a new charge.
**Response:** the provider response after any endpoint-specific normalization. `X-Locus-Credits-Charged` carries the charge and `X-Locus-Credits-Balance` the remaining balance. Insufficient credits return `402` before the provider is called.
**Pricing:** estimated costs below are USD. Locus debits the credit equivalent at your workspace rate.

Full call contract: https://docs.paywithlocus.com/api-reference/introduction

> Using a Pay With Locus wallet key (`claw_` prefix)? Wallet routes are documented separately: https://docs.paywithlocus.com/wrapped-apis/for-agents

## Endpoints

### Get part number

Look up a specific McMaster-Carr part number to check if it exists, get catalog info, and verify its status. Returns catalog page number, current/discontinued status, parent part family, and a direct URL to the part page.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `part_number` | string | Yes | McMaster part number (e.g., '92620A401', '91309A540') |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/mcmaster/get-part-number \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"part_number":"<string>"}'
```

### Get product detail

Get detailed product listings for a category. Use search_result_id and product_outline_entry_id from search_products to get product families. Then use a product_set_id from product_families to get individual products with part numbers, prices, and specs. Without product_set_id, returns the list of product families; with product_set_id, returns individual product rows.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `product_outline_entry_id` | string | No | Product outline entry ID from search_products categories |
| `product_set_id` | string | No | Product set ID from product_families to get individual products with part numbers and prices |
| `query` | string | No | Original search query text for context |
| `search_result_id` | string | Yes | Search result ID from search_products endpoint |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/mcmaster/get-product-detail \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"product_outline_entry_id":"<string>","product_set_id":"<string>","query":"<string>","search_result_id":"<string>"}'
```

### Get product filters

Get available filter/facet options for a product category. Returns attributes like System of Measurement, ID, Width, Material with their possible values and product counts. Requires search_result_id from search_products; optionally accepts product_outline_entry_id and product_set_id to narrow scope.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `product_outline_entry_id` | string | No | Product outline entry ID from search_products categories |
| `product_set_id` | string | No | Product set ID for a specific product family |
| `search_result_id` | string | Yes | Search result ID from search_products endpoint |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/mcmaster/get-product-filters \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"product_outline_entry_id":"<string>","product_set_id":"<string>","search_result_id":"<string>"}'
```

### Search products

Search McMaster-Carr catalog and return product categories organized as tiles. Returns a search_result_id needed for subsequent get_product_detail and get_product_filters calls, plus category tiles with navigation IDs (product_outline_entry_id) for drilling into specific product families.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `query` | string | Yes | Search query (e.g., 'bolts', 'ball bearings', 'o-rings') |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/mcmaster/search-products \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"query":"<string>"}'
```

### Search suggest

Get search autocomplete suggestions for a query. Returns ranked suggestions with images, useful for building search UIs or discovering product terms. Each suggestion includes a popularity rank and whether it matches a part number.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `count` | integer | No | Max number of suggestions to return |
| `query` | string | Yes | Search query text (partial or full) |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/mcmaster/search-suggest \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"count":"<integer>","query":"<string>"}'
```

## Next steps

- [All wrapped API providers](https://beta.paywithlocus.com/wapi/index.md): pick another provider.
- [Find and call tools](https://beta.paywithlocus.com/agent/tools.md): price ceilings, async results, and errors.
- [Credits and billing](https://beta.paywithlocus.com/agent/billing.md): what a call costs and how to add credits.
- [Agent docs index](https://beta.paywithlocus.com/agent/index.md): every Locus agent page.