A side-by-side look at the SCRIPTMASTERLABS — x402 Gateway and Z Zero MCP MCP servers: transport, auth, tools, quality signals, and the config to install either one in Claude, Cursor, Windsurf or VS Code.
Verdict: choose SCRIPTMASTERLABS — x402 Gateway for finance & fintech work over a hosted endpoint; choose Z Zero MCP for finance & fintech as a local process. You can also run both side by side in one mcpServers block.
sml_discover, sml_status, x402_contract.Z_ZERO_API_KEY.list_cards, check_balance, get_deposit_addresses.Rows where the two servers differ are marked.
| Spec | S SCRIPTMASTERLABS — x402 Gateway | |
|---|---|---|
| Category | Finance & Fintech | Finance & Fintech |
| Quality signal | 76/100 · Great | 61/100 · Good |
| Install command | Confirmed | Confirmed |
| Transport | Remote HTTP/SSE | Local subprocess (stdio) |
| Auth | No auth required | Not declared |
| Pricing | Freemium | Not declared |
| Required env vars | None listed | Z_ZERO_API_KEY |
| Verified owner | Verified | Community listing |
| GitHub stars | — | 1 |
| Directory activity | 3 views 0 installs 0 upvotes | 2 views 0 installs 0 upvotes |
| Tools | 3 | 14 |
| Full listing | View SCRIPTMASTERLABS — x402 Gateway | View Z Zero MCP |
sml_discoverFind the x402 Gateway contract and where to inspect fresh payment requirements. FREE.sml_statusCheck the public x402 Gateway identity and canonical payment rail. FREE.x402_contractInspect the canonical x402 payment contract. Returns network, USDC asset, payTo, headers, and the rule for resolving fresh target requirements. FREE.list_cardsList all available virtual card aliases and their balances. No sensitive data is returned.check_balanceCheck spendable USD balance for a card alias. For active token limits, use list_cards instead.get_deposit_addressesGet your Base deposit address to top up your wallet with USDC (or any supported stablecoin on Base).request_payment_tokenRequest a single-use JIT virtual card ($1–$100) locked to one amount + merchant. ⚠️ Read mcp://resources/sop first. Only call once the FINAL total is visible — for physical goods that is AFTER shipping is submitted (use get_merchant_hints to navigate there). For digital goods with the price already visible, prefer auto_pay_checkout instead. BEFORE requesting: look at the checkout page one more time and compare it against what the user actually asked for — same items, same quantity, same variant, same destination? If anything differs, do NOT request a token; fix the cart or check with the user first. A mismatch you catch here costs nothing; after this point it costs a card. If you pass `cart`, the server signs your declared intent and binds the card to it — the user gets cryptographic proof of what this card was authorized for. Pass `criteria` too: the few things the owner actually cared about, which this purchase gets scored against at payment time.get_merchant_hintsGet merchant navigation flow for a domain or platform key (e.g. '_platform_etsy'). Returns pre_steps (how to navigate checkout) and platform notes. Call BEFORE starting checkout to understand the multi-step flow.ucp_probe_checkoutUCP discovery + quote — creates an UNPAID draft checkout; no money moves; NOT a payment rail yet. Checks whether a merchant speaks UCP (Shopify-native agent commerce), lists its declared payment handlers, and — when variant_gid or query is given — creates a DRAFT checkout and returns the merchant's real quote: total_minor (wire units, 8900 = $89.00), total_major, currency, status, blockers, continue_url. NO payment happens; drafts expire server-side. Completing a UCP checkout needs Shopify Token-tier agent auth, which Z-Zero does not hold yet — to PAY, hand the buyer continue_url or use the standard execute_payment flow where permitted. Call this first on Shopify stores: their robots.txt bans scripted checkout, so the UCP lane is the sanctioned path.execute_paymentExecute a payment with a one-time token. TWO CALLS: call it first WITHOUT `recheck` — nothing is charged and it hands you what the owner actually asked for, locked when the card was issued; look at the page again, then call it a second time with `recheck` to pay or to pause. Then Z-Zero opens a headless browser, injects the card (you NEVER see the PAN), clicks Pay, and watches for a REAL confirmation before reporting success. Returns a `status`: `confirmed` (order placed → token burned, receipt_id may hold a real order #), `declined` (merchant rejected → token kept for refund), `unconfirmed` (submitted but no confirmation seen → do NOT retry blindly, verify first), `not_submitted` (no Pay button → supply a submit_selector hint), or `no_fields`. ALWAYS pass actual_amount so overcharges are blocked and underspend refunded.cancel_payment_tokenCancel unused token and refund instantly. Use when user cancels the purchase or to free up a card slot.request_human_approvalPause and ask the user for approval before risky actions (price mismatch, large amount, unusual request).set_api_keyActivate a new Passport Key instantly, no restart needed. Only call when user explicitly provides a key.show_api_key_statusCheck if Passport Key is configured. Shows prefix only, for debugging.auto_pay_checkout⚠️ MANDATORY: Read mcp://resources/sop first. Only use on PAYMENT pages where final total is visible. Auto-detects Web3 or Fiat and completes payment. For physical goods (Shopify, Etsy), get_merchant_hints first.Paste either block (or both) into your client config, e.g. claude_desktop_config.json or ~/.cursor/mcp.json. We only show a config when the install command is confirmed.
{
"mcpServers": {
"scriptmasterlabs-x402-gateway": {
"url": "https://mcp-x402.onrender.com/mcp"
}
}
}
{
"mcpServers": {
"z-zero-mcp": {
"command": "npx",
"args": [
"-y",
"z-zero-mcp-server"
],
"env": {
"Z_ZERO_API_KEY": "YOUR_Z_ZERO_API_KEY_HERE"
}
}
}
}