https://www.test-well.com/mcp ↗
Cash-pay lab tests: catalog search, all-in quotes by state, draw sites by ZIP, reviewed ranges.
TestWell Lab Tests is a remote MCP server published at www.test-well.com. It has been probed 6 times since 9/12/2026. It answered in 6 of them (100.0%), a near-uninterrupted record. Median response time is 1,073 ms, a delay an agent will notice. It exposes a broad tool surface of 18 tools. On the protocol side it speaks the 2026-07-28 stateless spec.
Can an LLM agent pick the right tool here — names, descriptions and parameter clarity are assessed.
recommend_tests — 'budget' parameter type is string but lacks format specificationconvert_units — No error handling for unsupported analytesquote_order — Incomplete description truncation ('Use this befo')search_tests — 'type' parameter lacks enum values for possible inputsRisk: low
tools/list structure, inputSchema validity, and a functional smoke test — the components of the 0-100 score.
Tools the server advertised in the latest measurement — measured, not catalog-claimed.
search_testsSearch TestWell's public catalog of cash-pay lab tests and panels by keyword, biomarker, CPT code, or category. Returns name, slug, per-lab prices, sample, fasting, turnaround and order URL. Prices are stickers; every order adds one $6 lab processing fee (see quote_order for all-in totals).
querystringrequiredtypestringcategorystringorderableOnlybooleanlimitintegerlangstringget_testFull public detail for one TestWell test or panel by slug or id: description, biomarkers, CPT, per-lab prices, labs, fasting/prep, turnaround, included tests (panels), FAQ, related conditions, order URL and a Markdown page URL.
slugstringrequiredlangstringlist_panelsList TestWell's bundled panels (multi-test packages priced below the sum of their tests), optionally filtered by category or maximum price. Sorted by price.
categorystringmaxPricenumberlimitintegerrecommend_testsSuggest TestWell panels and tests for stated health goals (e.g. 'annual checkup', 'heart health', 'TRT monitoring') and/or symptoms (e.g. 'fatigue', 'hair loss'). Prefers a curated pre-built panel when one fits; otherwise assembles individual tests within a budget. Educational matching, not a diagnosis.
goalsarraysymptomsarraybudgetstringquote_orderPrice a set of tests/panels exactly as TestWell's checkout would: per-lab prices for the user's state (New York and New Jersey route to BioReference; Rhode Island is not served), the single $6 lab processing fee, the total, items that can't be ordered and why, and a prefilled cart URL. Use this before quoting any total to a user.
itemsarrayrequiredstatestringlabstringcreate_checkoutStart a TestWell order for the user: tests/panels, the US state where they will visit the lab (required for pricing and lab routing), and the buyer's name, email and phone. Returns priced line items in cents, the single $6 lab fee, the total, any blocking messages, and pay_online_url — a prefilled cart the user can pay in a browser when the platform has no payment token. Use dry_run to preview without creating a session.
itemsarrayrequiredstatestringbuyerobjectdry_runbooleanupdate_checkoutChange items, state or buyer details on an open checkout session and get it re-priced. Returns the same session object as create_checkout.
checkout_session_idstringrequireditemsarraystatestringbuyerobjectget_checkoutCurrent state of a checkout session (status, line items, totals, messages, order once paid). Read-only.
checkout_session_idstringrequiredcancel_checkoutCancel an open (unpaid) checkout session. Paid sessions cannot be canceled here — the patient's complete-details email explains refunds.
checkout_session_idstringrequiredcomplete_checkoutCharge the payment credential the platform obtained for a session that is ready_for_payment and create the order. Input follows the ChatGPT payment-sheet contract: checkout_session_id, buyer, payment_data { token, provider: 'stripe', billing_address }. The token is a Stripe shared payment token (spt_…); platforms without one should send the user to pay_online_url from create_checkout. After payment the patient gets an email link to add date of birth, sex, phone and consent — the lab requisition is issued when that is done.
checkout_session_idstringrequiredbuyerpayment_dataobjectrequiredidempotency_keystringfind_draw_sitesFind Quest Diagnostics, Labcorp and BioReference patient service centers near a US ZIP code, with address, distance, phone and hours. Walk-ins are accepted at most sites; the requisition arrives by email after physician authorization.
zipstringrequiredradiusMilesintegerlabstringlimitintegerlookup_reference_rangePhysician-reviewed reference range for a blood test marker (130+ markers), filtered by sex and age when they matter, with what high and low values suggest, retest cadence, how to get tested, cited sources and the review date. Educational; the user's own report range takes precedence.
markerstringrequiredsexstringageintegerpregnancybooleanpostmenopausalbooleanDerived by comparing consecutive probes — changes in era, protocol version, build and reachability.
Add this badge to your README — it updates automatically as measurements change.
[](https://mcpmetrics.io/servers/com-test-well-testwell)<a href="https://mcpmetrics.io/servers/com-test-well-testwell"><img src="https://mcpmetrics.io/badge/com.test-well/testwell/era.svg" alt="mcpmetrics"></a>You are seeing the last 7 days. Sign up for the full history. Which check failed and why is in the dashboard.
Sign up free to seeThe catalog entries whose name and description are closest to this one, found with the same index the search box uses.
USPS state code IN.
Live web search, image search, topic filters and full-text fetch over our own crawled index.
Search 1.2M+ Telegram channels, 245k+ chats, 160k+ bots — no account, no key, no install.
Pay-per-call NLP & embeddings APIs on Base via x402. No keys/signup; agents pay per call in USDC.
Pay-per-call NLP & embeddings APIs on Base via x402. No keys/signup; agents pay per call in USDC.
1 Google Search endpoints. Pay per call in USDC via x402.
| Run | Era | Modern | ms | Legacy | ms | Versions |
|---|---|---|---|---|---|---|
| 2026-09-13 01:33:33 | Dual-era | 200 | 1017 | 200 | 963 | 2026-07-28 |
| 2026-09-12 23:31:36 | Dual-era | 200 | 1226 | 200 | 1084 | 2026-07-28 |
| 2026-09-12 21:29:15 | Dual-era | 200 | 1563 | 200 | 1474 | 2026-07-28 |
| 2026-09-12 19:27:29 | Dual-era | 200 | 887 | 200 | 864 | 2026-07-28 |
| 2026-09-12 17:24:09 | Dual-era | 200 | 695 | 200 | 715 | 2026-07-28 |
| 2026-09-12 15:21:42 | Dual-era | 200 | 1164 | 200 | 1073 | 2026-07-28 |
Each block is one measurement round. Green: working response. Amber: responded but the server was returning errors (5xx). Red: no response at all.
Each cell is one probe run. Faded cells are incomplete probes — one leg did not answer, so the era is inconclusive.
The two probe legs separately: modern server/discover and legacy initialize.
Comments
Sign in to write a comment
No comments yet. Be the first.