TestWell Lab Tests
REMOTE · WWW.TEST-WELL.COM · SCANNED SEP 22
Cash-pay lab tests: catalog search, all-in quotes by state, draw sites by ZIP, reviewed ranges.
Available components
How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score → Why this is hard to score →
Endpoint Security80
- The endpoint's TLS certificate is valid, in date, and uses a strong key. View diagnostics → Pass
- No authorisation is required to call this server. Every tool declares its destructiveHint and none is destructive, so open access doesn't expose one. See how to fix → View diagnostics → Partial
- HTTPS is enforced; there's no plaintext access path. View diagnostics → Pass
- The HSTS (Strict-Transport-Security) header is present. View diagnostics → Pass
- DNSSEC check failed: this domain isn't protected by DNSSEC. See how to fix → View diagnostics → Fail
Transport & Reachability100
- Verified streamable-http transport via a live MCP handshake. View diagnostics → Pass
Schema Quality & AI Usability83
- 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
- AI-judged instruction clarity (good).Pass
- Context-footprint check failed: tool/resource definitions use about 2384 tokens (~119/item across 20 items; 18 tools + 2 resources), over budget; trim descriptions and params. See how to fix → Fail
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management53
- Stability observed for 16 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage90
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 64% of tool parameters carry a description.Partial
- Structured output schemas are declared (100% of tools); any adoption earns full credit.Pass
Tool Safety100
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- All 1 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation.Pass
- An AI judge read all 20 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
- Implements a current MCP spec version (2026-07-28).Pass
How do I install the TestWell Lab Tests MCP server?
TestWell Lab Tests is a hosted endpoint at https://www.test-well.com/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.
remote · www.test-well.com
claude mcp add --transport http com-test-well-testwell 'https://www.test-well.com/mcp'
{
"mcpServers": {
"com-test-well-testwell": {
"url": "https://www.test-well.com/mcp"
}
}
} {
"servers": {
"com-test-well-testwell": {
"type": "http",
"url": "https://www.test-well.com/mcp"
}
}
} [mcp_servers.com-test-well-testwell] url = "https://www.test-well.com/mcp"
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"com-test-well-testwell": {
"type": "remote",
"url": "https://www.test-well.com/mcp",
"enabled": true
}
}
} openclaw mcp add com-test-well-testwell --url 'https://www.test-well.com/mcp' --transport streamable-http
mcp_servers:
com-test-well-testwell:
url: "https://www.test-well.com/mcp" {
"McpServers": {
"com-test-well-testwell": {
"Transport": "http",
"Url": "https://www.test-well.com/mcp"
}
}
} assistant mcp add com-test-well-testwell -t streamable-http -u 'https://www.test-well.com/mcp'
{
"mcpServers": {
"com-test-well-testwell": {
"type": "http",
"url": "https://www.test-well.com/mcp"
}
}
} The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.
Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 22 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 50 to 53. That category is still filling its 30-day observation window: 15 days of observed history at the previous scan, 16 at this one. The score rises as the window fills, whether or not the server changes.
- 20 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 43 to 47. That category is still filling its 30-day observation window: 13 days of observed history at the previous scan, 14 at this one. The score rises as the window fills, whether or not the server changes.
- 18 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 37 to 40. That category is still filling its 30-day observation window: 11 days of observed history at the previous scan, 12 at this one. The score rises as the window fills, whether or not the server changes.
- 16 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 30 to 33. That category is still filling its 30-day observation window: 9 days of observed history at the previous scan, 10 at this one. The score rises as the window fills, whether or not the server changes.
- 14 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 23 to 27. That category is still filling its 30-day observation window: 7 days of observed history at the previous scan, 8 at this one. The score rises as the window fills, whether or not the server changes.
- 11 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 13 to 17. That category is still filling its 30-day observation window: 4 days of observed history at the previous scan, 5 at this one. The score rises as the window fills, whether or not the server changes.
- 9 Sept 26 0
- Tool “get_guide” rewrote its description, which is the text the model reads security
- Schema quality: 1946 → 2384 ▼ functional
- Tool coverage: 81% → 64% ▼ functional
- Schema quality: excellent → good functional
- Destructive annotations: pass → 100 functional
- New tool “cancel_checkout” functional
- New tool “complete_checkout” functional
- New tool “create_checkout” functional
- New tool “get_checkout” functional
- New tool “update_checkout” functional
- 8 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 3 to 7. That category is still filling its 30-day observation window: 1 days of observed history at the previous scan, 2 at this one. The score rises as the window fills, whether or not the server changes.
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 22 Sept 2026 · Probed https://www.test-well.com/mcp
TLS valid
Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .
| Subject | Issuer | Valid from | Valid until | Key | Signature | Serial |
|---|---|---|---|---|---|---|
| CN=www.test-well.com | CN=YR1,O=Let's Encrypt,C=US | 29 Aug 2026 | 27 Nov 2026 | RSA 2048 | SHA256-RSA | 6ae279823583ecdd3529e14c3fa7ca7eabe |
| SANs: www.test-well.com | ||||||
| CN=YR1,O=Let's Encrypt,C=US (CA) | CN=Root YR,O=ISRG,C=US | 3 Sept 2025 | 2 Sept 2028 | RSA 2048 | SHA256-RSA | a20253f15f2691c05dc1ce13b9bcca4e |
| CN=Root YR,O=ISRG,C=US (CA) | CN=ISRG Root X1,O=Internet Security Research Group,C=US | 13 May 2026 | 2 Sept 2032 | RSA 4096 | SHA256-RSA | f24b6d17f9d9ad7cb1c9fea78782699f |
Background: What to check on a remote MCP endpoint →
DNSSEC insecure
Validation of www.test-well.com. — Not signed
| Zone | DS | Keys | Algorithms | Outcome |
|---|---|---|---|---|
| . | trust_anchor | 20326, 38696 | 8, 8 | Verified |
| com. | present | 19718 | 13 | Verified |
| test-well.com. | absent | Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation |
Authentication No authorisation required
The endpoint answered without asking for a token. Anyone who knows the URL can reach it.
| Result | No authorisation required |
|---|---|
| HTTP status | 200 |
| Header | Value |
|---|---|
| strict-transport-security | max-age=63072000; includeSubDomains; preload |
| content-security-policy | default-src 'self'; script-src 'self' 'unsafe-inline' 'unsafe-eval' https://js.stripe.com https://checkout.stripe.com https://maps.googleapis.com https://www.googletagmanager.com https://www.googleadservices.com https://googleads.g.doubleclick.net https://va.vercel-scripts.com https://vercel.live https://bzrcdn.openai.com https://challenges.cloudflare.com; style-src 'self' 'unsafe-inline' https://fonts.googleapis.com; img-src 'self' data: blob: https: http:; font-src 'self' https://fonts.gstatic.com; frame-src https://js.stripe.com https://hooks.stripe.com https://checkout.stripe.com https://vercel.live https://td.doubleclick.net https://challenges.cloudflare.com; connect-src 'self' https://api.stripe.com https://checkout.stripe.com https://maps.googleapis.com https://*.supabase.co https://api.tryvital.io https://api.resend.com https://api.openai.com https://www.google-analytics.com https://*.google-analytics.com https://analytics.google.com https://*.analytics.google.com https://stats.g.doubleclick.net https |
| x-content-type-options | nosniff |
| x-frame-options | SAMEORIGIN |
| referrer-policy | strict-origin-when-cross-origin |
| permissions-policy | camera=(), microphone=(), geolocation=(self), interest-cohort=() |
Background: How OAuth 2.1 works in the 2026 MCP spec →
Transports 2 probes
| Transport | URL | Outcome | Status | Location |
|---|---|---|---|---|
| streamable-http | https://www.test-well.com/mcp | Verified | 200 | |
| http (plaintext) | http://www.test-well.com/mcp | HTTPS enforced | 308 | https://www.test-well.com/mcp |
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →
calculate_free_testosterone Calculate free testosterone (Vermeulen) ~116
Calculate free and bioavailable testosterone from total testosterone, SHBG and albumin using the Vermeulen (1999) mass-action equation — the method behind lab-reported 'calculated free testosterone'. Educational; not a diagnosis.
| Name | Type | Req | Description |
|---|---|---|---|
| albuminGdL | number | – | Albumin in g/dL (default 4.3) |
| shbg | number | yes | SHBG in nmol/L |
| totalT | number | yes | Total testosterone |
| totalTUnit | string | – | Default ng/dL |
| Name | Type | Req | Description |
|---|---|---|---|
| bioavailableTestosterone | object | – | – |
| freePercent | number | – | – |
| freeTestosterone | object | – | – |
| inputs | object | – | – |
| method | string | – | – |
| tests | array | – | – |
| toolUrl | string | – | – |
No examples provided.
cancel_checkout Cancel a checkout session ~42
Cancel an open (unpaid) checkout session. Paid sessions cannot be canceled here — the patient's complete-details email explains refunds.
| Name | Type | Req | Description |
|---|---|---|---|
| checkout_session_id | string | yes | – |
| Name | Type | Req | Description |
|---|---|---|---|
| id | string | yes | – |
| status | string | yes | – |
No examples provided.
compare_prices Compare all-in prices across providers for a test ~146
For one blood test, the all-in single-test price (sticker + per-order fees) at TestWell and at every tracked direct-to-consumer provider with a verified equivalent — JustLabs, Quest, Labcorp OnDemand, Ulta Lab Tests, Walk-In Lab, HealthLabs and more — each with the date it was verified, plus typical hospital self-pay and Quest Direct reference prices. States the multi-test caveat (fees are paid once per order). Source: the TestWell Blood Test Price Index (CC BY 4.0).
| Name | Type | Req | Description |
|---|---|---|---|
| test | string | yes | Test slug or name, e.g. 'tsh', 'lipid panel', 'vitamin-d' |
| Name | Type | Req | Description |
|---|---|---|---|
| caveats | array | – | – |
| cheapestSingleTestAllIn | object | – | – |
| dataset | string | – | Absolute https URL on test-well.com |
| found | boolean | – | – |
| hint | string | – | – |
| license | string | – | – |
| methodology | string | – | – |
| providers | array | – | Sorted by all-in price, TestWell included |
| query | string | – | – |
| reference | object | – | – |
| test | object | – | – |
No examples provided.
compare_provider Compare TestWell with another lab-testing service ~114
Honest side-by-side of TestWell and another direct-to-consumer lab service (Quest Direct, Labcorp OnDemand, Function Health, JustLabs, Ulta Lab Tests, …): pricing model, per-order fees, labs, turnaround, where each wins, spot prices on common tests as sticker AND all-in, with verification dates and sources. Call with no argument to list the providers covered.
| Name | Type | Req | Description |
|---|---|---|---|
| provider | string | – | Competitor slug or name, e.g. 'quest-direct', 'Function Health', 'justlabs' |
| Name | Type | Req | Description |
|---|---|---|---|
| competitor | object | – | – |
| competitorWinsAt | array | – | – |
| found | boolean | – | – |
| providers | array | – | Returned when no provider was named |
| sources | array | – | – |
| spotPrices | array | – | – |
| testWellNotFor | array | – | – |
| testWellWinsAt | array | – | – |
| testwell | object | – | – |
| url | string | – | Absolute https URL on test-well.com |
| verdict | string | – | – |
| verified | string | – | Date the competitor's prices were verified |
No examples provided.
complete_checkout Pay and place the order ~148
Charge 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.
| Name | Type | Req | Description |
|---|---|---|---|
| buyer | – | – | – |
| checkout_session_id | string | yes | – |
| idempotency_key | string | – | – |
| payment_data | object | yes | – |
| Name | Type | Req | Description |
|---|---|---|---|
| id | string | yes | – |
| messages | array | yes | – |
| order | object | – | – |
| status | string | yes | – |
| totals | array | yes | – |
No examples provided.
convert_units Convert lab units ~130
Convert a lab value between US conventional and SI units for 30 common analytes (glucose, cholesterol, testosterone, vitamin D, …) using published factors; hemoglobin A1c uses the NGSP↔IFCC master equation and also returns estimated average glucose.
| Name | Type | Req | Description |
|---|---|---|---|
| analyte | string | yes | Analyte slug or name, e.g. 'glucose', 'total-cholesterol', 'testosterone', 'vitamin-d', 'a1c' |
| direction | string | – | Default toSI (US → SI) |
| value | number | yes | The numeric value to convert |
| Name | Type | Req | Description |
|---|---|---|---|
| analyte | string | – | – |
| biomarkerUrl | – | – | – |
| error | string | – | – |
| estimatedAverageGlucose | object | – | – |
| factor | number | – | – |
| input | object | – | – |
| method | string | – | – |
| note | – | – | – |
| output | object | – | – |
No examples provided.
create_checkout Create a checkout session ~152
Start 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.
| Name | Type | Req | Description |
|---|---|---|---|
| buyer | object | – | – |
| dry_run | boolean | – | Price only; do not create a session |
| items | array | yes | – |
| state | string | – | US state code or name where the blood will be drawn |
| Name | Type | Req | Description |
|---|---|---|---|
| currency | string | yes | – |
| dry_run | boolean | – | – |
| fulfillment_options | array | yes | – |
| id | string | yes | – |
| line_items | array | yes | – |
| links | array | yes | – |
| messages | array | yes | – |
| order | object | – | – |
| pay_online_url | – | – | Prefilled cart for browser payment when the platform has no payment token |
| status | string | yes | – |
| totals | array | yes | – |
No examples provided.
find_draw_sites Find draw sites near a ZIP ~121
Find 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.
| Name | Type | Req | Description |
|---|---|---|---|
| lab | string | – | Limit to one lab |
| limit | integer | – | Max sites (default 10) |
| radiusMiles | integer | – | Search radius in miles (snapped to 10/20/25/50/100; default 25) |
| zip | string | yes | 5-digit US ZIP code |
| Name | Type | Req | Description |
|---|---|---|---|
| count | number | – | – |
| mapUrl | string | – | Absolute https URL on test-well.com |
| radiusMiles | number | – | – |
| sites | array | – | – |
| zip | string | – | – |
No examples provided.
get_checkout Read a checkout session ~40
Current state of a checkout session (status, line items, totals, messages, order once paid). Read-only.
| Name | Type | Req | Description |
|---|---|---|---|
| checkout_session_id | string | yes | – |
| Name | Type | Req | Description |
|---|---|---|---|
| id | string | yes | – |
| line_items | array | yes | – |
| messages | array | yes | – |
| status | string | yes | – |
| totals | array | yes | – |
No examples provided.
get_guide Get a guide, condition or answer page as Markdown ~118
Return one of TestWell's educational pages as Markdown: guides (/guides/<slug>), condition workups (/conditions/<slug>), biomarker pages (/biomarkers/<slug>), state pages (/lab-locations/<slug>) or comparisons (/compare/<slug>). Call with no path to list the available guides and conditions.
| Name | Type | Req | Description |
|---|---|---|---|
| lang | string | – | Spanish version when one exists (default en) |
| path | string | – | Site path, e.g. '/guides/annual-blood-work' or 'conditions/anemia' |
| Name | Type | Req | Description |
|---|---|---|---|
| answers | array | – | – |
| conditions | array | – | – |
| found | boolean | – | – |
| guides | array | – | Index, returned when no path was given |
| markdown | string | – | Full page as Markdown |
| path | string | – | – |
| title | string | – | – |
| url | string | – | Absolute https URL on test-well.com |
No examples provided.
get_test Get a test or panel ~107
Full 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.
| Name | Type | Req | Description |
|---|---|---|---|
| lang | string | – | Spanish prose where a translation exists (default en) |
| slug | string | yes | Catalog slug (from search_tests) or id, e.g. 'tsh', 'general-wellness-panel' |
| Name | Type | Req | Description |
|---|---|---|---|
| found | boolean | – | – |
| item | object | – | – |
| suggestions | array | – | – |
No examples provided.
interpret_results Explain lab results against reviewed reference ranges ~176
Flag each pasted lab value as low / normal / high against TestWell's physician-reviewed reference catalog (130+ markers; sex- and age-specific bands where they exist), with the reviewed 'what high/low suggests' copy, retest guidance, cited sources and links to the marker's page and, where one exists, its high/low interpretation page. Stateless — values are not stored or logged. Educational, not a diagnosis; the user's own report range takes precedence.
| Name | Type | Req | Description |
|---|---|---|---|
| age | integer | – | – |
| postmenopausal | boolean | – | – |
| pregnancy | boolean | – | – |
| sex | string | – | – |
| values | array | yes | Results to explain, e.g. [{marker:'TSH', value:5.2, unit:'mIU/L'}, {marker:'ferritin', value:12}] |
| Name | Type | Req | Description |
|---|---|---|---|
| disclaimer | string | – | – |
| results | array | – | – |
| reviewed | object | – | – |
| summary | object | – | – |
No examples provided.
list_panels List panels ~90
List TestWell's bundled panels (multi-test packages priced below the sum of their tests), optionally filtered by category or maximum price. Sorted by price.
| Name | Type | Req | Description |
|---|---|---|---|
| category | string | – | Catalog category, e.g. 'Hormones', 'General Health' |
| limit | integer | – | Max results (default 25) |
| maxPrice | number | – | Only panels at or under this sticker price (USD) |
| Name | Type | Req | Description |
|---|---|---|---|
| count | number | – | – |
| labFee | number | – | USD |
| panels | array | – | – |
No examples provided.
lookup_reference_range Reference range for a biomarker ~130
Physician-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.
| Name | Type | Req | Description |
|---|---|---|---|
| age | integer | – | – |
| marker | string | yes | Marker name or alias, e.g. 'TSH', 'ferritin', 'HbA1c', 'LDL' |
| postmenopausal | boolean | – | – |
| pregnancy | boolean | – | – |
| sex | string | – | – |
| Name | Type | Req | Description |
|---|---|---|---|
| aliases | array | – | – |
| browse | string | – | – |
| category | string | – | – |
| citations | array | – | – |
| filteredToQuery | boolean | – | – |
| found | boolean | – | – |
| highSuggests | – | – | – |
| howToTest | array | – | – |
| lowSuggests | – | – | – |
| marker | string | – | – |
| measures | string | – | – |
| ranges | array | – | – |
| retest | – | – | – |
| suggestions | array | – | – |
| units | array | – | – |
No examples provided.
quote_order All-in order quote ~153
Price 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.
| Name | Type | Req | Description |
|---|---|---|---|
| items | array | yes | Catalog slugs or ids, e.g. ['tsh', 'vitamin-d'] |
| lab | string | – | Preferred lab outside NY/NJ (default quest) |
| state | string | – | US state code or name where the user will be drawn, e.g. 'FL' or 'Florida' |
| Name | Type | Req | Description |
|---|---|---|---|
| checkoutUrl | – | – | Prefilled cart on test-well.com — purchases complete there; null when nothing is orderable |
| currency | string | – | – |
| error | string | – | Present when ok=false, e.g. state not served |
| lab | string | – | – |
| labFee | number | – | USD |
| labName | string | – | – |
| lines | array | – | – |
| notes | array | – | – |
| ok | boolean | – | – |
| state | string | – | – |
| subtotal | number | – | USD |
| total | number | – | All-in total: subtotal + the single lab processing fee |
| unavailable | array | – | Requested items the routed lab cannot run in this state |
No examples provided.
recommend_tests Recommend tests for goals or symptoms ~143
Suggest 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.
| Name | Type | Req | Description |
|---|---|---|---|
| budget | string | – | Budget band: low ≈ $80, medium ≈ $200, high ≈ $400 |
| goals | array | – | Health goals, e.g. ['energy', 'thyroid'] |
| symptoms | array | – | Symptoms, e.g. ['always cold', 'weight gain'] |
| Name | Type | Req | Description |
|---|---|---|---|
| byGoal | – | – | Recommended panel and alternatives for the stated goals |
| bySymptom | – | – | Panels, individual tests and explanations for the stated symptoms |
| disclaimer | string | – | – |
| goals | array | – | – |
| labFee | number | – | USD |
| next | string | – | Suggested next tool call |
| symptoms | array | – | – |
No examples provided.
search_tests Search the TestWell catalog ~198
Search 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).
| Name | Type | Req | Description |
|---|---|---|---|
| category | string | – | Catalog category, e.g. 'Thyroid', 'Heart Health' |
| lang | string | – | Return Spanish names/descriptions where a translation exists (default en) |
| limit | integer | – | Max results (default 10) |
| orderableOnly | boolean | – | Exclude items listed as coming soon (default true) |
| query | string | yes | Keyword, biomarker, CPT code or health goal, e.g. 'vitamin d', 'TSH', '80053', 'cholesterol' |
| type | string | – | Restrict to individual tests or bundled panels |
| Name | Type | Req | Description |
|---|---|---|---|
| count | number | – | – |
| items | array | – | – |
| labFee | number | – | USD |
| lang | string | – | – |
| query | string | – | – |
No examples provided.
update_checkout Update a checkout session ~65
Change items, state or buyer details on an open checkout session and get it re-priced. Returns the same session object as create_checkout.
| Name | Type | Req | Description |
|---|---|---|---|
| buyer | object | – | – |
| checkout_session_id | string | yes | – |
| items | array | – | – |
| state | string | – | – |
| Name | Type | Req | Description |
|---|---|---|---|
| id | string | yes | – |
| line_items | array | yes | – |
| messages | array | yes | – |
| status | string | yes | – |
| totals | array | yes | – |
No examples provided.
What is the TestWell Lab Tests MCP server?
TestWell Lab Tests is an MCP server listed in the public MCP registry as com.test-well/testwell. Cash-pay lab tests: catalog search, all-in quotes by state, draw sites by ZIP, reviewed ranges. This page covers its hosted endpoint (https://www.test-well.com/mcp).
Is the TestWell Lab Tests MCP server safe to use?
TestWell Lab Tests scores 82 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.
What tools does the TestWell Lab Tests MCP server expose?
TestWell Lab Tests exposes 18 tools: search_tests, get_test, list_panels, recommend_tests, quote_order, and 13 more. Their descriptions and schemas cost roughly 2,189 tokens of context every time the server is loaded.
Does the TestWell Lab Tests MCP server require authentication?
No. We connected to TestWell Lab Tests without credentials and it answered, so anything it exposes is reachable by anyone who knows the address.
Is the TestWell Lab Tests MCP server still maintained?
TestWell Lab Tests is still listed as active in the MCP registry. We last reached this channel on 22 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.