Skip to content

Tethered Trust

by tetheredtrust.com · remote · no sign-in to list tools · v0.12.0 · published by com.tetheredtrust

Compatibility checks for AI agents before they buy or install: verdicts, evidence, receipts.

Final · 1Changes · 11

18 tools: 1 do something that can't be undone, 11 change things and 6 only read.

Scanned Oct 21, 2026

2 checks matched something in the tool definitions. No finding is not a safety guarantee. How the checks work.

claude mcp add --transport http tethered-trust https://tetheredtrust.com/mcp

Findings

Matches of fixed checks, with the text they matched.

2 warn
  • The server marks "check_cart_before_checkout" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":false,"openWorldHint":true}; The name "check_cart_before_checkout" says "checkout": a word for a change.

    What this check looks for
  • The server marks "fix_purchase_plan" read-only (readOnlyHint: true), and its own name, description or input give the class "irreversible".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":false,"openWorldHint":true}; The name "fix_purchase_plan" says "purchase": a word that usually means money moves, which cannot be taken back.

    What this check looks for

Tools

Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.

18 tools

Can't be undone 1Claude Code: ask
  • fix_purchase_planWhen a plan comes back incompatible or conditional: the smallest set of changes that makes it work (swap a part for a verified one that fits everything else, add a missing cooler, …1 finding

    Why it is in this group

    • The name "fix_purchase_plan" says "purchase": a word that usually means money moves, which cannot be taken back.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "fix_purchase_plan" read-only (readOnlyHint: true), and its own name, description or input give the class "irreversible".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":false,"openWorldHint":true}; The name "fix_purchase_plan" says "purchase": a word that usually means money moves, which cannot be taken back.

      What this check looks for
    Description, as the server wrote it
    When a plan comes back incompatible or conditional: the smallest set of changes that makes it work (swap a part for a verified one that fits everything else, add a missing cooler, hub or adapter, trim quantities that exceed slots), re-validated, with the reason for each change. Fewest changes and verified products first; no prices.

    Annotations the server declares

    • title: Fix a purchase plan
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
Changes things 11Claude Code: ask
  • check_batchUp to 25 independent compatibility checks in one call (e.g.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Up to 25 independent compatibility checks in one call (e.g. ranking candidate products for one device). Each result has its own decision, evidence and receipt.

    Annotations the server declares

    • title: Check many pairs
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
  • check_cart_before_checkoutChecks a cart at checkout.1 finding

    Why it is in this group

    • The name "check_cart_before_checkout" says "checkout": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "check_cart_before_checkout" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":false,"openWorldHint":true}; The name "check_cart_before_checkout" says "checkout": a word for a change.

      What this check looks for
    Description, as the server wrote it
    Checks a cart at checkout. Takes the checkout session exactly as a commerce protocol returns it (a UCP checkout or an ACP CheckoutSession) or plain line items, plus what the customer already owns. Returns a decision per line item, safe_to_checkout, an action (proceed, resolve_conditions, do_not_checkout, ask_customer), questions, substitutions, a signed receipt, and a com.tetheredtrust.shopping.compatibility extension object to attach to the checkout.

    Annotations the server declares

    • title: Check a cart before checkout
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
  • check_compatibilityWill this exact part or accessory work with that exact device?No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Will this exact part or accessory work with that exact device? Use before recommending or buying. Covers anything that has to fit, plug in, mount, run on or charge with something someone owns. Verified catalog (specs checked against cited manufacturer sources): computers & consoles (RAM, M.2 SSDs, USB-C chargers), phones/tablets/watches (USB-C PD, MagSafe, Qi2, watch bands), cameras (lens mounts, adapters, batteries, memory cards), cordless power tools (battery platforms), printers (ink, toner, drums), appliances (refrigerator water and air filters, installation fit), vacuums (bags, filters, batteries, robot-vacuum parts), air quality (purifier filters, HVAC media, humidifier pads), e-bikes (batteries and chargers by drive system), smart home (Matter, Thread, Zigbee, hubs, bulb bases), PC building (CPU sockets, cooler mounts, memory, clearances, power), cars & EV charging (tire sizes by trim, NACS/J1772/CCS1 and approved adapters, home chargers; a starter set of models) and TVs, consoles & streaming (VESA mounts, weight and screen size, console generations, app platforms). Products outside the catalog in any category are read by AI in terms of the same standards and returned as unverified. Returns a decision (supported / conditional / incompatible / insufficient_evidence), the rules checked, caveats, required accessories, the questions to ask when it can't decide, evidence links and a signed receipt. When the text matches several models it returns each candidate's answer.

    Annotations the server declares

    • title: Check compatibility
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
  • check_fitWill this appliance physically fit this space?No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Will this appliance physically fit this space? Compares dimensions plus typical installation clearances and required connections (power, water, gas).

    Annotations the server declares

    • title: Check physical fit
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • enrich_catalogFor retailers and marketplaces (API key required): up to 50 products per call (SKU with title, URL or GTIN) in; each product's compatibility attributes out (standards it takes and …No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    For retailers and marketplaces (API key required): up to 50 products per call (SKU with title, URL or GTIN) in; each product's compatibility attributes out (standards it takes and provides, numeric limits, evidence level, freshness), ready to add to a product feed or UCP catalog so agents can match it to what shoppers own.

    Annotations the server declares

    • title: Enrich a product catalog
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
  • how_it_worksWhat Tethered Trust is, what it covers, where its data comes from, pricing and terms.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    What Tethered Trust is, what it covers, where its data comes from, pricing and terms.

    Annotations the server declares

    • title: How Tethered Trust works
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • identify_productIdentify a product from a URL, model number, SKU, ASIN, UPC/EAN or description, and get its compatibility profile: the standards it takes and provides (mounts, sockets, connectors,…No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Identify a product from a URL, model number, SKU, ASIN, UPC/EAN or description, and get its compatibility profile: the standards it takes and provides (mounts, sockets, connectors, platforms, part numbers, sizes), numeric limits (OS version, watts, weight, screen size), evidence and freshness. Products not in our reviewed catalog are researched on demand from the manufacturer's page and returned with status read_from_manufacturer_page (unreviewed) or unconfirmed (not enough to decide on). Use first when the product could be anything.

    Annotations the server declares

    • title: Identify any product
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
  • plan_upgradeWhat can be upgraded on this device and with what: memory (type, slots, maximum), storage (M.2 slots, lengths, PCIe generation), power, CPU and cooling for motherboards, graphics c…No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    What can be upgraded on this device and with what: memory (type, slots, maximum), storage (M.2 slots, lengths, PCIe generation), power, CPU and cooling for motherboards, graphics card and cooler clearance for PC cases, plus the parts in our graph that fit (verified first) and the manufacturer's notes.

    Annotations the server declares

    • title: Plan an upgrade
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
  • recheck_planRe-run a saved purchase plan against today's data before ordering, and see what changed since it was issued: decisions, product records, or receipt status.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Re-run a saved purchase plan against today's data before ordering, and see what changed since it was issued: decisions, product records, or receipt status.

    Annotations the server declares

    • title: Recheck a saved plan
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
  • report_outcomeAfter a purchase, report whether it actually fit.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    After a purchase, report whether it actually fit. Free, safe to call, and only the first report per check counts. Reports are weighted by level: self_reported (website), agent_reported (anonymous API/MCP), partner_reported (API key holders) and order_confirmed (order evidence we've confirmed). Only the last two can raise future confidence.

    Annotations the server declares

    • title: Report what happened
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • verify_receiptCheck a Tethered Trust receipt: is the signature ours, is it still within valid_until, and have the records behind it changed since?No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Check a Tethered Trust receipt: is the signature ours, is it still within valid_until, and have the records behind it changed since? A valid receipt proves what we said and when; it doesn't guarantee the verdict was right.

    Annotations the server declares

    • title: Verify a receipt
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
Only reads 6Claude Code: allow
  • find_partsWhich parts and accessories fit this model?No findings

    Why it is in this group

    • The name "find_parts" says "find": a word for reading.
    Description, as the server wrote it
    Which parts and accessories fit this model? OEM parts first, then verified alternatives: e.g. a refrigerator's water filter, a printer's cartridges, a camera's lenses and batteries, a tool's batteries, or the RAM, SSDs and chargers that fit a computer.

    Annotations the server declares

    • title: Find parts that fit
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • identify_from_photoRead the brand, model and part numbers from a photo of a label or nameplate and match them to products.No findings

    Why it is in this group

    • The description's first verb is "read": a word for reading.
    Description, as the server wrote it
    Read the brand, model and part numbers from a photo of a label or nameplate and match them to products. Matches are returned as candidates, with what was read. The photo isn't stored.

    Annotations the server declares

    • title: Read a model number from a photo
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
  • list_coverageWhich product categories and models are in the compatibility graph, with counts.No findings

    Why it is in this group

    • The name "list_coverage" says "list": a word for reading.
    Description, as the server wrote it
    Which product categories and models are in the compatibility graph, with counts. Pass a category to list its models. Covers anything that has to fit, plug in, mount, run on or charge with something someone owns. Verified catalog (specs checked against cited manufacturer sources): computers & consoles (RAM, M.2 SSDs, USB-C chargers), phones/tablets/watches (USB-C PD, MagSafe, Qi2, watch bands), cameras (lens mounts, adapters, batteries, memory cards), cordless power tools (battery platforms), printers (ink, toner, drums), appliances (refrigerator water and air filters, installation fit), vacuums (bags, filters, batteries, robot-vacuum parts), air quality (purifier filters, HVAC media, humidifier pads), e-bikes (batteries and chargers by drive system), smart home (Matter, Thread, Zigbee, hubs, bulb bases), PC building (CPU sockets, cooler mounts, memory, clearances, power), cars & EV charging (tire sizes by trim, NACS/J1772/CCS1 and approved adapters, home chargers; a starter set of models) and TVs, consoles & streaming (VESA mounts, weight and screen size, console generations, app platforms). Products outside the catalog in any category are read by AI in terms of the same standards and returned as unverified.

    Annotations the server declares

    • title: List coverage
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • list_standardsEvery compatibility standard family (with reviewed values), the open formats used for new values, and the numeric limit keys.No findings

    Why it is in this group

    • The name "list_standards" says "list": a word for reading.
    Description, as the server wrote it
    Every compatibility standard family (with reviewed values), the open formats used for new values, and the numeric limit keys. How Tethered Trust represents physical connections, dimensional fit, vehicles, software and services.

    Annotations the server declares

    • title: List the standards vocabulary
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • resolve_productLook up one product in the Tethered Trust graph by name or model number and get its structured specs, what it accepts (mounts, battery platforms, cartridges, protocols) and what it…No findings

    Why it is in this group

    • The name "resolve_product" says "resolve": a word for reading.
    Description, as the server wrote it
    Look up one product in the Tethered Trust graph by name or model number and get its structured specs, what it accepts (mounts, battery platforms, cartridges, protocols) and what it fits. If the text could mean several models, returns them all as candidates (ambiguous: true) with ambiguous: true.

    Annotations the server declares

    • title: Look up a product
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • validate_purchase_planCheck a whole purchase before recommending or ordering it: the setup the person owns (with current configuration) plus everything in the cart.No findings

    Why it is in this group

    • The name "validate_purchase_plan" says "validate": a word for reading.
    Description, as the server wrote it
    Check a whole purchase before recommending or ordering it: the setup the person owns (with current configuration) plus everything in the cart. Returns one decision (supported / conditional / incompatible / insufficient_evidence), a result per part, configuration limits across the plan (memory slots and capacity, M.2 slots), adapters or hubs still needed, substitutions for parts that won't work, the exact questions blocking a decision, evidence, and a signed receipt. Covers anything that has to fit, plug in, mount, run on or charge with something someone owns. Verified catalog (specs checked against cited manufacturer sources): computers & consoles (RAM, M.2 SSDs, USB-C chargers), phones/tablets/watches (USB-C PD, MagSafe, Qi2, watch bands), cameras (lens mounts, adapters, batteries, memory cards), cordless power tools (battery platforms), printers (ink, toner, drums), appliances (refrigerator water and air filters, installation fit), vacuums (bags, filters, batteries, robot-vacuum parts), air quality (purifier filters, HVAC media, humidifier pads), e-bikes (batteries and chargers by drive system), smart home (Matter, Thread, Zigbee, hubs, bulb bases), PC building (CPU sockets, cooler mounts, memory, clearances, power), cars & EV charging (tire sizes by trim, NACS/J1772/CCS1 and approved adapters, home chargers; a starter set of models) and TVs, consoles & streaming (VESA mounts, weight and screen size, console generations, app platforms). Products outside the catalog in any category are read by AI in terms of the same standards and returned as unverified.

    Annotations the server declares

    • title: Validate a purchase plan
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true

This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.

Install

Pinned to version 0.12.0. Values in angle brackets are yours to fill in.

claude mcp add --transport http tethered-trust https://tetheredtrust.com/mcp

Run in a terminal.

Claude Code permissions

Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.

.claude/settings.json
{
  "permissions": {
    "allow": [
      "mcp__tethered-trust__list_coverage",
      "mcp__tethered-trust__list_standards",
      "mcp__tethered-trust__resolve_product",
      "mcp__tethered-trust__validate_purchase_plan",
      "mcp__tethered-trust__identify_from_photo",
      "mcp__tethered-trust__find_parts"
    ],
    "ask": [
      "mcp__tethered-trust__how_it_works",
      "mcp__tethered-trust__check_cart_before_checkout",
      "mcp__tethered-trust__enrich_catalog",
      "mcp__tethered-trust__identify_product",
      "mcp__tethered-trust__fix_purchase_plan",
      "mcp__tethered-trust__plan_upgrade",
      "mcp__tethered-trust__recheck_plan",
      "mcp__tethered-trust__check_batch",
      "mcp__tethered-trust__check_compatibility",
      "mcp__tethered-trust__check_fit",
      "mcp__tethered-trust__verify_receipt",
      "mcp__tethered-trust__report_outcome"
    ],
    "deny": []
  }
}

Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as tethered-trust. Review it before you use it.