Arctic White
Server Details
Lab consumables from Arctic White: search, specs, price and stock, shipping, checkout and quotes.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- ChatGPT
- –
- Claude
- –
TDQS
Scored across 6 tools
Most tools are clearly distinct: search_products is for discovery, get_product for full detail on one item, start_checkout vs request_quote split cleanly by published-price vs quote-needed items. The only real overlap is price/stock data appearing in search_products, get_product, and check_price_and_stock — a single-item price check could plausibly hit any of these, though the descriptions (basket-level subtotal, online-purchasability) mostly steer correctly.
All six tools use a consistent snake_case verb_noun pattern (check_price_and_stock, get_product, get_shipping_estimate, request_quote, search_products, start_checkout). Verb choice matches the action type (get/search/check/request/start), giving a predictable, readable surface.
Six tools map one-to-one onto the buyer journey steps: find, inspect, price, ship, quote, checkout. Nothing feels redundant or padded, and nothing obviously missing from the count itself.
The surface covers the full purchase path end to end, including the quote fallback for non-published prices and over-limit orders, so an agent can complete the core workflow. Minor gaps remain: no tool to check status of an existing quote or order after checkout/request, and no order history or account lookup.
Available Tools
6 toolscheck_price_and_stockCheck price and stockARead-onlyIdempotentInspect
Price and stock for a list of items, the subtotal, and whether the order can be bought online now (published prices, within the payment limits) or needs a quote.
| Name | Required | Description | Default |
|---|---|---|---|
| items | Yes | Products and quantities. Quantity is in the product's selling unit (usually cases). |
Output Schema
| Name | Required | Description |
|---|---|---|
| lines | Yes | One entry per requested item |
| reason | Yes | Why the items can't be bought online, null when they can |
| can_checkout | Yes | True when start_checkout can sell these items now; otherwise use request_quote |
| subtotal_usd | Yes | Goods subtotal in USD before shipping and tax, null when any item is priced on request |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive and closed-world, so the safety profile is covered. The description adds genuine business context beyond that: the buyability verdict depends on published prices and payment limits, which an agent could not infer from the annotations or schema. It does not cover failure modes for unknown SKUs or out-of-stock lines.
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 compact sentence with the key outputs front-loaded and no filler. It is a sentence fragment rather than a full clause, which slightly hurts readability but wastes nothing.
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?
An output schema exists, so return values need not be described, and the description supplies the decision rule that makes the response interpretable. Missing only edge-case behavior (invalid SKU, zero stock) and an explicit pointer to request_quote for the quote path.
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 100% and there is a single parameter, so the schema already explains items, SKUs, quantities and the selling-unit convention. The description only restates 'a list of items' without adding format, limits, or batching guidance, so baseline 3 applies.
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 names the concrete outputs — per-item price and stock, the subtotal, and a buy-online-now vs. needs-a-quote determination — which is far more specific than the title. It implicitly separates itself from get_product (single item) and request_quote (quote path), but never names those siblings, so the differentiation is left to inference.
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?
Usage is only implied: the phrase 'needs a quote' hints that request_quote is the follow-up path, and the pricing/payment-limit logic suggests this is a pre-checkout check. There is no explicit statement of when to call this versus get_product or get_shipping_estimate, and no stated prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_productGet product detailsBRead-onlyIdempotentInspect
Full details for one product: description, specifications and dimensions, options with SKU, price and stock, image and page link.
| Name | Required | Description | Default |
|---|---|---|---|
| sku | Yes | SKU (e.g. AWLS-219006) or an arcticsci.com product link |
Output Schema
| Name | Required | Description |
|---|---|---|
| url | Yes | Product page on arcticsci.com |
| brand | Yes | Brand, Arctic White |
| title | Yes | Product name |
| variants | Yes | Orderable options |
| image_url | Yes | Main product image, null when there is none |
| description | Yes | Plain-text product description |
| discontinued | Yes | True when the product is discontinued |
| specifications | Yes | Specifications and dimensions, in display order |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, openWorldHint=false and destructiveHint=false, so the safety profile is covered. The description adds the payload contents but says nothing about behavior an agent would care about, e.g. what happens when the SKU is unknown, whether the product link form redirects or normalizes, or whether stock data is live.
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?
A single dense sentence with the resource front-loaded and zero filler; every clause names a returned field. It is telegraphic rather than a complete sentence, but nothing is wasted.
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?
This is a simple one-parameter read tool with full annotation coverage and an output schema, so the return-value inventory is somewhat redundant with the output schema and the words could have been spent on sibling differentiation and not-found behavior instead. Adequate, but not tuned to what the agent actually lacks.
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?
Only one parameter and schema description coverage is 100%, with the schema itself explaining the SKU format and the alternative product-link form. The description adds no constraint or format detail beyond that, so the baseline 3 applies.
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 verb ('full details') and resource ('one product') plus an itemized list of what comes back, so an agent can distinguish it from a list/search tool. It does not name or distinguish itself from the actual siblings (search_products, check_price_and_stock), so it stops short of a 5.
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 phrase 'for one product' implicitly contrasts with search_products, and the schema's required SKU implies lookup-by-identifier, but the description never says when to use this versus check_price_and_stock (which also returns price and stock) or search_products. Usage is inferable rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_shipping_estimateGet shipping estimateARead-onlyIdempotentInspect
Live FedEx shipping options and prices for the items to a destination, the same rates checkout charges. Needs only the country, postal code and, in the US and Canada, the state.
| Name | Required | Description | Default |
|---|---|---|---|
| items | Yes | Products and quantities. Quantity is in the product's selling unit (usually cases). | |
| address | Yes | Where the items ship to. state is required only in the US and Canada (2-letter code). zip is required except in countries without postal codes. |
Output Schema
| Name | Required | Description |
|---|---|---|
| rates | Yes | Shipping options, as offered by the carrier |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, openWorld and idempotent, so the safety profile is covered. The description adds genuinely new context: the rates are 'live' (an external, real-time dependency) and match what checkout will charge, which tells the agent results are authoritative and consistent rather than cached or approximate.
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?
A single front-loaded sentence that says what it returns, for what input, and why the numbers are trustworthy. The phrasing 'for the items to a destination' is slightly clumsy, but nothing is wasted.
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?
Return-format details are unnecessary because an output schema exists, and the input contract is fully documented in the schema. The description covers the remaining gaps an agent needs: this is a live external call and the rates coincide with checkout.
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 100%, and the nested address schema already spells out the country/postal-code/state requirements, so the schema does the heavy lifting. The description's restatement that state is needed 'in the US and Canada' adds little beyond what the schema says, which lands at the baseline.
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 gives a specific verb and resource ('Live FedEx shipping options and prices') and scopes it to items plus a destination. It is clear on its own but never names or distinguishes itself from siblings like check_price_and_stock or request_quote, so an agent must infer the boundary.
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 same rates checkout charges' implies this is the pre-checkout rate check, which hints at when to use it. However, there is no explicit when-not guidance and no named alternative, leaving the agent to reason out whether check_price_and_stock or request_quote is the right call instead.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
request_quoteRequest a quoteAInspect
Ask Arctic White for a quote (any items, including those priced on request, large orders, POs or net terms). We email the buyer a link to confirm the request; once confirmed, our team replies with pricing and lead times, usually within 24 hours.
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | Buyer's name (optional) | |
| note | No | Anything the team should know: timeline, PO, terms, freight account (optional) | |
| Yes | Buyer's work email; they confirm the request from it | ||
| items | Yes | Products and quantities. Quantity is in the product's selling unit (usually cases). | |
| phone | No | Phone number (optional) | |
| address | Yes | Shipping address. state is required only in the US and Canada (2-letter code); elsewhere it is optional. zip is required except in countries without postal codes. | |
| company | Yes | Company or institution |
Output Schema
| Name | Required | Description |
|---|---|---|
| Yes | Where the confirmation link was sent | |
| status | Yes | The request waits for the buyer to confirm it from the email |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare non-read-only, non-idempotent, open-world behavior, and the description adds genuinely useful process detail: an email confirmation link goes to the buyer, and human follow-up with pricing and lead times lands in ~24 hours. That is more than the annotations convey. The gap is what happens on repeat calls — nothing warns that resubmitting may create duplicate requests, which matters given idempotentHint=false.
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, no filler. The use-case scope comes first and the async confirmation workflow second, which is the right order for an agent deciding whether to call it.
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 an output schema present, the description correctly avoids describing return values and instead covers the process an agent cannot see from structured fields. It is nearly complete for a 7-parameter nested request tool; only the lack of explicit sibling routing and duplicate-submission behavior keep it from full marks.
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 100% and the schema itself is unusually rich, including the state/country and postal-code conditional rules. The description adds only the note that items may include "those priced on request"; it does not explain the email-must-match-confirmer relationship or the items array constraints. Baseline 3 is appropriate when the schema does the heavy lifting.
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 and resource ("Ask Arctic White for a quote") and scopes it with concrete use cases: items priced on request, large orders, POs, net terms. It separates this tool from a direct purchase flow by implication, though it never names check_price_and_stock or start_checkout as the alternatives it replaces.
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?
It gives clear triggering context — items with no listed price, large quantities, purchase orders, net terms — which is exactly the condition set that should route an agent here instead of to start_checkout. It stops short of an explicit "do not use this for in-stock, card-paid orders" exclusion, so an agent still has to infer the boundary.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_productsSearch productsARead-onlyIdempotentInspect
Search Arctic White's catalog of lab consumables (microplates, deep well plates, reservoirs, sealing mats and films, tubes, filter plates, lab equipment) by catalog number, a competitor's part number, name, well count or type. Returns SKUs, published prices (or 'pricing on request'), stock and product links.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Most results to return (1 to 25, default 10) | |
| query | Yes | What to search for, e.g. '96 deep well 2 mL', 'AWLS-219006', 'sealing mat 384' |
Output Schema
| Name | Required | Description |
|---|---|---|
| results | Yes | Matching products, best match first. Empty when nothing matches. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, openWorldHint=false, and destructiveHint=false, so the safety profile is covered. The description adds useful return context: SKUs, published prices (or 'pricing on request'), stock, and product links. No contradiction with annotations.
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 tightly written sentences: first front-loads purpose and searchable dimensions, second summarizes the return payload. No filler or redundancy.
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 an output schema present and 100% schema description coverage, the description supplies enough detail to call the tool correctly, including what query values are accepted and what the response contains. The only notable gap is the absence of explicit sibling routing guidance.
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 100%, so both parameters are documented in the schema. The description enriches the query parameter by listing additional accepted search inputs (competitor part number, well count/type, catalog number) beyond the schema's examples. The limit parameter is only covered by the schema, which is acceptable given full coverage.
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 verb ('Search') and resource ('catalog of lab consumables'), enumerates searchable attributes (catalog number, competitor part number, name, well count/type), and summarizes return data (SKUs, prices, stock, links). It does not explicitly contrast with siblings like get_product or check_price_and_stock, so it falls short of a 5.
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 clear context on what can be searched but provides no explicit when-to-use/when-not guidance or routing to alternatives. The agent must infer that this is the discovery step before using get_product or check_price_and_stock for specific lookups.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
start_checkoutStart checkoutAInspect
Create a secure Stripe checkout link on arcticsci.com for items with published prices. The buyer opens the link to review the order, see sales tax and pay; nothing is charged until they do. Use the shipping option id from get_shipping_estimate, or leave it out for the lowest rate. Items priced on request, or orders over the payment limits, need request_quote instead.
| Name | Required | Description | Default |
|---|---|---|---|
| No | Buyer's email, prefilled on the payment page (optional) | ||
| items | Yes | Products and quantities. Quantity is in the product's selling unit (usually cases). | |
| address | Yes | Shipping address. state is required only in the US and Canada (2-letter code); elsewhere it is optional. zip is required except in countries without postal codes. | |
| shipping_rate_id | No | id from get_shipping_estimate (optional; the lowest rate is used when left out) |
Output Schema
| Name | Required | Description |
|---|---|---|
| checkout_url | Yes | Stripe payment page on arcticsci.com's account. Give it to the buyer; it expires in 24 hours. |
| shipping_usd | Yes | Shipping charge in USD |
| subtotal_usd | Yes | Goods subtotal in USD |
| shipping_service | Yes | Carrier and service, e.g. FedEx Ground |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=false, openWorldHint=true, idempotentHint=false and destructiveHint=false, and the description adds real context: the buyer must open the link and review tax before anything is charged. It stops short of covering link expiry, whether repeated calls create duplicate links, or any auth/account prerequisites, so it is not fully complete for a non-idempotent external-facing write.
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?
Three sentences, front-loaded with the action and outcome, then the shipping default, then the escalation rule. Every clause carries decision-relevant information and none is redundant.
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 annotations, a rich nested schema and an output schema present, the description covers purpose, flow, deferral of charge, and the sibling handoff. It leaves out link lifetime and idempotency-duplication behavior, which matter for a tool flagged non-idempotent.
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 100%, so the parameter definitions already carry the baseline semantics. The description still adds value by stating the default behavior when shipping_rate_id is omitted and by implying the business filter on items, going slightly beyond the structured fields.
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 verb and resource ('Create a secure Stripe checkout link'), plus the qualifying scope ('items with published prices'), which lets an agent separate it from request_quote and the pricing/stock siblings without opening the schema.
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?
Explicitly routes the agent: pass the shipping option id from get_shipping_estimate or omit it for the lowest rate, and use request_quote instead for on-request-priced items or orders above payment limits. Both the alternative and the condition that selects it are named.
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.
6 tool updates
- First observed
check_price_and_stock - First observed
get_product - First observed
get_shipping_estimate - First observed
request_quote - First observed
search_products - First observed
start_checkout
Related MCP Connectors
UAE research-use-only catalogue, AED quotes and buyer-reviewed checkout links. No order submission.
Search surplus and overstock inventory, request bulk quotes, and check out.
Search Filtrous lab-filtration products by spec, get prices, and request quotes from your AI agent.
Search blank apparel, check availability, price orders and build a cart on standardblanks.com.
Related MCP Servers
- AlicenseAqualityBmaintenanceEnables AI assistants to answer peptide questions from PepBank study summaries with cited sources, and to look up catalog products with variants, prices, stock and per-lot lab reports (COAs). Also covers store policies and generates cart links for checkout on curo.you.7MIT
- FlicenseNot gradedqualityDmaintenanceEnables AI agents to browse product catalogs, search products with filters, and initiate checkouts, generating order summaries and checkout URLs.-
- AlicenseNot gradedqualityBmaintenanceEnables AI assistants to search public sources for labs, papers, grants, clinical trials, and patents on a research topic, returning ranked labs with explanations, researcher profiles, and geographic data.MIT
- AlicenseNot gradedqualityDmaintenanceAn AI lab companion that connects Claude to scientific databases, computational chemistry tools, bench references, and publication utilities, covering the entire research workflow from literature search to publication.34 PyPI3MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.