TWZRD Agent Intelligence
REMOTE · INTEL.TWZRD.XYZ · 2 COMPONENTS
Pre-spend trust for AI agents that buy: check x402 services and product listings before paying.
Available components
Last scanned (3 hours ago)
Scores higher than 84% of remote servers
Reachable. Last reached 5 Nov 2026.
Category Finance and Payments
Recent critical change
Authorization (2 Nov 2026). See the changelog before you install this server.
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 Security66
- The endpoint's TLS certificate is valid, in date, and uses a strong key. View diagnostics → Pass
- Authorisation check failed: no authorisation is required to call this server, and it exposes a tool marked destructive (evaluate_x402_resource). See how to fix → View diagnostics → Fail
- HTTPS is enforced; there's no plaintext access path. View diagnostics → Pass
- The HSTS (Strict-Transport-Security) header is present. View diagnostics → Pass
- DNSSEC is configured correctly; the domain's records validate against the full chain to the root. View diagnostics → Pass
Transport & Reachability100
- Verified streamable-http transport via a live MCP handshake. View diagnostics → Pass
Schema Quality & AI Usability76
- 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
- AI-judged instruction clarity (excellent).Pass
- Context-footprint check failed: tool/resource definitions use about 9088 tokens (~275/item across 33 items; 28 tools + 5 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 Management94
- Stability check failed: schema churn in the 30 days we've observed: 0 tool removals, 3 breaking changes, 0 auth/transport breaks, 0 additions. See how to fix → Fail
Tool Coverage100
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 100% of tool parameters carry a description.Pass
- 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 30 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
- Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
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.
- 4 Nov 26 +5
- HTTPS: fail → pass ▲ security
- 2 Nov 26 +56
- Authorization: unverified → fail ▼ critical
- HTTPS: unverified → fail ▼ security
- Stability: unverified → fail ▼ security
- Injection markers: unverified → pass ▲ security
- Transport: fail → pass ▲ security
- HSTS header: fail → pass ▲ security
- Endpoint reachability: not serving MCP → reachable ▲ functional
- Tool coverage: unverified → 100 ▲ functional
- MCP protocol: unverified → pass ▲ functional
- Schema quality: unverified → 100 ▲ functional
- 1 Nov 26 −57
- Endpoint reachability: reachable → not serving MCP ▼ security
- HTTPS: fail → unverified ▼ security
- Tool safety: pass → unverified ▼ security
- Authorization: fail → unverified ▼ security
- Stability: fail → unverified ▼ security
- Transport: pass → fail ▼ security
- HSTS header: pass → fail ▼ security
- Schema quality: 100 → unverified ▼ functional
- Capabilities: pass → unverified ▼ functional
- Tool coverage: 100 → unverified ▼ functional
- 30 Oct 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 94 to 95.
- 26 Oct 26 0
- The server rewrote its instructions, which are the text every model session reads security
- 21 Oct 26 0
- Tool “get_shopping_check” rewrote its description, which is the text the model reads security
- Tool “get_merchant_card” rewrote its description, which is the text the model reads security
- Tool “verify_root_inputs” rewrote its description, which is the text the model reads security
- Tool “twzrd_demo_gate” rewrote its description, which is the text the model reads security
- Tool “is_wash_fleet” rewrote its description, which is the text the model reads security
- “check_listing” reworded the description of “declared_unit_price” cosmetic
- “verify_root_inputs” reworded the description of “resource_name” cosmetic
- “get_readiness_card_tool” reworded the description of “seller_wallet” cosmetic
- “get_provider_reputation” reworded the description of “merchant” cosmetic
- “check_listing” reworded the description of “product_url” cosmetic
- “verify_root_inputs” reworded the description of “seller_wallet” cosmetic
- “low_level_preflight” reworded the description of “seller_wallet” cosmetic
- 20 Oct 26 0
- The server rewrote its instructions, which are the text every model session reads security
- 17 Oct 26 0
- The server rewrote its instructions, which are the text every model session reads security
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 5 Nov 2026 · Probed https://intel.twzrd.xyz/mcp
TLS valid
Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .
| Subject | Issuer | Valid from | Valid until | Key | Signature | Serial |
|---|---|---|---|---|---|---|
| CN=twzrd.xyz | CN=WE1,O=Google Trust Services,C=US | 18 Sept 2026 | 17 Dec 2026 | ECDSA 256 | ECDSA-SHA256 | 3114753a172f7a7a0e01d20467579c3b |
| SANs: twzrd.xyz, *.twzrd.xyz | ||||||
| CN=WE1,O=Google Trust Services,C=US (CA) | CN=GTS Root R4,O=Google Trust Services LLC,C=US | 13 Dec 2023 | 20 Feb 2029 | ECDSA 256 | ECDSA-SHA384 | 7ff31977972c224a76155d13b6d685e3 |
| CN=GTS Root R4,O=Google Trust Services LLC,C=US (CA) | CN=GlobalSign Root CA,OU=Root CA,O=GlobalSign nv-sa,C=BE | 15 Nov 2023 | 28 Jan 2028 | ECDSA 384 | SHA256-RSA | 7fe530bf331343bedd821610493d8a1b |
Background: What to check on a remote MCP endpoint →
DNSSEC secure
Validation of intel.twzrd.xyz. — Secure
| Zone | DS | Keys | Algorithms | Outcome |
|---|---|---|---|---|
| . | trust_anchor | 20326, 38696 | 8, 8 | Verified |
| xyz. | present | 3599, 18130 | 8, 8 | Verified |
| twzrd.xyz. | present | 2371 | 13 | Verified |
| intel.twzrd.xyz. | Verified address RRset verified with the apex keys |
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 'none' |
| x-content-type-options | nosniff |
Background: How OAuth 2.1 works in the 2026 MCP spec →
Transports 2 probes
| Transport | URL | Outcome | Status | Location |
|---|---|---|---|---|
| streamable-http | https://intel.twzrd.xyz/mcp | Verified | 200 | |
| http (plaintext) | http://intel.twzrd.xyz/mcp | HTTPS enforced | 301 | https://intel.twzrd.xyz/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 →
check_listing ~391
Pre-spend check of one product against the published listing cards. Free, read-only. Returns unknown_seller when no published card covers the product (not a clean seller), expired when the card is past expires_at, check_failed when the card cannot be verified or the declared price is above the advertised one, and advertised when a current card matches. It never authorizes a payment: authorizes_spend is always false. needs_approval is true for every result except advertised, and also for an advertised card that advertises nothing, advertises no price, cannot check the declared price, or is declared below its advertised price (an unverified discount, including zero). It does not fetch the store page, open a checkout or move money.
| Name | Type | Req | Description |
|---|---|---|---|
| declared_unit_price | – | – | Optional unit price the seller is asking, in USD, as a number or text, e.g. 78, 78.00, $78 or 78 USD; another currency is invalid. Above the card's advertised price is refused (phantom_markup_detecte… |
| market | string | – | Optional subject market (e.g. US); must agree with the card when given. |
| merchant | string | – | Optional subject merchant; must agree with the card when given. |
| product | string | – | Optional subject product; must agree with the card when given. |
| product_url | string | – | The store product URL the agent is about to buy from. Matched against the published card's next_hop URL, ignoring scheme, host case, query, fragment and a trailing slash. Another host is unknown_sell… |
| variant | string | – | Optional subject variant (e.g. Ink); must agree with the card when given. |
| Name | Type | Req | Description |
|---|---|---|---|
| artifact_id | – | – | The matching card's artifact id; null when no card covers the candidate. |
| authorizes_spend | boolean | yes | Always false. advertised is current evidence, never permission to pay. |
| claims | array | – | The card's claims (name, value, state, reason). Unknown claims stay unknown. |
| digest | – | – | sha256 of the matching card's exact text (get_claim); null for unknown_seller. |
| expires_at | – | – | Earliest claim expiry on the matching card. |
| needs_approval | boolean | yes | True for every result except advertised, and for an advertised card that advertises nothing, advertises no price, cannot check the declared price, or is declared below its advertised price: a human a… |
| price_check | – | – | verified | discount_unverified | unverified | absent | above_advertised | invalid, when a price was declared or checked. |
| reason | string | yes | Why: e.g. no_card_for_product_url, expired_claim, phantom_markup_detected, current_card. |
| result | string | yes | unknown_seller | expired | check_failed | advertised. |
No examples provided.
compare_wallets ~112
Free discovery: side-by-side intel for two wallets (e.g. choosing between two candidate providers). Returns both full score objects and which ranks higher by the wash-discounted effective_score ("tie" on equal, null if a side is unavailable).
| Name | Type | Req | Description |
|---|---|---|---|
| wallet_a | string | yes | First wallet (Solana base58 or Base 0x) to compare. |
| wallet_b | string | yes | Second wallet (Solana base58 or Base 0x) to compare. |
| Name | Type | Req | Description |
|---|---|---|---|
| higher_effective_score | – | – | Wallet with the higher wash-discounted score, or "tie", or null if a side was unavailable. |
| wallet_a | – | – | Full score object for the first wallet. |
| wallet_b | – | – | Full score object for the second wallet. |
No examples provided.
evaluate_x402_resource ~538
One-shot x402 guard. Fetches resource_url, extracts the seller wallet from the 402 accepts array (prefers Solana network entries), runs TWZRD preflight, and returns a spending decision. Side effect: a live 402 observation (resource_url, payTo, price) is upserted into the service catalog when the catalog database is configured; this tool is not read-only. wash_flagged=true never soft-allows. Unlabeled leftover 0.05 / leftover=0 is not a unit price. Decision: "allow" -> proceed only under agent policy. Never when wash_flagged=true. "warn" -> proceed with caution up to the cap; first paid hop is teaser_url ($0.001 /quick). Optional V7 receipt_url is $0.05. "block" -> DO NOT PAY. Stop immediately. "unknown" -> is_x402 == False: no 402 challenge was issued at all, so nothing was evaluated -- this is NOT a trust verdict. A seller can trivially make this happen by returning a non-402 status to this probe while charging through a different path for a real caller. Never treat "unknown" as a green light; if the caller actually intends to pay this resource_url, that separate payment path needs its own evaluation. Hard-stops: wash_flagged=true never soft-allows (decision=block). price_usdc is a unit price only when price_kind=exact. Unlabeled leftover 0.05 / leftover=0 and scheme=upto leftover defaults are not a per-request price. Revenue path: when decision is "warn", fetch teaser_url first ($0.001 USDC to TWZRD, GET /v1/intel/quick/{seller}). Optional receipt_url is the $0.05 V7 signed credential.
| Name | Type | Req | Description |
|---|---|---|---|
| agent_intent | string | – | Natural-language description of what the agent intends to purchase. |
| method | string | – | HTTP method to use when probing the resource. Default: GET. |
| price_usdc | number | – | Caller-supplied exact unit price in USDC — overrides a 402 exact quote. Leave unset to use the 402-reported amount when price_kind=exact. Unlabeled leftover 0.05 / leftover=0 is not a unit price. |
| resource_url | string | yes | URL of the x402 resource to evaluate before paying. Will be fetched to extract 402 payment requirements. |
| Name | Type | Req | Description |
|---|---|---|---|
| decision | – | – | Spend decision: "allow" | "warn" | "block" | "unknown". wash_flagged=true never soft-allows — this field is block. "unknown" means is_x402 is False -- no 402 challenge was issued, so no trust evaluat… |
| error | – | – | Error or info message; present on non-402 and degraded paths. |
| is_x402 | – | – | True if the resource returned HTTP 402 with x402 payment requirements. |
| max_price_usdc | – | – | Advertised maximum USDC when price_kind is upto_cap. |
| price_kind | – | – | exact | upto_cap | unknown. upto_cap means price_usdc is not a unit price. |
| price_usdc | – | – | Quoted unit price in USDC from the 402 response. Null when the accept is scheme=upto / price_kind=upto_cap, or the figure is unlabeled leftover 0.05 / leftover=0 (not a unit price). |
| readiness_card | – | – | Full readiness card from the preflight evaluation. |
| receipt_url | – | – | Optional $0.05 V7 portable receipt URL. |
| receipt_usdc | – | – | Cost of the optional V7 receipt in USDC (0.05). |
| seller_wallet | – | – | Seller wallet extracted from the 402 accepts array (Solana preferred). |
| teaser_url | – | – | First paid hop: $0.001 score-only teaser URL. |
| trust_score | – | – | Composite trust signal, 0-100. |
| upsell_usdc | – | – | Cost of the first paid hop in USDC (0.001 teaser). |
| url | – | – | The evaluated resource URL. |
No examples provided.
get_claim ~140
Read the Vuori Kore Short listing-claim artifact (com.twzrd.shopping.listing_claims/1.1). Tool twin of the twzrd://claims/vuori-kore resource: what is claimed about this checkout, by whom, in what state, on what evidence. Verified on every read (publication signature, artifact digest, schema, evidence binding); a read that fails any check is refused, never served. `unknown` claims stay unknown. Each claim carries expires_at; after it, treat the claim as historical. Read-only; this never starts a payment or checkout.
Input schema present but exposes no named parameters.
| Name | Type | Req | Description |
|---|---|---|---|
| artifact_id | string | yes | Artifact id of the signed publication that was read. |
| digest | string | yes | sha256 of the exact bytes in `json`, as bound in the signed publication. |
| text | string | yes | The artifact or evidence bundle, byte-for-byte as the resource serves it. Parse it after checking `digest`. |
| uri | string | yes | The MCP resource this tool mirrors. |
No examples provided.
get_counterparties ~193
Free discovery (capped teaser): the top-N merchants a wallet actually pays, by event count, with per-edge tx_count / total_usdc / first+last timestamps. See WHO a counterparty transacts with before trusting it. The list is capped (default 10, max 25) and `capped`/`total_distinct_merchants` disclose how much is withheld; the FULL deduped payment graph and numeric edge weights are part of the paid intel surface (GET /v1/intel/trust/{wallet}). Fail-open.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | – | Max counterparties to return (default 10, hard cap 25 - this is a capped teaser). |
| wallet | string | yes | Payer Solana wallet public key (32-44 base58 chars) whose counterparties (merchants paid) to list. |
| Name | Type | Req | Description |
|---|---|---|---|
| capped | – | – | True if the full merchant set exceeds the returned list. |
| counterparties | – | – | Capped top-N merchants paid, each with tx_count, total_usdc, first_at, last_at. |
| data_available | – | – | False when the corpus/DB was unavailable. |
| error | – | – | Present only on the degraded path. |
| returned | – | – | Number of counterparties returned (<= limit). |
| teaser_note | – | – | States that the full deduped graph + edge weights are paid. |
| total_distinct_merchants | – | – | Total distinct merchants this payer has paid (full, uncapped). |
| total_events | – | – | Total observed payment events for this payer. |
| wallet | – | – | The payer wallet looked up. |
No examples provided.
get_evidence ~105
Read the evidence bundle behind the Vuori Kore Short listing claims. Tool twin of the twzrd://claims/vuori-kore/evidence resource: canonical_evidence/1 envelopes and capture records. A claim's evidence digest is the RFC 8785 SHA-256 of its envelope; recompute it to check. Verified with the artifact on every read and refused on any mismatch. Raw page bytes are not served. Read-only.
Input schema present but exposes no named parameters.
| Name | Type | Req | Description |
|---|---|---|---|
| artifact_id | string | yes | Artifact id of the signed publication that was read. |
| digest | string | yes | sha256 of the exact bytes in `json`, as bound in the signed publication. |
| text | string | yes | The artifact or evidence bundle, byte-for-byte as the resource serves it. Parse it after checking `digest`. |
| uri | string | yes | The MCP resource this tool mirrors. |
No examples provided.
get_facilitator_footprint ~127
Free discovery: which x402 facilitators a payer has settled through, and how many. unique_facilitators = 1 is a thin/captive agent (locked to one rail); breadth across facilitators indicates a more established cross-rail agent. Returns the facilitator_ids list plus tx/merchant context. Fail-open: a DB gap returns data_available=false rather than erroring.
| Name | Type | Req | Description |
|---|---|---|---|
| wallet | string | yes | Solana wallet public key (32-44 base58 chars) to look up its x402 facilitator footprint. |
| Name | Type | Req | Description |
|---|---|---|---|
| data_available | – | – | False when the corpus/DB was unavailable. |
| error | – | – | Present only on the degraded path. |
| facilitator_ids | – | – | The facilitator identifiers observed for this payer. |
| first_seen | – | – | ISO timestamp of first observed activity. |
| found | – | – | True if the wallet has observed corpus activity. |
| last_seen | – | – | ISO timestamp of last observed activity. |
| tx_count | – | – | Total observed paid calls. |
| unique_facilitators | – | – | Distinct x402 facilitators this payer has settled through (1 = thin/captive). |
| unique_merchants | – | – | Distinct merchants paid. |
| wallet | – | – | The wallet looked up. |
No examples provided.
get_merchant_card ~405
Free merchant card: observed inbound payment-graph quality around a Solana or Base receive wallet. Dual input (PR-3): pass ``wallet`` and/or ``resource_id``. Resource resolves via the first-party registry (TWZRD seed) to a pay_to, then the same graph card. Does NOT claim service quality (resource_listing_only / catalog_listing_only). HTTP twin: GET /v1/intel/merchant_card/{wallet_or_resource_id}. Compact (default) includes observed_at, stale, corpus_complete_day, corpus_age_days. Catalog services stay behind full=true. wash_flagged is tri-state: true (flagged) | false (evaluated clean) | null (never evaluated - NOT clean). wash_flagged=true never soft-allows (next_action.decision=refuse; no warn/allow/quick). Unlabeled leftover 0.05 / leftover=0 is not a unit price; cheapest_listed_price_usdc omits leftover and upto_cap amounts. Route on next_action.decision (refuse | insufficient_evidence | no_negative_signal); the card is down-only and never returns allow. `reason` carries the specific finding (e.g. a soft wash risk collapsed into "refuse", or a corpus outage collapsed into "insufficient_evidence") when the 3-value decision alone is not enough context.
| Name | Type | Req | Description |
|---|---|---|---|
| full | boolean | – | If true, include catalog services. Default is the compact decision surface. |
| resource_id | – | – | Optional registry resource_id (HTTP path template or mcp:tool). Resolved to merchant_wallet via PR-3 seed; claim resource_listing_only. |
| wallet | – | – | Receive wallet (x402 pay_to / merchant pubkey). Observed payment-graph card only — not a business, demand, or identity attestation. |
Structured output declared, but exposes no named fields.
No examples provided.
get_poec_score ~429
Free preview: PoEC v0 (Proof of Economic Contribution) for a payer wallet, computed from the same observed x402 snapshot score_wallet_for_intel returns. poec_score = log10(1 + observed USDC sent) x success_quality x diversity x wash_cleanliness, behind hard floors (>=5 paid calls, >=3 distinct counterparties, wash_factor >= 0.5, not single-counterparty, wash_flag clean). Any failed floor, or an unobservable corpus, scores 0.0 with floors_passed=false - the floors fail closed, never open. wash_factor is a cleanliness multiplier (1.0 = clean) and is never inverted. Honesty contract: `claimable` is ALWAYS false. Volume here is corpus-observed, not a payout unlock. `success_quality` comes from the payer join onto signed `receipt_settlement_leaves` (0211); if that join is unobservable, `success_rate` stays in evidence_gaps and the score reads 0.0. What this surface already shows honestly is the floor filter (eligible_v0) and every component the score is built from. Self-reported settlements go through submit_contribution_claims. Base (EVM) 0x wallets are scored from the relayer-attributed x402_base_daily rollup (90d) with the same shape, but no wash/sybil graph exists for Base payers yet, so their wash_flag reads "unknown" (never "clean"), the wash floor stays closed, and poec_score stays 0.0 regardless of real volume. A wallet the corpus could not observe at all returns `error` set; on that path any real observed Base volume is attached under `base_observed`.
| Name | Type | Req | Description |
|---|---|---|---|
| wallet | string | yes | Payer wallet (Solana base58 or Base 0x) to score for Proof of Economic Contribution. |
| Name | Type | Req | Description |
|---|---|---|---|
| as_of | – | – | ISO timestamp the snapshot was scored at. |
| base_observed | – | – | Present only for a Base (EVM) wallet TWZRD has independently observed paid calls from: real paid_calls/total_usdc/distinct_counterparties (90d, high-confidence, x402_base_daily). Informational only -… |
| claimable | – | – | Always false: volume is corpus-observed, not facilitator-attested or joined to a settlement leaf. |
| components | – | – | observed_volume, success_quality, diversity, hop_multiplier, wash_cleanliness, solana_boost. |
| distinct_counterparties | – | – | Distinct counterparties observed. |
| eligible_v0 | – | – | Floors passed and observed volume > 0. A floor filter, not an unlock. |
| error | – | – | Present only when the wallet could not be observed at all (e.g. not a valid Solana pubkey, upstream unavailable) -- distinguishes 'not scoreable' from a genuinely inactive wallet, both of which other… |
| evidence_gaps | – | – | Inputs with no live source. Empty plus success_rate 0.0 means the 0211 join ran and this wallet has no signed settlement leaf — not a missing join. |
| floors_passed | – | – | All hard floors held: >=5 paid calls, >=3 distinct counterparties, wash_factor >= 0.5, not single-counterparty, wash_flag clean, corpus observable. |
| paid_calls | – | – | Observed x402 paid calls sent. |
| poec_score | – | – | log10(1 + observed USDC sent) x success_quality x diversity x wash_cleanliness; 0.0 when any floor fails. |
| score_version | – | – | PoEC contract version, e.g. "poec_v0". |
| source_effective_score | – | – | effective_score of the underlying snapshot. |
| source_intel_score | – | – | intel_score of the underlying snapshot. |
| success_rate | – | – | Signed receipt_settlement_leaves for this payer / observed paid_calls, capped at 1.0. None = join unobservable; 0.0 = join ran, zero attested leaves. Never implies claimable. |
| wallet | – | – | The scored payer wallet. |
| wash_flag | – | – | "clean" | "single_counterparty" | "unknown", from the intel snapshot. |
No examples provided.
get_provider_reputation ~305
Free discovery: corpus-backed SELLER reputation for a merchant/provider wallet. Answers "is this provider organic, narrow, or a wash fleet?" from the merchant's inbound payment graph over the last 90 days: unique payers, repeat-payer %, heavy-fleet revenue concentration, captive-payer % (onboarding-sink proxy), and a scripted-fleet uniformity signal, and top_payer_tx_pct (captive concentration). Returns wash_label + reputation tier + wash_flagged (tri-state: true | false | null; null = never evaluated, not clean). Complements score_wallet_for_intel (payer side) with the seller side. wash_flagged=true never soft-allows (buyer refuse; preflight block). Fail-open: a DB gap returns wash_label/tier "unknown" AND wash_flagged=null (plus wash_confidence) - an unevaluated verdict, never a clean one. This is the free seller signal. First paid hop is GET /v1/intel/quick/{wallet} (0.001 USDC). Optional V7 renorm + signed receipt is GET /v1/intel/trust/{wallet} (0.05 USDC).
| Name | Type | Req | Description |
|---|---|---|---|
| merchant | string | yes | Seller/merchant pay_to address to score on inbound corpus reputation: a Solana base58 wallet or a Base 0x address. |
| Name | Type | Req | Description |
|---|---|---|---|
| avg_tx_per_payer | – | – | Average inbound tx per payer. |
| captive_payer_pct | – | – | Percent of payers who pay ONLY this merchant (captive/onboarding-sink proxy). |
| heavy_fleet_payers | – | – | Count of heavy single-counterparty fleet payers. |
| heavy_fleet_revenue_pct | – | – | Percent of revenue from heavy-fleet payers. |
| heavy_fleet_tx_cv | – | – | Tx-count uniformity across heavy-fleet payers; near-zero = scripted sybil fleet. |
| merchant | – | – | The seller/merchant Solana wallet looked up. |
| provider_reputation_tier | – | – | Tier: "tier_a_provider" | "tier_b_provider" | "tier_tail" | "tier_wash_demo" | "unknown". |
| reason | – | – | Degraded-path reason (e.g. db_unavailable, no_corpus_inbound). |
| repeat_payer_pct | – | – | Percent of payers who paid more than once. |
| score_version | – | – | provider_reputation_v1. |
| top_payer_tx_pct | – | – | Percent of inbound settles supplied by the single largest payer (captive concentration; >=90 with volume floor flags wash; null = not computed). |
| total_revenue_usd | – | – | Total inbound USDC revenue (90d). |
| total_tx | – | – | Total inbound paid calls (90d). |
| unique_payers | – | – | Distinct payers observed paying this merchant (90d). |
| wash_confidence | – | – | "full" when self+reciprocal+ring ran; "base_2cycle" when the Base 2-cycle overlay ran but the live 3-cycle ring query did not return (not a full screen); "partial_inbound_only" when the circular-flow… |
| wash_flagged | – | – | true = fleet/wash/captive/scripted-fleet signals tripped — never soft-allow (refuse / preflight block); false = evaluated and clean; null = never evaluated (unknown - do NOT coerce to false). |
| wash_label | – | – | Seller class: "provider_organic_broad" | "provider_mixed" | "provider_narrow_or_unknown" | "wash_shaped" | "fleet_dominated" | "unknown". |
No examples provided.
get_publication ~160
Read the signed publication record behind the current Vuori Kore Short claims. Tool twin of the twzrd://claims/vuori-kore/publication resource. Returns the Ed25519 publication record, the verify key and its sha256 fingerprint. Verify the signature over the signed message, then compare sha256 of each get_claim / get_evidence text with artifact_digest / evidence_digest. With the key fingerprint pinned from a second source (the published fingerprint in the connector packet), that check does not trust this server; without it, it shows only that the record and the served bytes agree. The signature admits bytes to the resource; it is not a merchant attestation. Read-only.
Input schema present but exposes no named parameters.
| Name | Type | Req | Description |
|---|---|---|---|
| artifact_id | string | yes | Artifact id named by the signed publication record. |
| digest | string | yes | sha256 of the exact bytes in `text` (the proof document itself). |
| text | string | yes | claim_publication_proof/1 JSON: the signed publication record, verify_key, key_fingerprint and the signed-message construction. |
| uri | string | yes | The MCP resource this tool mirrors. |
No examples provided.
get_readiness_card_tool ~796
PRIMARY free pre-spend gate (advisory). Pass seller_wallet OR resource_name. wash_flagged=true never soft-allows. Unlabeled leftover 0.05 / leftover=0 is not a unit price. When to use: before any x402 payment to a seller/resource. When not to use: after you already decided to refuse; use verify_receipt for signed receipts only. Pricing: free. Result is advisory (buyer policy still applies). Hard-stops: wash_flagged=true never soft-allows (decision=block / do_not_pay; no warn/allow/quick). Unlabeled leftover 0.05 / leftover=0 is not a unit price; read price_kind. Caller-supplied or scheme/price_kind=exact 0.05 stays a unit price. Decision semantics (top-level, no nesting via MCP): decision=block / recommended_action=do_not_pay -> DO NOT PAY. decision=warn / recommended_action=proceed_with_cap -> pay only up to maximum_recommended_spend_usdc. decision=allow / recommended_action=proceed_for_small_spend -> proceed under agent policy (no free-tier cap). next_action (enrollment handoff — do not stop after free card): next_step_type / payment_required / executable / command describe an optional next step. A host may use command only under its own policy. Never paste path templates (:pubkey / {pubkey}) as seller_wallet. Also returns reason_codes[], confidence, model_version, decision_envelope. No counterparty named (seller_wallet missing / a template / not a wallet, and no resource_name or resource_url): decision=block, trust_score null, score null, null_reason=no_subject, reason_codes NO_COUNTERPARTY (+ PLACEHOLDER_SELLER_WALLET), seller_wallet_rejected echoes what you sent. That is an input bug, not a seller verdict: fix the input and re-run. trust_score is a free heuristic, NOT the full corpus. Next: on allow/warn for material spend, next_action.command is the optional AgentCash paid-trust or AutoGate install string, then verify_receipt…
| Name | Type | Req | Description |
|---|---|---|---|
| agent_intent | string | – | Natural-language intent describing the planned paid action. |
| buyer_wallet | string | – | Buyer's Solana wallet public key used for spend-context checks. |
| marketplace_score | integer | – | Optional upstream marketplace trust score (0-100) to blend into preflight context. |
| price_usdc | number | – | Caller-supplied exact unit price in USDC. Leave unset unless you have an exact quote. Unlabeled leftover 0.05 / leftover=0 is not a unit price. |
| queried_pubkey | string | – | Consumer pubkey, echoed on output when provided (attribution only). |
| resource_name | string | – | Provider or resource label in a marketplace (for example marketplace:agent-name). Provide this OR seller_wallet. |
| resource_url | string | – | Canonical endpoint URL for the resource, if available. |
| seller_wallet | string | – | Seller payTo for the listing or endpoint: a Solana base58 wallet (32-44 chars) or a Base 0x address. Provide this OR resource_name. CRITICAL: never pass OpenAPI templates (:pubkey, {pubkey}, {seller_… |
| Name | Type | Req | Description |
|---|---|---|---|
| as_of | – | – | ISO-8601 of data_as_of_unix (same back-fill rule: can be card build time on a scored read). Null when the subject was never measured. |
| basis | – | – | Typed evidence entries {class, kind, source, observed_at, weight, ...}; observed_at is null with observed_at_null_reason on an honest-null card. |
| can_spend | – | – | Price-aware proceed flag (not 'true only on allow'). block → false; allow → true (unless known price exceeds free-tier ceiling); warn → true only when price_usdc is known and fits under recommended_c… |
| category | – | – | Resource category (e.g. defi, defi_intelligence). |
| caveats | – | – | Risk factors and the always-on trust_score_basis caveat. |
| corpus_age_days | – | – | Whole days since corpus_complete_day. Null when the ledger head is missing. |
| corpus_complete_day | – | – | Ledger head complete day (YYYY-MM-DD) from x402_ledger_head. Null when that row is missing. Not the 2026-07-09 copy floor. |
| corpus_complete_through_unix | – | – | Behavioral corpus coverage watermark, or null when none is plumbed. |
| data_as_of_unix | – | – | Seller last-activity unix when known. Null on unknown_subject / insufficient_signal / evaluation_failed (never wall clock there). On a scored read with no last-activity anchor it IS the card build ti… |
| decision | – | – | Spend decision: "allow" | "warn" | "block". wash_flagged=true never soft-allows — this field is block (no warn/allow/quick). |
| expires_at | – | – | ISO-8601 card validity end (an expired card is an absent card). |
| issued_at | – | – | ISO-8601 card issue time. |
| ledger_basis | – | – | Ledger head basis, for example exact or mixed_estimated. |
| ledger_exact_through | – | – | Last day of exact event capture on the ledger head. Later days may be estimates. |
| max_price_usdc | – | – | Advertised maximum USDC when price_kind is upto_cap. Not a unit price. |
| next_fixes | – | – | Actionable steps the provider can take to raise trust. |
| null_reason | – | – | Why score is null: "unknown_subject" | "insufficient_signal" | "evaluation_failed" | "no_subject" (no counterparty was named at all). Null when scored. |
| observed_at | – | – | ISO-8601 of the seller's last settle, else the ledger head day. Null when neither exists. Not card-build time. |
| paid_deep_dive | – | – | Optional Path A V7 receipt surface (/v1/intel/trust/{wallet}). |
| paid_price_usdc | – | – | Price of the optional V7 receipt in USDC (0.05). |
| paid_teaser | – | – | First paid hop: $0.001 score-only teaser (/v1/intel/quick/{wallet}). |
| paid_teaser_usdc | – | – | Price of the first paid hop in USDC (0.001). |
| price_kind | – | – | exact | upto_cap | unknown. upto_cap means price_usdc is not a unit price. |
| price_usdc | – | – | Quoted unit price in USDC. Null when price_kind is upto_cap or the figure is unlabeled leftover 0.05 / leftover=0 (scheme=upto leftover defaults, including stale 0.05, are not a unit price). |
| proof | – | – | Proof block: v5_receipt_upsell_available, has_v5_receipts, receipt_endpoint, known_seller_wallets, provider_reputation. |
| queried_pubkey | – | – | Consumer pubkey echoed when provided on input (attribution only; not a settle gate). |
| recheck_after_unix | – | – | UNIX timestamp after which this intel is stale. Advisory. On a paid V7 receipt it is leaf-bound, so an edit fails verification; on V5/V6 receipts it is outside the signed leaf and a holder can extend… |
| recheck_hint | – | – | One-line hint: re-verify via GET /v1/intel/trust/{pubkey}. Do not gate solely on recheck_after_unix (unsigned on V5/V6 receipts); use your own max_age_seconds. |
| resource_name | – | – | Resolved resource/provider label. |
| root_provenance | – | – | Legacy root metadata for the parked on-chain protocol's deposit/claim/settle resources only: latest_root_seq, dataset_hash (if known), leaf_version, verification_status, onchain_match (null = call ve… |
| score | – | – | Draft-02 score 0..1, or null when no evidence was measured (see null_reason). An assessor never fabricates this; the legacy trust_score keeps a cautious default for old consumers. |
| score_decay_model | – | – | step:<=7d=1.0,<=30d=0.8,<=90d=0.5,>90d=0.25 (the recency decay on paid scores). Advisory. Leaf-bound on a paid V7 receipt; unsigned on V5/V6 receipts. |
| seller_wallet | – | – | Seller Solana wallet, if known. |
| seller_wallet_rejected | – | – | Set when the seller_wallet you sent was discarded: {"value", "reason": "template_placeholder" | "not_a_wallet_address"}. With no resource_name/resource_url the card is decision=block, null_reason=no_… |
| stale | – | – | True when the seller's last settle is older than 7 days, or when there is no settle and the ledger head is older than 7 days or missing. Warning only; not a wash refuse. |
| staleness_days | – | – | Recommended re-check cadence in days (7 high-quality, 3 partial/stale). Advisory. Leaf-bound on a paid V7 receipt; unsigned on V5/V6 receipts. |
| trust_score | – | – | Composite trust signal, 0-100. |
| trust_score_basis | – | – | Provenance of the score; ALWAYS the free heuristic, never the paid corpus model. |
| version | – | – | Card schema version, e.g. readiness_card_v1. |
No examples provided.
get_shopping_check ~107
Read the free Agent Shopping Check for Vuori Kore Short, Ink, US. Same report as https://twzrd.xyz/shopping-check/vuori-kore/: product context, advertised claims with exact sources and observation times, unverified purchase completion and other gaps, and editorial merchant fixes for the reviewed gaps still open. Built from the verified signed publication on every read. Expired observations are historical. Never pays or starts checkout.
Input schema present but exposes no named parameters.
Structured output declared, but exposes no named fields.
No examples provided.
get_solana_market_status ~133
Health probe for the Solana Market API data backend. Call this to gate or degrade gracefully BEFORE the other get_solana_market_* tools: it does a short-timeout hit on the data service and reports whether it is reachable, so an agent can tell "market has no data" from "service is down" without failing a real query. Free discovery tool. When the market data service exposes /status, the response includes prod_key_configured, data_first_available, and an actionable note describing what to configure for full on-chain visibility.
Input schema present but exposes no named parameters.
| Name | Type | Req | Description |
|---|---|---|---|
| available | – | – | True if the Solana Market data service responded. |
| base_url_configured | – | – | Whether the market data-service base URL is explicitly configured. |
| detail | – | – | Human-readable status or error detail. |
| market_velocity | – | – | Full velocity payload when present (rank/trend/score/last_updated). Populated into ReadinessCard.root_provenance.market_velocity for WZRD protocol resources. |
| score | – | – | Normalized velocity score 0.0-1.0. |
| trend | – | – | Velocity trend: rising | stable | declining. |
| velocity_rank | – | – | Velocity rank from market signals (higher better). |
No examples provided.
get_top_intel_agents ~213
Leaderboard of observed payer wallets in the x402 settlement graph, each with its intel score. This is behavioral corpus research, not identity proof or evidence that the wallet is a TWZRD customer. Ranks by the wash-discounted effective_score (single-counterparty fleets are demoted, not hidden) with a deterministic tiebreaker. Set min_paid_calls to suppress one-shot wallets and max_days_since_last to suppress dormant ones.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | – | Maximum number of ranked payer wallets to return (default 10). |
| max_days_since_last | number | – | Only include wallets active within this many days (default null = no recency filter). Use e.g. 14 to exclude dormant or historical payers. |
| min_paid_calls | integer | – | Filter out wallets with fewer than this many observed paid calls (default 0 = no filter). Use to get credible *active* counterparties, not a raw dump. |
| Name | Type | Req | Description |
|---|---|---|---|
| agents | – | – | Ranked agent rows, each with intel_score, effective_score, wash fields, and rank. |
| count | – | – | Number of rows returned. |
| data_available | – | – | False when the corpus/DB was unavailable. |
| error | – | – | Present only on the degraded path. |
| score_model | – | – | Self-describing scoring contract. |
| score_version | – | – | Scoring contract version. |
No examples provided.
get_x402_directory ~248
Wash overlay on ingested PayAI/CDP/Agentic listings (PayAI not_indexed). Prefer HTTP GET /v1/intel/resources for the resource join SOT (callable URL + discovery claim listed|live_402 + settlement reputation on pay_to). That surface is HTTP-only. Use this tool when you need the ingested listing overlay indexed by payTo. Not GET /v1/intel/bazaar/offers (TWZRD Bazaar catalog) and not 402 extensions.bazaar. Solana wash overlay is the only wash graph. Base listings additionally carry high-confidence EIP-3009 corpus membership from x402_base_daily; they remain wash_unknown. Polygon listings carry wash_unknown. Query params — flagged_only, limit, source — mirror GET /v1/intel/x402-directory.
| Name | Type | Req | Description |
|---|---|---|---|
| flagged_only | boolean | – | Return only wash-flagged listings. |
| limit | integer | – | Max directory rows to return (1-500). |
| source | – | – | Source filter: payai_bazaar, cdp_bazaar, agentic_market, or None for all. |
Structured output declared, but exposes no named fields.
No examples provided.
is_wash_fleet ~261
Free discovery: cheap circular-flow (wash) check for a payer wallet. Returns the CATEGORICAL classification (clean / self_pay / reciprocal / self+reciprocal), an is_circular bool, and the observed event counts + distinct_merchants from the wallet's corpus edges. Use as a fast Sybil/wash gate before trusting a counterparty. Accepts a Solana public key or a Base/EVM address. On Base the signal reads the high-confidence x402 rollup only, and the 3-cycle ring runs as a live query instead of the Solana precomputed matview. Read ring_evaluated: when it is false, ring_events=0 means NOT EVALUATED, never "no rings observed". Fail-open: a DB gap returns classification "unknown". The numeric wash discount (wash_factor / wash_ratio) and the full renormalized model stay paid — they are NOT returned here.
| Name | Type | Req | Description |
|---|---|---|---|
| wallet | string | yes | Wallet to check for circular-flow / wash behavior: a Solana public key (32-44 base58 chars) or a Base/EVM address (0x + 40 hex). |
| Name | Type | Req | Description |
|---|---|---|---|
| chain | – | – | Which corpus answered: "solana" or "base". Base reads the high-confidence x402 rollup only. |
| classification | – | – | Circular-flow class: "clean" | "self_pay" | "reciprocal" | "self+reciprocal" | "unknown". |
| distinct_merchants | – | – | Distinct merchants this wallet paid. |
| error | – | – | Present only on the degraded path. |
| is_circular | – | – | True if any self-pay or reciprocal (2-cycle) flow was observed. |
| reason | – | – | Degraded-path reason, if any. |
| reciprocal_events | – | – | Events forming a 2-cycle (counterparty also pays this wallet). |
| ring_evaluated | – | – | True only when the ring axis actually ran for this wallet: the precomputed Solana ring aggregate was read, or the live Base 3-cycle query returned. False when the ring lookup failed or the Solana wal… |
| ring_events | – | – | Events forming a 3-cycle ring. Meaningless unless ring_evaluated is true: 0 with ring_evaluated false means NOT LOOKED FOR, not none found. |
| self_events | – | – | Events where the wallet paid itself. |
| total_events | – | – | Total observed payment events. |
| wallet | – | – | The wallet checked. |
No examples provided.
low_level_preflight ~370
Low-level preflight check. Returns a richer result object including paid_quick_endpoint ($0.001 first hop) and optional paid_trust_endpoint ($0.05 V7). wash_flagged=true never soft-allows. Unlabeled leftover 0.05 / leftover=0 is not a unit price. Prefer get_readiness_card_tool for most callers. Use this when you need max_spend_recommendation_usdc, full_report_hint, or the suggest_full_report flag. The embedded `readiness_card` carries the SAME full shape as get_readiness_card_tool (see the outputSchema). Hard-stops: wash_flagged=true never soft-allows (decision=block; no warn/allow/quick). Unlabeled leftover 0.05 / leftover=0 is not a unit price; read readiness_card.price_kind.
| Name | Type | Req | Description |
|---|---|---|---|
| agent_intent | string | – | What the agent intends to do with the purchased response or tool. |
| buyer_wallet | string | – | Buyer's Solana wallet public key; enables buyer-context evidence in scoring. |
| marketplace_score | integer | – | Optional marketplace-provided score (0-100) for blend-in scoring context. |
| price_usdc | number | – | Caller-supplied exact unit price in USDC. Leave unset unless you have an exact quote. Unlabeled leftover 0.05 / leftover=0 is not a unit price. |
| resource_name | string | – | Provider or listing identifier to evaluate before payment. |
| resource_url | string | – | Canonical endpoint URL for the resource, if available. |
| seller_wallet | string | – | Seller payTo (Solana base58 or Base 0x address) for reputation and spend checks. |
| Name | Type | Req | Description |
|---|---|---|---|
| decision | – | – | Spend decision: "allow" | "warn" | "block". wash_flagged=true never soft-allows — this field is block (no warn/allow/quick). |
| evidence | – | – | Evidence bullets behind the decision. |
| full_report_hint | – | – | How to fetch the paid full report. |
| max_spend_recommendation_usdc | – | – | Suggested per-call spend ceiling for this decision. |
| paid_quick_endpoint | – | – | First paid hop: $0.001 score-only teaser, if seller identity is known. |
| paid_trust_endpoint | – | – | Optional $0.05 V7 receipt path, if seller identity is known. |
| readiness_card | – | – | The full ReadinessCard shape (same keys as get_readiness_card_tool). |
| reason | – | – | Decision-consistent one-line rationale. |
| suggest_full_report | – | – | Whether to upsell the paid V7 receipt report. |
| trust_score | – | – | Composite trust signal, 0-100. |
No examples provided.
score_wallet_for_intel ~412
Free discovery: PAYER-side 0-100 intel score for a wallet from the x402 payments it SENT (paid calls, distinct counterparties, volume, recency). Not a seller check: to vet a seller/payTo before paying, use get_readiness_card_tool (gate) or get_provider_reputation / get_merchant_card (seller reputation). A pure seller scores 0 here by construction and the response says so in seller_side_hint. A Base 0x wallet is scored from the relayer-attributed x402_base_daily rollup (90d) with the same shape; no Base wash graph exists yet, so its wash_flag is "unknown" unless single-counterparty. Uses a simple transparent heuristic (volume log + breadth + spend log + recency decay) — the exact formula is returned inline as `score_model`. Returns intel_score, the wash-discounted effective_score + wash_flag/wash_factor (cheap Sybil signal), counts, component breakdown, and a data_available flag. Malformed pubkeys are rejected cleanly; the failure path returns the same shape as success. Sourced from the cross-facilitator corpus via the public Rust HTTP endpoint GET /v1/agents/{wallet}/x402 (backed by the x402_solana_payer_agg matview). First paid hop is the score-only teaser GET /v1/intel/quick/{wallet} (0.001 USDC). Optional V7 signed receipt (intel_renorm_v1_1: score_raw, confidence, breadth_factor, wash_factor) is GET /v1/intel/trust/{wallet} (0.05 USDC).
| Name | Type | Req | Description |
|---|---|---|---|
| wallet | string | yes | Wallet to score: a Solana base58 pubkey or a Base 0x address, using x402 payment-history intelligence. |
| Name | Type | Req | Description |
|---|---|---|---|
| basis | – | – | Human-readable basis line. |
| chain | – | – | "base" when scored from the Base corpus; null on the Solana path. |
| data_available | – | – | False when the corpus could not be observed (vs genuinely inactive). |
| distinct_counterparties | – | – | Distinct counterparties (merchants paid + payers received from). |
| effective_score | – | – | Wash-discounted score (single-counterparty fleets demoted). |
| error | – | – | Present only on the degraded path. |
| first_seen | – | – | ISO timestamp of first observed activity. |
| intel_score | – | – | Raw activity-reputation score, 0-100. |
| is_single_counterparty | – | – | True if all payments went to one counterparty (Sybil signal). |
| last_seen | – | – | ISO timestamp of last observed activity. |
| network | – | – | CAIP-2 network of the corpus used, e.g. "eip155:8453"; null on the Solana path. |
| paid_calls | – | – | Observed x402 paid calls SENT (payer side). |
| payments_received | – | – | Observed x402 paid calls RECEIVED (merchant side). |
| role | – | – | Observed role: "payer" | "merchant" | "both" | "unknown". |
| score_components | – | – | Per-component breakdown: volume, breadth, spend, recency_factor. |
| score_model | – | – | Self-describing scoring contract (scale, formula, component maxes, recency tiers). |
| score_version | – | – | Scoring contract version. |
| seller_side_hint | – | – | Set when this wallet reads as a SELLER (role merchant, or payments received with no paid calls sent). intel_score here is the PAYER-side score and is 0 for a pure seller by construction; it is not a… |
| total_usdc | – | – | Total observed USDC sent. |
| total_usdc_received | – | – | Total observed USDC received (merchant side). |
| wallet | – | – | The scored wallet: Solana base58 pubkey or Base 0x address (lowercased). |
| wash_coverage | – | – | Which wash signals exist for this chain. Base: single-counterparty only, so wash_flag is "unknown" (never "clean") for multi-counterparty wallets. |
| wash_factor | – | – | Multiplier applied to intel_score for effective_score. |
| wash_flag | – | – | "clean" | "single_counterparty" | "unknown". |
| window_days | – | – | Observation window in days when the corpus is windowed (Base: 90); null on the Solana path. |
No examples provided.
score_wallets_batch ~105
Free discovery: score up to 25 wallets in a single call (each via the same transparent model as score_wallet_for_intel). Convenience for triaging a set of candidate counterparties at once; `requested`/`capped` disclose any truncation.
| Name | Type | Req | Description |
|---|---|---|---|
| wallets | array | yes | List of wallets (Solana base58 or Base 0x) to score in one call (hard cap 25; extras are dropped). |
| Name | Type | Req | Description |
|---|---|---|---|
| capped | – | – | True if the request exceeded max_per_call. |
| count | – | – | Number of wallets scored. |
| error | – | – | Present only on the degraded path. |
| max_per_call | – | – | Hard cap on wallets per batch call. |
| requested | – | – | Number of valid wallets requested. |
| results | – | – | Per-wallet score objects (same shape as score_wallet_for_intel). |
No examples provided.
submit_contribution_claims ~423
PoECX bridge: report settlements from your OWN rails (not TWZRD's paid routes) for cross-check against TWZRD's independently-ingested x402 corpus, by on-chain signature. A claim whose tx_signature, payer/merchant, and amount all match what TWZRD's own ingest independently observed is materially stronger evidence than either a bare self-report or the anonymous corpus alone — the signature is real and on-chain, and a mismatch can't be forged to pass. Unmatched claims are returned too, with a reason, never silently dropped. This is a preview, not an unlock: `claimable` is always false. It exists to let a real counterparty with its own settlement volume start feeding PoECX before any on-chain payout path exists — see the PoECX plan. Capped at 25 claims per call (discovery convenience, not bulk export); extras are dropped, never silently ignored — see `capped`/`claims_requested`. Within that cap, only the first claim per (chain, tx_signature, transfer_index) is checked. Omitted transfer_index is the first leg (dedup key 0). Later copies of the same leg appear in `unverified` with reason_code `duplicate_claim` and `duplicate_of` pointing to the zero-based first input index. Two legs of one tx count twice. This deduplicates one preview report, not claims across separate calls.
| Name | Type | Req | Description |
|---|---|---|---|
| claims | array | yes | Self-reported settlements to cross-check. Each item: {"tx_signature": str, "chain": "solana"|"base", "amount_usdc": float (optional), "transfer_index": int (optional, Solana transfer_index / Base log… |
| wallet | string | yes | The wallet these settlement claims are being reported for. |
| Name | Type | Req | Description |
|---|---|---|---|
| as_of | – | – | ISO timestamp this report was built. Two reports of the same claims that differ only in tier after a backfill are distinguishable by as_of + classification_version. |
| attestation_class | – | – | "CORPUS_CROSS_CHECKED" when the corpus was observed; "CORPUS_UNAVAILABLE" when lookup could not run (not a miss). Not TWZRD-attested settlement. |
| capped | – | – | True if claims_requested exceeded max_per_call and extras were dropped. |
| claimable | – | – | Always false today — this is a preview, not an on-chain payout unlock. |
| claims_duplicates | – | – | Repeated chain/transaction/leg claims within the capped input; included in claims_unverified and excluded from value totals. |
| claims_requested | – | – | Number of claims in the original request, before any cap. |
| claims_submitted | – | – | Number of claims actually processed (after cap). |
| claims_unverified | – | – | Claims not found, with a mismatched wallet or amount, or duplicated within this report. |
| claims_verified | – | – | Unique chain/transaction/leg claims whose wallet and amount matched TWZRD's independently-observed corpus. |
| classification_version | – | – | Base cluster-pin / KNOWN_CLUSTERS snapshot id. Moves when corpus reclassify changes high/unknown/excluded meaning; distinct from score_version. |
| corpus_available | – | – | False when DSN/query failed so claims were not corpus-checked. Distinct from a genuine miss. |
| max_per_call | – | – | Hard cap on claims per call. |
| note | – | – | Plain-language caveat on what this report does and doesn't prove. |
| score_version | – | – | Report contract version, e.g. "poecx_bridge_v0". |
| unverified | – | – | Per-claim detail for unverified claims, each with a reason. |
| verified | – | – | Per-claim detail for verified claims, each carrying observed_x402_confidence and observed_facilitator_id. |
| verified_usdc | – | – | Sum of observed USDC for verified claims across all tiers, including excluded. Use verified_usdc_x402_high for allowlist-attributed Base volume. |
| verified_usdc_by_confidence | – | – | Verified USDC split by evidence tier: "high" = relayer funding-cluster is on TWZRD's x402 operator allowlist (attribution, not protocol-level confirmation); "unknown" = observed on-chain transfer TWZ… |
| verified_usdc_x402_high | – | – | Sum of observed USDC for verified claims whose observed_x402_confidence is high (allowlist attribution, not protocol confirmation). Excluded/unknown/untiered are omitted. |
| wallet | – | – | The wallet the claims were submitted for. |
No examples provided.
twzrd_demo_gate ~269
No-spend transcript of the TWZRD buyer-side x402 trust gate, a recorded example, not a live run - discoverable at runtime with no install and no human. Returns a deterministic transcript showing the gate's behaviour on a fixture counterparty: the block path ABORTS and a wallet/signer is never contacted, the allow path would proceed, and ok=true. Spends no USDC, contacts no wallet. This call surfaces an EXTERNAL_RUN *candidate* in TWZRD's honest attribution ledger (it carries a non-internal integration id + your run_id, tagged with your real inbound IP). A candidate is NOT an EXTERNAL_RUN: TWZRD's operator still has to match your run_id to a non-internal caller and confirm it. See the returned not_external_run_proof.
| Name | Type | Req | Description |
|---|---|---|---|
| integration | string | – | Stable label for your integration (e.g. your agent/app name). Echo it plus the returned run_id in your own transcript so a run can later be confirmed. Defaults to a generic MCP-discovery label. |
| run_id | – | – | Optional caller-supplied run id to correlate with your transcript. Omit to have one generated for this call. |
Structured output declared, but exposes no named fields.
No examples provided.
twzrd_watch_add ~260
Register a re-call watch on a seller wallet. After registration, TWZRD will proactively re-check the seller's trust intel when `recheck_after_unix` elapses and POST a notification to your webhook_url if the score/decision materially changes. The watch routes are control-proof authenticated (fail closed): signature and timestamp prove the caller holds the payer wallet's key. Return the watch row with the computed recheck_after_unix timestamp so your agent knows exactly when to expect a re-call or proactively re-check itself.
| Name | Type | Req | Description |
|---|---|---|---|
| payer_wallet | string | yes | Your agent wallet address (the watcher). |
| seller_wallet | string | yes | The seller/merchant wallet to watch. |
| signature | string | yes | base58 ed25519 signature made with the payer wallet's key over the twzrd-watch/v1 message for action=register: the seven lines [twzrd-watch/v1, register, str(timestamp), payer_wallet, seller_wallet,… |
| timestamp | – | yes | Unix seconds used in the signed message (freshness window: 300s). |
| webhook_url | – | – | Optional HTTPS URL to POST when intel goes stale. |
Structured output declared, but exposes no named fields.
No examples provided.
twzrd_watch_list ~184
List active re-call watches for your agent wallet. Each watch shows the seller, current score/decision, and recheck_after_unix timestamp (untrusted V5/V6 hint). evaluateRecall / shouldRecheckTrusted is the consumer gate; do not treat due / shouldRecheck as a trusted allow. Control-proof authenticated (fail closed) via signature + timestamp.
| Name | Type | Req | Description |
|---|---|---|---|
| payer_wallet | string | yes | Your agent wallet address. |
| signature | string | yes | base58 ed25519 signature made with the payer wallet's key over the twzrd-watch/v1 message for action=list: the seven lines [twzrd-watch/v1, list, str(timestamp), payer_wallet, '', '', ''] joined by n… |
| timestamp | – | yes | Unix seconds used in the signed message (freshness window: 300s). |
Structured output declared, but exposes no named fields.
No examples provided.
twzrd_watch_remove ~174
Deactivate a re-call watch by ID. payer_wallet must match the owner. Control-proof authenticated (fail closed): signature + timestamp prove the caller holds the payer wallet's key before the row is touched.
| Name | Type | Req | Description |
|---|---|---|---|
| payer_wallet | string | yes | Your agent wallet address (must match the watch owner). |
| signature | string | yes | base58 ed25519 signature made with the payer wallet's key over the twzrd-watch/v1 message for action=remove: the seven lines [twzrd-watch/v1, remove, str(timestamp), payer_wallet, '', '', str(watch_i… |
| timestamp | – | yes | Unix seconds used in the signed message (freshness window: 300s). |
| watch_id | integer | yes | Watch ID from twzrd_watch_list. |
Structured output declared, but exposes no named fields.
No examples provided.
verify_receipt ~352
Free utility: offline-verify a portable V7 trust receipt (earlier V5/V6 receipts still verify), the "after you pay" half of the loop. Recomputes the Keccak256 leaf from the receipt's preimage (tamper-evidence) AND verifies the Ed25519 signature against the published TWZRD receipt-signing key (authenticity). Returns valid/leaf_valid/signature_valid plus the recomputed leaf and any errors. Pure and offline — no DB, no network, no payment. Pass the entire PaidReceipt object you were issued. Trust is anchored on the published key (or expected_pubkey), NOT on whatever pubkey the receipt carries. max_age_seconds: optional freshness gate (replay protection). Same semantics as the Python library verify_paid_receipt(..., max_age_seconds=...) and the standalone CLI --max-age.
| Name | Type | Req | Description |
|---|---|---|---|
| expected_pubkey | string | – | Override the trusted signing pubkey to verify against (default: the published TWZRD receipt key). |
| max_age_seconds | – | – | If > 0, reject the receipt if its preimage.timestamp_unix is older than this many seconds (replay/freshness protection, same as CLI --max-age and library). |
| receipt | object | yes | The full signed receipt object (leaf + preimage + signature + signing_pubkey) returned by the paid /v1/intel/trust surface (V7; earlier V5/V6 receipts still verify). |
| require_signature | boolean | – | Require and verify the Ed25519 signature (default true). Set false only to inspect an unsigned preview. |
| Name | Type | Req | Description |
|---|---|---|---|
| domain | – | – | The V5 domain detected in the preimage. |
| errors | – | – | Issues found; empty on success. |
| leaf_valid | – | – | True iff the Keccak256 leaf recomputes from the preimage. |
| provided_leaf | – | – | The normalized leaf supplied in the receipt. |
| recomputed_leaf | – | – | The leaf recomputed from the preimage (0x...). |
| signature_checked | – | – | Whether the signature was checked (require_signature). |
| signature_valid | – | – | True iff the Ed25519 signature verifies; None if the signature check was skipped. |
| signing_pubkey | – | – | The pubkey carried by the receipt. |
| trusted_pubkey | – | – | The published key authenticity was checked against. |
| valid | – | – | True iff the leaf recomputes AND the signature verifies against the trusted key. |
No examples provided.
verify_root_inputs ~94
Independent root verification: recomputes the leaves, dataset hash and root from the public root data.
| Name | Type | Req | Description |
|---|---|---|---|
| resource_name | – | – | Legacy on-chain protocol resource (deposit/claim/settle) for auto-detection and seq hints. |
| root_seq | – | – | Specific root sequence to verify. If omitted, best-effort resolution via resource metadata or latest. |
| seller_wallet | – | – | Seller wallet for legacy on-chain protocol resource detection. |
| Name | Type | Req | Description |
|---|---|---|---|
| error | – | – | Error message on the ERROR path; null on PASS/FAIL. |
| leaf_count | – | – | Number of leaves (users) in the verified root. |
| leaf_hash_match | – | – | True iff every server-provided leaf_hash matches the locally recomputed value. |
| onchain_match | – | – | Always null: this tool does NOT read Solana/the AO program. Use server_consistent for the recompute result; do not gate on-chain actions on this field expecting a chain anchor. |
| recomputed_dataset_hash | – | – | Independently recomputed keccak-concat dataset_hash (hex). |
| recomputed_root | – | – | Independently recomputed sorted-pair keccak256 merkle root (hex). |
| root_seq | – | – | Root sequence number that was verified. |
| server_consistent | – | – | True iff the recomputed root/dataset_hash matches the value the SERVER published alongside its own leaves (self-consistency). NOT an on-chain check. Null when not comparable. |
| status | – | – | "PASS" = recomputed GLOBAL_V5 leaves + dataset_hash + sorted-pair root match the published values. "FAIL" = mismatch (do not trust the root). "ERROR" = could not run (fetch failure / missing data). |
No examples provided.
verify_x402_settled_claim ~122
Verify a receipts-ledger settlement; this is evidence, not a spend decision.
| Name | Type | Req | Description |
|---|---|---|---|
| settlement_tx | string | yes | Solana transaction signature only. No claim body is accepted. Verifies that signature against x402_payment_receipts and a freshly fetched finalized transaction: match requires the only positive USDC… |
| Name | Type | Req | Description |
|---|---|---|---|
| artifact_id | – | – | – |
| digest | – | – | – |
| finalized | – | – | – |
| merchant_credit_verified | – | – | – |
| payer | – | – | On match, the wallet whose USDC paid: the transaction's only USDC debit, equal to the ledger payer. Reimburse this wallet, never one a claimant names. |
| reason | – | – | – |
| self_attested_merchant | – | – | On match, whether the verified USDC credit owner is intel's pay_to. |
| session_binding | – | – | – |
| settlement_tx | string | yes | – |
| status | string | yes | Witness comparison only. Unknown is unavailable evidence; no status is a payment decision. |
No examples provided.
How do I install the TWZRD Agent Intelligence MCP server?
TWZRD Agent Intelligence is a hosted endpoint at https://intel.twzrd.xyz/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 · intel.twzrd.xyz
claude mcp add --transport http xyz-twzrd-intel-twzrd-agent-intel 'https://intel.twzrd.xyz/mcp'
What is the TWZRD Agent Intelligence MCP server?
TWZRD Agent Intelligence is an MCP server listed in the public MCP registry as xyz.twzrd.intel/twzrd-agent-intel. Pre-spend trust for AI agents that buy: check x402 services and product listings before paying. This page covers its hosted endpoint (https://intel.twzrd.xyz/mcp).
Is the TWZRD Agent Intelligence MCP server safe to use?
TWZRD Agent Intelligence scores 81 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 TWZRD Agent Intelligence MCP server expose?
TWZRD Agent Intelligence exposes 28 tools: get_readiness_card_tool, evaluate_x402_resource, low_level_preflight, verify_root_inputs, get_solana_market_status, and 23 more. Their descriptions and schemas cost roughly 7,428 tokens of context every time the server is loaded.
Does the TWZRD Agent Intelligence MCP server require authentication?
No. We connected to TWZRD Agent Intelligence without credentials and it answered, so anything it exposes is reachable by anyone who knows the address.
Is the TWZRD Agent Intelligence MCP server still maintained?
TWZRD Agent Intelligence is still listed as active in the MCP registry. We last reached this channel on 5 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.