Search and price made-to-order rings, jewelry, and lab-grown diamonds from the 25karats catalog.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Browse one collection/category page deterministically — the same product set, ordering, and filters a shopper sees on the site. Pass the collection permalink from list_collections (e.g. 'wedding-rings/womens/eternity'). Filter by style tags, metals, or sort; paginate 24 per page. Prefer search_products for free-text intent and this tool for "show me everything in X".
Collection permalink, with or without leading slash
Child-category slugs on a listing-nav collection; matches the site's cats filter
Default: best sellers
Style tag slugs, e.g. ['celtic','braided']
Max 24
Offered metal codes, e.g. ['14K','PLAT']; price and URL use the first offered selection
Price-range slug or id, e.g. '501-1000'; accepts one value or an array
Browse one collection/category page deterministically — the same product set, ordering, and filters a shopper sees on the site. Pass the collection permalink from list_collections (e.g. 'wedding-rings/womens/eternity'). Filter by style tags, metals, or sort; paginate 24 per page. Prefer search_products for free-text intent and this tool for "show me everything in X".
| Argument | Type | Description |
|---|---|---|
| cats | array | Child-category slugs on a listing-nav collection; matches the site's cats filter |
| page | integer | |
| sort | string | Default: best sellers |
| tags | array | Style tag slugs, e.g. ['celtic','braided'] |
| limit | integer | Max 24 |
| metals | string | array | Offered metal codes, e.g. ['14K','PLAT']; price and URL use the first offered selection |
| price_tag | string | integer | array | Price-range slug or id, e.g. '501-1000'; accepts one value or an array |
| collection* | string | Collection permalink, with or without leading slash |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"collection"
],
"properties": {
"cats": {
"type": "array",
"items": {
"type": "string"
},
"description": "Child-category slugs on a listing-nav collection; matches the site's cats filter"
},
"page": {
"type": "integer"
},
"sort": {
"enum": [
"best",
"price_asc",
"price_desc"
],
"type": "string",
"description": "Default: best sellers"
},
"tags": {
"type": "array",
"items": {
"type": "string"
},
"description": "Style tag slugs, e.g. ['celtic','braided']"
},
"limit": {
"type": "integer",
"description": "Max 24"
},
"metals": {
"type": [
"string",
"array"
],
"items": {
"type": "string"
},
"description": "Offered metal codes, e.g. ['14K','PLAT']; price and URL use the first offered selection"
},
"price_tag": {
"type": [
"string",
"integer",
"array"
],
"items": {
"type": [
"string",
"integer"
]
},
"description": "Price-range slug or id, e.g. '501-1000'; accepts one value or an array"
},
"collection": {
"type": "string",
"description": "Collection permalink, with or without leading slash"
}
}
}Full detail for one product: metal variants with live starting prices, the complete customization matrix (ring sizes, widths, thickness, color, finish, stone type, engraving rules) with the ids to echo into price_product, stone specifications, physical dimensions, size-group siblings, matching pieces, and the default image. Identify the product by exactly one of slug, style_code, or url (any 25karats product URL works).
| Argument | Type | Description |
|---|---|---|
| url | string | Any 25karats.com product URL |
| slug | string | Product page slug, e.g. 'floral-antique-handmade-wedding-ring' |
| metal | string | Optionally preselect a metal variant |
| style_code | string | Style/SKU code shown on the product page, e.g. 'HC100232' |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [],
"properties": {
"url": {
"type": "string",
"description": "Any 25karats.com product URL"
},
"slug": {
"type": "string",
"description": "Product page slug, e.g. 'floral-antique-handmade-wedding-ring'"
},
"metal": {
"enum": [
"10K",
"14K",
"18K",
"PLAT",
"SILVER",
"STEEL",
"TITANIUM",
"COBALT",
"TUNGSTEN",
"CERAMIC"
],
"type": "string",
"description": "Optionally preselect a metal variant"
},
"style_code": {
"type": "string",
"description": "Style/SKU code shown on the product page, e.g. 'HC100232'"
}
}
}Every gallery image for a product with high-resolution URLs. Each image lists only renditions that actually exist, largest first — modern photography is 2048x2048 WebP at the 'original' size — plus the metal tone, band width, and finish the photo shows, and descriptive alt text. Identify the product by exactly one of slug, style_code, or url.
| Argument | Type | Description |
|---|---|---|
| url | string | |
| slug | string | |
| metal_tone | string | Optionally return only photos showing this metal tone |
| style_code | string |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [],
"properties": {
"url": {
"type": "string"
},
"slug": {
"type": "string"
},
"metal_tone": {
"enum": [
"White",
"Yellow",
"Rose",
"Two Tone"
],
"type": "string",
"description": "Optionally return only photos showing this metal tone"
},
"style_code": {
"type": "string"
}
}
}25karats brand facts and policies for answering shoppers: who we are, shipping and production times, returns, warranty, resizing, engraving, financing, and contact details. Call this before answering policy questions rather than guessing.
No arguments.
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [],
"properties": {}
}The navigable catalog taxonomy: every public collection with its permalink (for browse_collection), title, and product count, as a tree. Call once to orient; results change rarely.
No arguments.
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [],
"properties": {}
}Exact live price in USD for a fully configured item — the same number the customer pays on 25karats.com (computed from current metal market pricing, not a cached feed price). Identify the item by variant_id (from get_product) or style_code, optionally with metal. For wedding bands pass ring_size/width/thickness/color/finish (option_value ids or display values from get_product); for his & hers sets pass his/her objects with those keys; for engagement rings pass stone_type and ring_size. Unset axes use the product's defaults. Returns the price, the resolved configuration, and a deep_link_url that opens the product page pre-configured for checkout. Invalid values return the list of valid ones — correct and retry. Any option group can also be set through the options object keyed by the option_id values returned by get_product (the only way to configure generic jewelry). His & hers options and engraving belong inside the respective his/her object. Inputs that do not apply to the item (stone_type on a band, top-level ring_size on a set) are rejected with the inputs that do; settings sold without a center stone say so in configuration and notes.
| Argument | Type | Description |
|---|---|---|
| her | object | His & hers sets: configuration and optional engraving for the her band |
| his | object | His & hers sets: configuration and optional engraving for the his band |
| url | string | |
| slug | string | |
| color | string | |
Search 25karats' in-stock IGI/GIA-certified lab-grown loose diamonds (center stones for engagement rings) by shape, carat, color, clarity, cut, and price. Prices are the live customer price in USD. Each stone includes certificate details, measurements, and image/video links when available. A chosen stone is paired with a ring setting on-site.
| Argument | Type | Description |
|---|---|---|
| cut | string | Cut grade as a label or certificate code: 'Ideal' (ID) or 'Excellent' (EX) |
| lab | string | Grading lab, e.g. IGI or GIA |
| page | integer | |
| sort | string | |
| color | string | array | One color or an array; D through K |
| limit | integer | Max 50 |
| shape | string | array | One shape or an array, e.g. 'Round' or ['Oval','Emerald'] |
| polish | string | Polish grade as a label or certificate code: 'Excellent' (EX), 'Very Good' (VG), 'Good' (GD) |
| clarity | string | array |
Search the 25karats made-to-order catalog (wedding bands, engagement rings, his & hers sets, fine jewelry) by keywords or a style code. Use this first when a shopper describes what they want ("braided mens wedding band", "vintage engagement ring"). Returns product cards with live starting prices in USD, image URLs, and product URLs. Follow up with get_product for options and price_product for an exact configured price. total_count is exact unless capped is true; capped counts are lower bounds imposed by the search index.
| Argument | Type | Description |
|---|---|---|
| page | integer | Requested page; values below 1 are clamped and reported |
| tags | array | Every supplied style tag must match, by slug, name, or id |
| limit | integer | Requested results per page (default 10); values outside 1..24 are clamped and reported |
| metal | string | Optional metal filter; each returned starting price and URL use this metal's variant |
| query* | string | Keywords or a style code (e.g. 'HC100232') |
| category | string | Optional shopper-facing catalog category. engagement_rings / wedding_bands / his_hers_sets / jewelry select a product line; mens_rings and womens_diamond_rings select the site's men's (/wedding-rings/mens) and women's (/wedding-rings/womens) ring collections, which hold plain bands and diamond rings alike |
| metal |
| string |
| width | string | Bands: option_value id or display value, e.g. '6' (mm) |
| finish | string |
| options | object | Map option_id (from get_product) to an option_value id or display label; an alternative to the named axes for any customizable item |
| ring_size | string |
| thickness | string |
| stone_type | string | Engagement rings with a diamond-type choice: 'natural' or 'lab' (or the id from get_product). Rejected on settings sold without a center stone (get_product shows stone_types: [] and setting_only: true) |
| style_code | string |
| variant_id | integer | Variant id from get_product (preferred) |
| engraving_font | string | Wedding bands only; for H&H put this inside his/her |
| engraving_text | string | Wedding bands only; for H&H put this inside his/her |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [],
"properties": {
"her": {
"type": "object",
"properties": {
"color": {
"type": "string"
},
"width": {
"type": "string"
},
"finish": {
"type": "string"
},
"options": {
"type": "object",
"description": "Map option_id (from get_product) to an option_value id or display label; an alternative to the named axes for any customizable item",
"additionalProperties": {
"type": [
"string",
"integer",
"number"
]
}
},
"ring_size": {
"type": "string"
},
"thickness": {
"type": "string"
},
"engraving_font": {
"type": "string"
},
"engraving_text": {
"type": "string"
}
},
"description": "His & hers sets: configuration and optional engraving for the her band"
},
"his": {
"type": "object",
"properties": {
"color": {
"type": "string"
},
"width": {
"type": "string"
},
"finish": {
"type": "string"
},
"options": {
"type": "object",
"description": "Map option_id (from get_product) to an option_value id or display label; an alternative to the named axes for any customizable item",
"additionalProperties": {
"type": [
"string",
"integer",
"number"
]
}
},
"ring_size": {
"type": "string"
},
"thickness": {
"type": "string"
},
"engraving_font": {
"type": "string"
},
"engraving_text": {
"type": "string"
}
},
"description": "His & hers sets: configuration and optional engraving for the his band"
},
"url": {
"type": "string"
},
"slug": {
"type": "string"
},
"color": {
"type": "string"
},
"metal": {
"enum": [
"10K",
"14K",
"18K",
"PLAT",
"SILVER",
"STEEL",
"TITANIUM",
"COBALT",
"TUNGSTEN",
"CERAMIC"
],
"type": "string"
},
"width": {
"type": "string",
"description": "Bands: option_value id or display value, e.g. '6' (mm)"
},
"finish": {
"type": "string"
},
"options": {
"type": "object",
"description": "Map option_id (from get_product) to an option_value id or display label; an alternative to the named axes for any customizable item",
"additionalProperties": {
"type": [
"string",
"integer",
"number"
]
}
},
"ring_size": {
"type": "string"
},
"thickness": {
"type": "string"
},
"stone_type": {
"type": "string",
"description": "Engagement rings with a diamond-type choice: 'natural' or 'lab' (or the id from get_product). Rejected on settings sold without a center stone (get_product shows stone_types: [] and setting_only: true)"
},
"style_code": {
"type": "string"
},
"variant_id": {
"type": "integer",
"description": "Variant id from get_product (preferred)"
},
"engraving_font": {
"type": "string",
"description": "Wedding bands only; for H&H put this inside his/her"
},
"engraving_text": {
"type": "string",
"description": "Wedding bands only; for H&H put this inside his/her"
}
}
}| One clarity or an array, e.g. 'VS1' or ['VS1','VVS2'] |
| stock_no | string | Exact stone lookup by stock number |
| symmetry | string | Symmetry grade as a label or certificate code: 'Excellent' (EX) or 'Very Good' (VG) |
| carat_max | number |
| carat_min | number |
| price_max | number |
| price_min | number |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [],
"properties": {
"cut": {
"type": "string",
"description": "Cut grade as a label or certificate code: 'Ideal' (ID) or 'Excellent' (EX)"
},
"lab": {
"type": "string",
"description": "Grading lab, e.g. IGI or GIA"
},
"page": {
"type": "integer"
},
"sort": {
"enum": [
"price_asc",
"price_desc",
"carat_asc",
"carat_desc",
"recent"
],
"type": "string"
},
"color": {
"type": [
"string",
"array"
],
"items": {
"type": "string"
},
"description": "One color or an array; D through K"
},
"limit": {
"type": "integer",
"description": "Max 50"
},
"shape": {
"type": [
"string",
"array"
],
"items": {
"type": "string"
},
"description": "One shape or an array, e.g. 'Round' or ['Oval','Emerald']"
},
"polish": {
"type": "string",
"description": "Polish grade as a label or certificate code: 'Excellent' (EX), 'Very Good' (VG), 'Good' (GD)"
},
"clarity": {
"type": [
"string",
"array"
],
"items": {
"type": "string"
},
"description": "One clarity or an array, e.g. 'VS1' or ['VS1','VVS2']"
},
"stock_no": {
"type": "string",
"description": "Exact stone lookup by stock number"
},
"symmetry": {
"type": "string",
"description": "Symmetry grade as a label or certificate code: 'Excellent' (EX) or 'Very Good' (VG)"
},
"carat_max": {
"type": "number"
},
"carat_min": {
"type": "number"
},
"price_max": {
"type": "number"
},
"price_min": {
"type": "number"
}
}
}| price_max | number |
| price_min | number |
| product_line | string | Optional product-line filter; category is preferred |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"query"
],
"properties": {
"page": {
"type": "integer",
"description": "Requested page; values below 1 are clamped and reported"
},
"tags": {
"type": "array",
"items": {
"type": "string"
},
"description": "Every supplied style tag must match, by slug, name, or id"
},
"limit": {
"type": "integer",
"description": "Requested results per page (default 10); values outside 1..24 are clamped and reported"
},
"metal": {
"enum": [
"10K",
"14K",
"18K",
"PLAT",
"SILVER",
"STEEL",
"TITANIUM",
"COBALT",
"TUNGSTEN",
"CERAMIC"
],
"type": "string",
"description": "Optional metal filter; each returned starting price and URL use this metal's variant"
},
"query": {
"type": "string",
"description": "Keywords or a style code (e.g. 'HC100232')"
},
"category": {
"enum": [
"engagement_rings",
"wedding_bands",
"mens_rings",
"womens_diamond_rings",
"his_hers_sets",
"jewelry"
],
"type": "string",
"description": "Optional shopper-facing catalog category. engagement_rings / wedding_bands / his_hers_sets / jewelry select a product line; mens_rings and womens_diamond_rings select the site's men's (/wedding-rings/mens) and women's (/wedding-rings/womens) ring collections, which hold plain bands and diamond rings alike"
},
"price_max": {
"type": "number"
},
"price_min": {
"type": "number"
},
"product_line": {
"enum": [
"engagement_or_diamond_ring",
"wedding_band",
"his_and_hers_set",
"jewelry"
],
"type": "string",
"description": "Optional product-line filter; category is preferred"
}
}
}