Skip to main content

twzrd-mcp-server / twzrd-mcp — pre-spend seller reputation for Solana x402

Check a seller wallet and requested resource before you pay over Solana x402. Free tools return allow / warn / block; optional paid tools buy deeper reputation evidence or a signed V6 receipt with explicit spend caps. TWZRD scores observed wallet and payment behavior. It does not prove a person, company, or autonomous agent identity.

Prefer the zero-install hosted Agent Intelligence MCP. Use this package only when you want local auto-pay for paid intel.

// Recommended — 22 tools, no wallet, nothing to install
{ "mcpServers": { "twzrd": { "url": "https://intel.twzrd.xyz/mcp" } } }
# Local auto-pay client — 6 tools; wallet only if you enable paid calls
npx -y twzrd-mcp-server        # Node
pip install twzrd-mcp          # Python

Which surface do I want?

Surface Tools Wallet Use when
https://intel.twzrd.xyz/mcp (hosted) 22 No Default. Seller preflight, resource evaluation, reputation, receipts, watches, and observed-market research.
twzrd-mcp-server / twzrd-mcp (this package) 5 Only for paid You want quick_trust / full_trust auto-paid locally with caps.

Start with hosted twzrd_demo_gate for a zero-setup, zero-spend proof of the block path. The hosted MCP is also listed on Smithery.

The 6 local client tools

Tool Cost What
preflight free allow / warn / block + trust score for a seller you're about to pay
merchant_card free seller graph card — wash_flagged: truedon't pay (locked sequence step 2)
wallet_lookup free facilitators + counterparty breadth for a wallet
verify_receipt free offline-verify a wallet's cNFT receipt (Ed25519 vs genesis authority 2ELSDxLkb7dYrN6EUG69tNtULAq4Fo7WPvXyrZPmuFif) — trust no server
quick_trust $0.001 quick tier + score for any wallet
full_trust $0.05 full trust intel + signed V6 receipt

quick_trust / full_trust buy intel on any wallet (you look risky ones up on purpose) — they don't refuse a target. Use preflight to vet a wallet you're about to pay elsewhere.

Happy path (seller-first)

  1. Free preflight on the seller's receive wallet.
  2. block → don't pay. Done, $0 spent.
  3. Free merchant_card on the same wallet — wash_flagged: true → don't pay.
  4. warn → consider a $0.05 full_trust signed receipt before deciding.
  5. allow + clean card + small spend → pay. Keep the receipt; scores decay, so re-check stale decisions.

Install & config

Paid tools are opt-in on both runtimes: they sign only when you set TWZRD_MCP_PAYMENTS_ENABLED=1 and provide a wallet key. For free tools, omit both — the server runs read-only and never signs. Spend is bounded by per-call and session caps.

Before any Solana signature the Node server runs twzrd-x402-gate@0.9.3 wash default (Python twzrd-mcp 0.2.1 does the same merchant_card check on the 402 payTo): abort iff wash_flagged===true → fail-open if intel is down. That is the paying-client brake, not a Path A shop.

Python — pip install twzrd-mcp

{ "mcpServers": { "twzrd": {
  "command": "twzrd-mcp",
  "env": {
    "TWZRD_RPC_URL": "<your dedicated Solana RPC url>",
    "TWZRD_WALLET_KEYPAIR": "/path/to/solana-keypair.json",
    "TWZRD_MCP_PAYMENTS_ENABLED": "1",
    "TWZRD_MAX_USDC_PER_CALL": "0.05",
    "TWZRD_MAX_USDC_TOTAL": "1.00"
  }
}}}

Node — npx -y twzrd-mcp-server

