{"serverInfo":{"name":"x402station-mcp","version":"1.0.10"},"description":"Payment-safety guard MCP server for x402 agents. Ten tools wrapping the x402station.io guard API: preflight + forensics + catalog_decoys + alternatives + whats_new + buy_credits + watch_subscribe (paid, signed automatically through AGENT_PRIVATE_KEY) plus watch_status + watch_unsubscribe + credits_status (free + secret/id-gated). Runs before every PAYMENT-SIGNATURE so the agent wallet never settles on phantom services. Base mainnet, USDC.","homepage":"https://x402station.io","author":{"name":"sF1nX","url":"https://github.com/sF1nX"},"transport":{"type":"stdio","command":"npx","args":["-y","x402station-mcp"]},"capabilities":{"tools":{}},"tools":[{"name":"preflight","description":"Pre-flight safety check for a single x402 endpoint URL: returns {ok, warnings[], metadata} so an agent can decide whether to commit a paid x402 request. Detects decoys (price ≥ $1k), zombies (100% erroring), dead endpoints, and price/latency anomalies. Call BEFORE any other paid x402 request. $0.001 USDC."},{"name":"forensics","description":"Deep 7-day report for one x402 endpoint: hourly uptime series, latency p50/p90/p99, status-code distribution, concentration-group stats, decoy probability [0, 1]. Superset of preflight — pulling forensics replaces a preflight call. $0.001 USDC."},{"name":"catalog_decoys","description":"Full blacklist of every active catalog endpoint currently flagged decoy_price_extreme / zombie / dead_7d / mostly_dead, plus per-reason counts. Pull periodically (hourly is plenty — internal data refreshes every 10 min, polling more often costs the same and returns identical data) and cache locally. $0.005 USDC."},{"name":"alternatives","description":"Routing fallback. Given a URL flagged by preflight (or a taskClass hint), returns up to 5 healthy sibling endpoints in the same provider/domain/category/price-band. Filters out 7-day-dead and 1-hour-erroring candidates; ranks by uptime + latency. Solves the routing-fallback question after ok=false from preflight. $0.005 USDC."},{"name":"whats_new","description":"Catalog diff polling. Body {since?, limit?} (default since=now-24h, limit=200, max 500). Returns added_endpoints[], removed_endpoints[], service-level counts, polls_in_window, current active totals. Cheap ($0.001 USDC) — designed for aggregator agents to poll hourly without breaking the bank. Internal ingest cron runs every 5 min, so polling more often returns identical data."},{"name":"buy_credits","description":"Buy 1000 prepaid /api/v1/preflight calls. $0.50 USDC = $0.0005 per preflight (50% off the per-call $0.001 tier). Returns { creditId, balance, expiresAt }. Store the creditId — it's the bearer token used via X-Credit-Id header on subsequent preflight calls; on exhaustion/expiry the middleware falls through to per-call x402 automatically."},{"name":"credits_status","description":"Read a credit's current balance + expiry. Free, no payment required. UUID-only access — anyone holding the creditId can read state. Returns 404 for unknown / malformed UUIDs (same response so an attacker scraping random UUIDs can't tell them apart)."},{"name":"watch_subscribe","description":"Subscribe to webhook alerts on x402 endpoint state changes. $0.01 USDC = 30-day watch + 100 prepaid alerts. When a subscribed signal (e.g. zombie, decoy_price_extreme) fires or clears, x402station POSTs an HMAC-SHA256-signed JSON payload to the agent's webhookUrl. Returns watchId + secret (the HMAC seed; STORE THE SECRET — not retrievable later)."},{"name":"watch_status","description":"Check a watch's current state: active/expired, alertsRemaining (out of 100 prepaid), last 10 alert deliveries with delivery_status, and the last computed signal snapshot. Free, secret-gated by the secret returned from watch_subscribe."},{"name":"watch_unsubscribe","description":"Deactivate a watch — no further alerts will be queued or delivered. Free, secret-gated. The watch row is retained for audit but is_active flips to false. No refund for unused prepaid alerts."}],"registry":{"npm":"https://www.npmjs.com/package/x402station-mcp","mcpRegistry":"https://registry.modelcontextprotocol.io/v0/servers/io.github.sF1nX/x402station"},"documentation":"https://x402station.io/api"}