xenarch-mcp

Non-custodial x402 MCP server for AI agents.

Community: Submitted by a user or imported; check the owner before granting accessOnlineNo sign-inGlobalFreeCan modify data

What it can do

  • Xenarch Check Gate: Check if a URL or domain has an x402 payment gate. Returns gate status, accepted payment requirements (price, asset, network), and the seller wallet. Use this before paying to conf
  • Xenarch Pay: Pay an x402-gated URL with USDC on Base L2 and return the gated content. Signs an EIP-3009 transferWithAuthorization, settles on-chain, then re-fetches the resource with proof of payment.
  • Xenarch Wallet Status: Show the agent's local payment wallet: its address, USDC balance on Base, and whether it's funded. Use this to find the address the user needs to top up with USDC, or to check t

What data it sees

Do you need an account

No: the server works without sign-in

Non-custodial x402 MCP server for AI agents. Lets Claude, Cursor, LangChain and CrewAI pay for HTTP 402–gated APIs with USDC micropayments on Base L2. Unlike Cloudflare Pay-Per-Crawl, works on any host and settles agent-to-publisher direct.

Server tool list (60)

Raw names from tools/list. Only developers need these.

xenarch_check_gateCheck if a URL or domain has an x402 payment gate. Returns gate status, accepted payment requirements (price, asset, network), and the seller wallet. Use this before paying to confirm pricing, when a URL returns HTTP 402 Payment Required, or when a user asks whether content is paywalled.
xenarch_payPay an x402-gated URL with USDC on Base L2 and return the gated content. Signs an EIP-3009 transferWithAuthorization, settles on-chain, then re-fetches the resource with proof of payment. Returns the on-chain tx_hash, seller wallet, and the response body. Settles directly to the seller wallet — no Xenarch contract in the money flow, no custodial balance. The agent wallet only ever holds USDC; no ETH or other gas coin is required. Use after xenarch_check_gate confirms a gate exists, or when the user asks to pay for or unlock gated content.
xenarch_wallet_statusShow the agent's local payment wallet: its address, USDC balance on Base, and whether it's funded. Use this to find the address the user needs to top up with USDC, or to check the balance before paying. This is the wallet that signs payments — separate from the wallet used to sign in to the dashboard.
xenarch_get_historyList past USDC micropayments made by this wallet through Xenarch. Returns transaction hashes, URLs, domains, amounts in USD, timestamps, total spend, and payment count. Optionally filter by domain. Use this to audit spending, check if you already paid for a resource, or track agent expenditure.
xenarch_agent_loginSign in to the agent control plane using your browser wallet — no CLI needed. First call returns a link; open it, sign in with your wallet on the dashboard, and approve. Call this tool again to finish — the 7-day session is then used by every other xenarch_agent_* tool. Use this when a control-plane tool reports you're not signed in.
xenarch_agent_statusShow the operator's agent profile (name, paused state) and spend summary for a period. Read-only. Needs a SIWE session from `xenarch agent login`.
xenarch_agent_get_capsRead the agent's spending caps (per-transaction, daily, monthly) and remaining headroom. Read-only.
xenarch_agent_set_capsSet spending caps. Pass per_tx/daily/monthly in USD ('none' disables an axis); omit an axis to leave it unchanged. RAISING or REMOVING a cap requires confirm: true (returns needs_confirmation otherwise). Tightening is free.
xenarch_agent_reset_day_capReset today's daily-spend counter back to the full daily cap (recovery from accidental mid-day exhaustion). Restores full spending headroom — requires confirm: true.
xenarch_agent_get_scopeRead the agent's scope: default posture (allow/deny) and the allow/deny rule list. Read-only.
xenarch_agent_add_scope_ruleAdd an allow/deny scope rule. A 'deny' rule tightens (free); an 'allow' rule loosens and requires confirm: true.
xenarch_agent_remove_scope_ruleRemove a scope rule by id (full UUID or unambiguous prefix). Removing a DENY rule loosens scope and requires confirm: true.
xenarch_agent_set_default_scopeSet the default scope posture for unmatched URLs. 'deny' tightens (free); 'allow' loosens and requires confirm: true.
xenarch_agent_pauseKill switch: pause the agent so all of its payments are blocked immediately. Tightening, so no confirm needed.
xenarch_agent_resumeLift the pause so the agent can spend again (subject to caps + scope). Requires confirm: true.
xenarch_agent_list_keysList the agent's xa_live_ API keys (id, label, last-used, revoked state). Never returns plaintext. Read-only.
xenarch_agent_create_keyIssue a new xa_live_ API key (plaintext returned once). Issues a live spending credential — requires confirm: true.
xenarch_agent_rotate_keyRotate an API key by id (full UUID or prefix) — invalidates the old secret, returns a new one once. Requires confirm: true.
xenarch_agent_revoke_keyPermanently revoke an API key by id (full UUID or prefix). Requires confirm: true.
xenarch_agent_get_receiptsList the agent's payment receipts with filters (period, status, source, domain) and pagination. Read-only.
xenarch_list_linksList the merchant's pay-links (newest first), with cursor pagination. Read-only. Needs a SIWE session from `xenarch agent login`.
xenarch_get_linkGet one pay-link's detail (status, params, stats) by id. Read-only.
xenarch_create_linkCreate a pay-link. VALIDATE-FIRST: call with mode:'validate' (default) to learn which fields are missing (each missing field includes a prompt to ask the user); once valid, call again with mode:'create' and confirm:true to sign + create. Signs with the agent's local key — the signer must equal the SIWE session wallet. Amount is USDC (max 1.00).
xenarch_revoke_linkRevoke a pay-link by id so it can no longer be paid. Requires confirm: true (returns needs_confirmation otherwise).
xenarch_list_paymentsList payments RECEIVED across the merchant's pay-links (newest first), with cursor pagination. Read-only.
xenarch_list_subscribersList subscribers across the merchant's subscription pay-links, with optional filters (link_id, status, mode). Read-only.
xenarch_get_merchant_profileGet the merchant profile (issuer identity, domain verification status). Read-only. Returns null if none is set yet.
xenarch_update_merchant_profileUpdate the merchant profile (issuer name, site, email, address, tax id, brand color, logo, payout rhythm). Only the fields you pass change; the rest are preserved (whole-state upsert). Rewrites customer-facing identity — requires confirm: true.
xenarch_verify_domainVerify the merchant's domain via its DNS TXT record at _xenarch.<merchant_site> (XEN-394). Set merchant_site first via xenarch_update_merchant_profile.
xenarch_get_subscriberGet one subscriber's full detail (plan, cadence, renewal dates, payer, permit/metered state) by subscription id. Read-only.
xenarch_get_subscriber_chargesRead a metered subscriber's immutable charge ledger (booked + settled charges, totals, outstanding). Read-only, cursor over charge_seq.
xenarch_get_subscriber_rollupSubscriber KPIs: active count, MRR (USDC), 30-day churn. Read-only.
xenarch_cancel_subscriberCancel a subscription (merchant-initiated; reminder-mode only, 409 otherwise). Permanent. Requires confirm: true.
xenarch_suspend_subscriberSuspend a subscription: collection attempts and dunning stop. Any mode, idempotent, no on-chain effect. Requires confirm: true.
xenarch_mint_manage_linkMint a short-lived manage URL + token for a subscriber (hosted manage page). Anyone holding it can manage that subscription until expiry. Requires confirm: true.
xenarch_set_period_capSet/raise a metered-per-period subscriber's budget (new_cap_usdc). Mints the manage token behind the scenes. Requires confirm: true.
xenarch_list_permit_collectableList permit subscriptions with a cycle due now (the collectable bag): amount, owner→spender transferFrom params, permit status. Read-only.
xenarch_list_metered_collectableList metered subscriptions with booked charges awaiting on-chain settlement (the collectable bag). Read-only.
xenarch_fire_permit_digestDev/test: drop the throttle and immediately re-send the collectable digest email for your wallet. Requires confirm: true.
xenarch_permit_submitBroadcast the buyer's signed USDC.permit on-chain to set the allowance (moves NO funds; wallet pays gas). Needs the LOCAL seller wallet key + Base ETH. Broadcasting requires confirm: true. Pass tx_hash alone to record an already-broadcast permit (recovery, record-only, no confirm needed).
xenarch_permit_collectCollect one due permit cycle: preflights allowance/balance/simulation, broadcasts USDC.transferFrom from the LOCAL seller wallet (must be the permit spender, needs Base ETH gas), then books it. MOVES REAL MONEY — requires confirm: true PLUS expected_amount_usdc pinned from the needs_confirmation payload. If it reports transferred-but-not-booked, use xenarch_record_collect; NEVER re-run this tool for the same cycle.
xenarch_metered_collectSettle a metered subscriber's booked charges on-chain: preflight, broadcast USDC.transferFrom from the LOCAL seller wallet, book. MOVES REAL MONEY — requires confirm: true PLUS expected_amount_usdc pinned from the needs_confirmation payload. If transferred-but-not-booked, use xenarch_record_collect; NEVER re-run this tool for the same charges.
xenarch_record_collectRecovery: book an ALREADY-broadcast transferFrom by tx hash. Never transfers — the backend dedups on tx_hash, so it is always safe to re-run.
xenarch_edit_linkReplace a pay-link's metadata object (whole-state; null clears). Requires confirm: true.
xenarch_get_link_eventsList a pay-link's event stream (views, payments, webhook fires…) with type filter + cursor. Read-only.
xenarch_get_links_rollupMerchant pay-link KPIs: paid 24h/total, month-to-date revenue, views, conversion. Read-only.
xenarch_get_links_summaryRevenue / paid-count / link-count summary for a period (24h, 7d, 30d, all). Read-only.
xenarch_list_groupsList pay-link groups (name, accent, members). Read-only.
xenarch_create_groupCreate a pay-link group. Requires confirm: true.
xenarch_update_groupRename / re-accent / re-position a pay-link group. Requires confirm: true.
xenarch_delete_groupDelete a pay-link group (member links become ungrouped). Requires confirm: true.
xenarch_assign_link_groupMove a pay-link into a group (or null to ungroup). Requires confirm: true.
xenarch_list_ordersList paid orders across pay-links (buyer, shipping, status, tracking) with filters + cursor. Read-only.
xenarch_ship_orderMark an order shipped with a tracking number — emails the buyer. Requires confirm: true.
xenarch_export_ordersExport orders as CSV text (same filters as list). Read-only.
xenarch_get_link_webhookRead a pay-link's webhook config (URL, event types, enabled). Read-only.
xenarch_set_link_webhookSet a pay-link's webhook URL / event types / enabled. Requires confirm: true.
xenarch_rotate_link_webhook_secretRotate a pay-link's webhook signing secret (old secret stops verifying). Requires confirm: true.
xenarch_test_link_webhookSend a test event to a pay-link's webhook URL. Requires confirm: true.
xenarch_get_link_webhook_deliveriesList a pay-link's recent webhook delivery attempts (status, latency, errors). Read-only.
xenarch-mcp: connect to Claude, ChatGPT, Cursor · Connectors.fun