Carat Hunter
Server Details
Live prices for one certified diamond across 100+ retailers: search, cert lookup, market prices.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-06-18
- URL
TDQS
Scored across 5 tools
Each tool serves a distinct purpose: get_diamond for a specific ID, lookup_certificate for a certificate number, search_diamonds for criteria-based listing, price_check for market statistics, and market_overview for overall counts. There is no overlap that would confuse an agent.
Naming is mixed: get_diamond, lookup_certificate, and search_diamonds follow a verb_noun pattern, but price_check and market_overview use noun_noun or noun_verb structures. While readable, the inconsistency could cause minor confusion in pattern recognition.
With only 5 tools, the server is well-scoped for diamond price comparison. Each tool is essential and covers a distinct aspect of the domain without redundancy, fitting comfortably within the ideal 3-15 tool range.
The tool set covers searching, specific lookups, certificate validation, market statistics, and overall trends. It lacks a direct retailer-information tool, but given the free sign-up link, this gap is minor and agents can work around it.
Available Tools
5 toolsget_diamondGet a diamondARead-onlyInspect
Details and live price range for one diamond by its Carat Hunter id (from search_diamonds or a carathunter.com URL).
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the read-only nature is covered. The description adds useful behavioral context by indicating that price data is a 'live price range', which implies currency and variability, and that the call returns one diamond. It does not disclose output format or error behavior, so it does not exceed the baseline significantly.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, information-dense sentence. It front-loads the core purpose, then adds the key scoping detail about id provenance. There is no extraneous wording.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter, read-only lookup tool, the description gives sufficient context for an agent to know what to expect: details plus a live price range. With no output schema, it could add more on return structure or failure behavior, but the core invocation context is clear and complete enough.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema only describes id as an integer with a minimum of 1, but the description adds critical meaning: this is a Carat Hunter id and it can be obtained from search_diamonds or a carathunter.com URL. This provenance is valuable and goes beyond the schema, though it does not specify how to extract or format the id from a URL.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action: retrieving details and a live price range for one diamond by a specific Carat Hunter id. It also distinguishes this from search_diamonds by specifying the input source, 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.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use this tool: after obtaining a Carat Hunter id from search_diamonds or a carathunter.com URL. It names a relevant sibling and provides clear context, though it does not explicitly rule out alternatives or state when not to use this tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
lookup_certificateLook up a grading certificateARead-onlyInspect
Find a diamond by its grading report number (GIA, IGI, HRD, GCAL...). Tells you whether retailers list that exact stone, how many, and the price range between them. Useful to check whether a quoted price is fair.
| Name | Required | Description | Default |
|---|---|---|---|
| certificate_number | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true and openWorldHint=false, and the description does not contradict them. It adds useful behavioral detail by explaining what the tool reports: retailer listings, count, and price range, which goes beyond a bare 'look up certificate' statement.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no filler. The action and identifier are front-loaded, followed by output summary and a practical use case. Every sentence contributes.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter, read-only lookup tool with no output schema, the description adequately covers the input, the useful output, and when to use it. It could be slightly stronger with an explicit alternative reference, but nothing critical is missing for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, so the description must clarify the parameter. It does so by defining certificate_number as a grading report number and naming accepted labs (GIA, IGI, HRD, GCAL), adding meaning beyond the schema's bare type and length constraints.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action ('Find a diamond') and a precise resource/identifier ('grading report number'), listing accepted labs (GIA, IGI, HRD, GCAL). It clearly differentiates from siblings by emphasizing exact-stone lookup rather than broad search or market overview.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives a clear use case: checking whether a quoted price is fair for a specific certificate number. It does not explicitly name alternatives or exclusion conditions, but the exact-stone framing implies when this tool is appropriate versus broader search tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
market_overviewDiamond market overviewARead-onlyInspect
How many diamonds and retailers Carat Hunter currently tracks, from its latest weekly market report.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
readOnlyHint already establishes a read-only operation, and the description adds that the data is sourced from the latest weekly market report, implying a periodic snapshot rather than a live query. No destructive side effects, auth, or rate-limit concerns are relevant for a zero-argument read-only tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One sentence, front-loaded with the key value ('how many diamonds and retailers'), and no filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter read-only tool, the description fully conveys what the agent should expect: aggregate counts from a weekly report. No output schema exists, but the expected output shape is simple and sufficiently described.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are no parameters and the schema is fully self-explanatory, so the baseline is 4. The description accurately reflects that the tool provides aggregate counts without needing any inputs.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific outcome: report the number of diamonds and retailers Carat Hunter tracks. It differentiates itself from item-level siblings like get_diamond, search_diamonds, and price_check by offering a market-level summary.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The intended use is implied by the market-overview context, but the description never explicitly says when to choose this over the sibling tools. It provides no exclusions such as 'use search_diamonds for individual stones' or 'use price_check for pricing.'
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
price_checkMarket price for a diamond specARead-onlyInspect
Typical market prices for a spec (carat size, colour, clarity, shape, origin) across all retailers Carat Hunter tracks: median, middle-half range, and how much the same stone varies between retailers. Carat sizes: 0.3, 0.5, 0.75, 1, 1.5, 2, 3, 5.
| Name | Required | Description | Default |
|---|---|---|---|
| carat | Yes | ||
| shape | Yes | ||
| colour | Yes | ||
| origin | Yes | ||
| clarity | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already covers safety, and the description adds useful behavioral context about the aggregation: median, middle-half range, and retailer-to-retailer variation. It does not mention data recency, currency, or exact return structure, but for a read-only aggregation tool the description provides solid behavioral insight beyond the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences and front-loads the core purpose and output metrics. The carat-size list is slightly redundant with the schema enum but is a convenient summary. Overall it is concise and well-structured, with minimal waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description provides a good high-level understanding of inputs and outputs, but with no output schema it leaves out return format details such as currency, units, and how the variation metric is represented. For an agent to fully interpret the result, more explicit output structure would be helpful.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has no parameter descriptions (0% coverage), but all five parameters are self-explanatory enums. The description identifies the spec dimensions and enumerates valid carat sizes, adding a little meaning beyond the schema, but it does not explain interpretation details like colour scale or origin values. This is adequate but not fully compensatory.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states that the tool returns typical market prices for a diamond spec across all tracked retailers, and lists the output metrics (median, middle-half range, variation). It is clear enough to distinguish from specific-diamond lookups, but it does not explicitly differentiate itself from the sibling 'market_overview' or name alternative tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is for price checks on a specific spec rather than for individual diamond lookups or broad overviews, but it does not explicitly state when to use this tool versus siblings like 'get_diamond' or 'market_overview'. No exclusions or alternative conditions are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_diamondsSearch diamondsBRead-onlyInspect
Search certified diamonds listed by retailers worldwide, with live cross-retailer prices. Returns up to 10 stones with specs, the lowest and highest confirmed price for that exact stone, how many retailers list it and a Carat Hunter grade. Prices in US dollars. Retailer names are shown on carathunter.com after a free sign-up; always give the user the link.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | ||
| sort | No | best | |
| shape | No | ||
| colour | No | e.g. ["E","F","G"] | |
| origin | No | ||
| clarity | No | ||
| max_carat | No | ||
| min_carat | No | ||
| max_price_usd | No | ||
| min_price_usd | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=false, so the description does not need to repeat that. It adds useful behavioral context: prices in USD, retailer names hidden behind sign-up, and the instruction to always provide the link. However, it does not mention pagination limits or other side effects beyond the schema's page maximum.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise, with four short sentences that front-load the core purpose and then add key output details and a usage instruction. No filler or redundancy. It could be slightly more structured but is appropriately sized for the tool's complexity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 10 parameters, no output schema, and low schema coverage, the description should explain how to use filters, sorting, pagination, and what the returned data looks like. It only lists output fields and the link instruction, missing critical guidance on parameter usage and result interpretation. The description is insufficient for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 10% (only the colour parameter has a description). The tool description provides no explanation of any input parameters—no guidance on shape, clarity, carat ranges, price ranges, sort options, or pagination. Since the schema is mostly undocumented, the description completely fails to compensate, leaving agents to guess parameter semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool searches certified diamonds across retailers with live cross-retailer prices, and lists specific output fields (specs, price range, retailer count, Carat Hunter grade). This distinguishes it from siblings like get_diamond or market_overview, which serve different purposes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies a use case (comparing prices across retailers) and mentions 'always give the user the link' as an instruction, but it does not explicitly state when to use this tool versus alternatives like get_diamond or price_check. No exclusions or alternative routing are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
5 tool updates
- First observed
get_diamond - First observed
lookup_certificate - First observed
market_overview - First observed
price_check - First observed
search_diamonds
Related MCP Connectors
Shopping search across 100M+ products, with every retailer's offer and live price in one place.
Live lab grown diamond inventory, engagement ring settings, fine jewelry, and diamond buying guides.
Live fine-jewelry catalog: search, product lookup, compatible chains, size/length variants, store po
Cross-merchant product search with real price history, comparisons, and demand signals.
Related MCP Servers
- AlicenseAqualityAmaintenanceProvides diamond education tools for AI assistants, including grading report verification, face-up size estimation, and market price index, all backed by sourced and dated facts.81MIT

costkits-mcpofficial
AlicenseAqualityBmaintenanceProvides live US healthcare cost data including procedure cost estimates, provider pricing, insurance coverage rules, and medical bill analysis using real hospital transparency and CMS data.1249 npmMIT- AlicenseAqualityAmaintenanceLive LLM API pricing: current token prices, model comparisons, cheapest-model lookups, and The LLM Price Index for 150+ models across 20+ providers, re-verified daily. No API key required.51MIT
- FlicenseNot gradedqualityBmaintenanceEnables AI agents to search and compare prices across Japanese used camera, watch, luxury brand, and instrument marketplaces from multiple stores, returning price, brand, condition, and source store information.-
Glama MCP Gateway
Add one secure layer between your agents and this server.