{ "mcpServers": { "twzrd": {
  "command": "npx", "args": ["-y", "twzrd-mcp-server"],
  "env": {
    "TWZRD_RPC_URL": "<your dedicated Solana RPC url>",
    "TWZRD_WALLET_SECRET_KEY": "<base58 Solana secret>",
    "TWZRD_MCP_PAYMENTS_ENABLED": "1",
    "TWZRD_MAX_USDC_PER_CALL": "0.05",
    "TWZRD_MAX_USDC_TOTAL": "1.00"
  }
}}}
Env var Default Meaning
TWZRD_MCP_PAYMENTS_ENABLED unset (off) set 1 to arm paid tools — required on both runtimes
TWZRD_WALLET_SECRET_KEY (Node) / TWZRD_WALLET_KEYPAIR (Python) signer for paid tools
TWZRD_MAX_USDC_PER_CALL 0.05 per-call spend cap
TWZRD_MAX_USDC_TOTAL 1.00 cumulative session spend cap
TWZRD_RPC_URL none — required for paid tools Solana RPC. Paid tools refuse to arm without it: the public RPC is rate-limited and loses x402 races (stale blockhash / sponsored feePayer between the 402 challenge and the signed retry), and a rejected settle can still move USDC. Free tools need no RPC. Set TWZRD_ALLOW_PUBLIC_RPC=1 to accept that risk anyway.

Safety

  • Opt-in payments — paid tools sign only with TWZRD_MCP_PAYMENTS_ENABLED=1; a wallet key alone never arms spending.
  • Spend caps — per-call and session caps enforced in the payment selector before any signature. Caps use the mint's true decimals, never merchant-declared extra.decimals. A mismatched declaration is refused. A malformed cap env (e.g. "$0.05") falls back to the default; it never becomes NaN and disables the cap.
  • Known-asset only — pay only known USD-pegged stables (USDC/USDT); unknown SPL mints are refused.
  • Identifiable recipient — a challenge with no payTo is refused.
  • Solana-only — a non-exact / non-solana: challenge is refused, never mis-signed.
  • Single-shot retry — at most one signed retry per tool call; a second 402 is surfaced, not silently re-paid.
  • Free tools never enter the payment path.

Verify receipts offline (trust no one)

full_trust returns a portable Ed25519-signed V6 receipt. Verify it without trusting any TWZRD server — new receipts use issuer key twzrd-receipt-ed25519-v2; legacy v1 keys remain verify-only during the bounded compatibility rollout. (Ak5SQwHpuQAqU7ty7ZWX7qgF39A9yi72c22KNn8sHzvS), pinned at https://intel.twzrd.xyz/.well-known/twzrd-receipt-pubkey:

npx twzrd-receipt-verifier <receipt.json> --pubkey Ak5SQwHpuQAqU7ty7ZWX7qgF39A9yi72c22KNn8sHzvS

Development

npm run build && npm run demo lists tools and runs a free preflight from source (no spend by default). For the operator-authorized $0.001 settle proof, set TWZRD_DEMO_PAID=quick, provide a wallet key, and pin both caps to 0.001 (see examples/agent-drop-in.mjs).


Links: Agent Intelligence · hosted MCP · llms.txt · llms-full.txt · OpenAPI

License: MIT

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

twzrd_mcp-0.2.1.tar.gz (8.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

twzrd_mcp-0.2.1-py3-none-any.whl (9.0 kB view details)

Uploaded Python 3

File details

Details for the file twzrd_mcp-0.2.1.tar.gz.

File metadata

  • Download URL: twzrd_mcp-0.2.1.tar.gz
  • Upload date:
  • Size: 8.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.12.14

File hashes

Hashes for twzrd_mcp-0.2.1.tar.gz
Algorithm Hash digest
SHA256 a7620bc3639ed2cad896ebeeb15c71f91a162b04c9a783570027cf531cf481dd
MD5 1b0c8dfb50d93ccc46d2d4cf5c7ef7c7
BLAKE2b-256 5b51215bfb0386cb0c20b22aa16a1fad89652ccebe04cd4449f8093a8e4c7837

See more details on using hashes here.

File details

Details for the file twzrd_mcp-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: twzrd_mcp-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 9.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.12.14

File hashes

Hashes for twzrd_mcp-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 481f68f67e4837aa48c05776c46baaa8ce66a9ff273a51f125acb063892e3b23
MD5 fff5272deb9b54e62d84fb178faac97c
BLAKE2b-256 79c4ed5990b4c281dd5b403feaa23a64cab649ac33488c433656ed1bf0dcee88

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.2.1 This release

2 files

0.2.0

2 files

0.1.7

2 files

0.1.6

2 files

0.1.5

2 files

0.1.4

2 files

0.1.3

2 files

0.1.2

2 files

0.1.1

2 files

0.1.0

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page