{
  "skill_id": "trustlink",
  "name": "TrustLink",
  "evaluation": "free",
  "quality": "agent-decision-grade",
  "price_usd": 0.01,
  "price_label": "$0.01-$0.02 / call",
  "category": "Trust",
  "tier": "starter",
  "tags": [
    "trustlink",
    "xrpl",
    "phishing",
    "x402",
    "third-party",
    "metered",
    "mike-mingucci",
    "pricing:per_call",
    "base",
    "usdc",
    "depth:standard"
  ],
  "listing_kind": "external_metered",
  "seller": {
    "name": "Mike Mingucci",
    "brand": "TrustLink",
    "role": "third_party",
    "first_third_party_listing": true
  },
  "summary": "TrustLink by Mike Mingucci: live XRPL link, token, and wallet verification API. Metered USDC on Base via x402 at https://trust.terramike.com ($0.01-$0.02/call). Free community radar at GET /v1/radar. First third-party listing.",
  "when_to_use": [
    "An agent must check an XRPL URL, handle, token issuer, or wallet before acting",
    "You need a per-call x402 quote instead of a sealed skill-pack unlock",
    "You want the free community radar or registry stats before paying",
    "You are buying the first third-party metered listing on lvl X, sold by Mike Mingucci / TrustLink"
  ],
  "outline": [
    "Read the free outline, then GET https://trust.terramike.com/v1/radar and GET /v1/stats (no payment)",
    "GET /v1/lookup and GET /v1/entry/{id} — $0.01 — verified link registry search and one full entry",
    "GET or POST /v1/check — $0.02 — phishing verdict, risk label, and scam-playbook findings",
    "GET /v1/community and GET /v1/community/check — $0.01 — community profile and roster membership status",
    "GET /v1/token?issuer= — $0.02 — token trust for an XRPL issuer; GET /v1/wallet?address= — $0.01 — wallet label",
    "Settle each paid call with x402 v2 exact USDC on Base (eip155:8453) to 0x884e7c210c689052023a550a7c6d25cc7d4741ab",
    "Safety guard: inputs that look like a seed phrase or private key are rejected before paid processing",
    "Disclaimer on every response: phishing defense, not endorsement"
  ],
  "capabilities": [
    "Link registry phishing check: known-good, known-bad, suspicious lookalike, unknown URL on a known domain, or unknown",
    "Token trust for an XRPL issuer address (currency, project, links, verification, notes)",
    "Wallet labels (project, exchange, or person) with verification status — labels are reports, not endorsements",
    "Community profile and membership check (confirmed, not met, unknown, stale, or disputed)",
    "Free community radar and free registry stats",
    "Per-call x402 v2 metering in USDC on Base, no subscription and no API key"
  ],
  "endpoints": [
    {
      "method": "GET",
      "path": "/v1/lookup",
      "price_usd": 0.01,
      "summary": "Search the verified link registry. Up to 10 ranked matches, each with verification confidence, verified date, method, and trust anchors. Optional category and confidence filters."
    },
    {
      "method": "GET",
      "path": "/v1/entry/{id}",
      "price_usd": 0.01,
      "summary": "One full registry entry by id: canonical URL, confidence, verified date, verification method, notes, and trust anchors."
    },
    {
      "method": "GET",
      "path": "/v1/check",
      "price_usd": 0.02,
      "summary": "Phishing check on a URL: verdict (known-good / known-bad / suspicious-lookalike / unknown-url-on-known-domain / unknown), risk level and label (SAFE-ISH / CAUTION / DANGER), and coded findings."
    },
    {
      "method": "POST",
      "path": "/v1/check",
      "price_usd": 0.02,
      "summary": "Same check with typed input — url, handle, token, or wallet (chain required for token and wallet) — returning verdict plus identity, risk, and check status."
    },
    {
      "method": "GET",
      "path": "/v1/community",
      "price_usd": 0.01,
      "summary": "Community profile from the curated registry: name, kind, chains, links, member count, verification, and last-confirmed date. The member list itself is not returned."
    },
    {
      "method": "GET",
      "path": "/v1/community/check",
      "price_usd": 0.01,
      "summary": "Membership check against the curated roster: status (confirmed / not_met / unknown / stale / disputed), relationship type, and evidence."
    },
    {
      "method": "GET",
      "path": "/v1/token",
      "price_usd": 0.02,
      "summary": "Token trust for an XRPL issuer address: currency, project, links, verification (curator-identified / unverified-association / unknown), and notes — or an explicit unknown result."
    },
    {
      "method": "GET",
      "path": "/v1/wallet",
      "price_usd": 0.01,
      "summary": "Wallet label for an XRPL address: label, kind (exchange / project / person / unknown), verification, and notes — or an explicit unknown result."
    },
    {
      "method": "GET",
      "path": "/v1/radar",
      "price_usd": 0,
      "free": true,
      "summary": "Free community radar: events, XRPL amendment voting status in plain English, and ongoing projects. The shop window for the paid API."
    },
    {
      "method": "GET",
      "path": "/v1/stats",
      "price_usd": 0,
      "free": true,
      "summary": "Free registry stats: entry count, confidence and category breakdown, dataset version."
    }
  ],
  "service": {
    "url": "https://trust.terramike.com",
    "x402": "https://trust.terramike.com/.well-known/x402",
    "openapi": "https://trust.terramike.com/openapi.json"
  },
  "settlement": {
    "mode": "upstream_x402_exact",
    "protocol": "x402",
    "x402_version": 2,
    "scheme": "exact",
    "network": "base",
    "network_caip2": "eip155:8453",
    "asset": "USDC",
    "asset_contract": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
    "pay_to": "0x884e7c210c689052023a550a7c6d25cc7d4741ab",
    "status": "live_upstream",
    "catalog_settles": false,
    "note": "Each paid call settles on https://trust.terramike.com to this wallet (the wallet that already receives the service's live x402 settlements). The catalog quote uses the same payTo. lvl does not take custody of the call and does not substitute the house treasury."
  },
  "commercial": {
    "listing_fee_usd": 0,
    "listing_fee_note": "First third-party listing: no listing fee.",
    "revenue_split": {
      "seller_bps": 8500,
      "platform_bps": 1500,
      "seller_label": "Mike Mingucci / TrustLink",
      "platform_label": "lvl X",
      "applies_to": "paid calls through the catalog"
    },
    "payout": {
      "cadence": "monthly",
      "asset": "USDC",
      "network": "base",
      "network_caip2": "eip155:8453",
      "pay_to": "0x884e7c210c689052023a550a7c6d25cc7d4741ab",
      "minimum_usd": 25,
      "minimum_policy": "rolling_forward"
    },
    "split_execution": "recorded_not_automated",
    "split_note": "85% seller / 15% lvl X is the agreed catalog split. Per-call x402 still settles in full to the seller wallet on the live service. Monthly USDC payout on Base to that wallet ($25 minimum, rolling forward) is not executed by this listing. No on-chain skim of the exact-scheme transfer."
  },
  "proof": {
    "schema": "lvl-listing-live-proof-v1",
    "live_url": "https://trust.terramike.com",
    "x402_discovery": "https://trust.terramike.com/.well-known/x402",
    "openapi": "https://trust.terramike.com/openapi.json",
    "paid_test_call_receipt": null,
    "status": "live_url_only",
    "needed": "One successful paid test-call receipt: a settled x402 payment to 0x884e7c210c689052023a550a7c6d25cc7d4741ab for a paid TrustLink endpoint, plus the response it unlocked. This field stays null until that receipt exists."
  },
  "decision_criteria": [
    "You need this when: An agent must check an XRPL URL, handle, token issuer, or wallet before acting",
    "You get capability: Link registry phishing check: known-good, known-bad, suspicious lookalike, unknown URL on a known domain, or unknown",
    "Budget fits: paid calls are $0.01 to $0.02 USDC on Base, not a sealed-pack unlock",
    "Free radar and stats are available before any paid call",
    "Settlement is the seller wallet on the live service"
  ],
  "sealed_after_pay": [
    "No sealed pack. The paid response is the live API body from https://trust.terramike.com"
  ],
  "challenge": "https://lvlltd.com/api/pay?skill=trustlink",
  "sample": "https://lvlltd.com/skills/trustlink/sample.md",
  "live": "https://trust.terramike.com",
  "free_radar": "https://trust.terramike.com/v1/radar",
  "free_stats": "https://trust.terramike.com/v1/stats",
  "proof_url": "https://lvlltd.com/api/proof",
  "standards": [
    "x402"
  ],
  "buy_agent": [
    "GET /skills/trustlink/outline.json",
    "GET /api/pay?skill=trustlink",
    "GET https://trust.terramike.com/v1/radar",
    "Settle the live service x402 challenge in USDC on Base to the seller payTo",
    "POST /api/mcp tools/call paid_api_call {\"skill_id\":\"trustlink\"}"
  ],
  "mcp": {
    "endpoint": "https://lvlltd.com/api/mcp",
    "tool": "paid_api_call",
    "arguments": {
      "skill_id": "trustlink"
    }
  }
}
