Clawallex

MCP Server for the Clawallex payment API.

От сообщества: Добавлен пользователем или импортирован; проверьте владельца перед подключениемРаботаетБез входаГлобальныйБесплатноТолько чтение

Что умеет

  • Batch Card Balances: Check balances for multiple cards in one call.
  • Clawallex Pay: Pay for a product or service using USDC. Creates a single-use flash virtual card (card_type=100), deducts from wallet balance, returns card details for checkout. Mode A (mode_code=100,
  • Clawallex Refill: Top up the balance of a subscription (stream) card. Only stream cards (card_type=200) can be refilled. Refill mode follows the card's creation mode. Mode A: deducts from wallet balan

Какие данные видит

Нужен ли аккаунт

Не нужен: сервер работает без входа

MCP Server for the Clawallex payment API. Pay for anything with USDC — Clawallex converts your stablecoin balance into virtual cards that work at any online checkout.

Список инструментов сервера (14)

Технические названия из tools/list. Нужны только разработчикам.

batch_card_balancesCheck balances for multiple cards in one call.
clawallex_payPay for a product or service using USDC. Creates a single-use flash virtual card (card_type=100), deducts from wallet balance, returns card details for checkout. Mode A (mode_code=100, default): wallet balance → flash card. Immediate settlement. Mode B (mode_code=200): for callers with self-custody wallets — signing is performed by the caller. x402 on-chain two-stage flow: Stage 1 (Quote): POST with mode_code=200, chain_code, token_code. The 402 response is EXPECTED — it is a quote, NOT an error. Returns: card_order_id, client_request_id, x402_reference_id, payee_address, asset_address, final_card_amount, issue_fee_amount, fx_fee_amount, fee_amount, payable_amount. Agent signs: construct and sign an EIP-3009 transferWithAuthorization using your own wallet/signing library. EIP-712 domain: name="USDC", version="2", verifyingContract=asset_address from Stage 1. authorization fields: from=your wallet, to=payee_address, value=maxAmountRequired, validAfter/validBefore=unix seconds validity window, nonce=random 32-byte hex (unique per auth). authorization.from MUST equal payer_address submitted in Stage 1. Stage 2 (Settle): POST again with SAME client_request_id + signed x402 data: - payment_payload.network and payment_requirements.network MUST equal chain_code from Stage 1 - payment_requirements.payTo MUST equal payee_address from Stage 1 - payment_requirements.asset MUST equal asset_address from Stage 1 - maxAmountRequired = payable_amount × 10^6 (USDC decimals, e.g. '207.59' → '207590000') - payment_requirements.extra.referenceId MUST equal x402_reference_id from Stage 1 - extra.card_amount = amount, extra.paid_amount = amount + fee_amount If settle rejected, order stays pending_payment — fix params and retry with same client_request_id. Fee: fee_amount = issue_fee_amount + fx_fee_amount. total = amount + fee_amount. Example (Mode A): clawallex_pay({ amount: 50, description: 'OpenAI API credits' })
clawallex_refillTop up the balance of a subscription (stream) card. Only stream cards (card_type=200) can be refilled. Refill mode follows the card's creation mode. Mode A: deducts from wallet balance. client_request_id is the idempotency key (auto-generated if omitted). Mode B: x402 settle (no 402 challenge stage) — agent constructs and signs the payment independently. Step 1: call get_x402_payee_address(chain_code, token_code) to get payee_address and asset_address. payee_address → payment_requirements.payTo asset_address → payment_requirements.asset (the USDC token contract on the target chain, e.g. BASE USDC) Step 2: sign an EIP-3009 transferWithAuthorization using your wallet/signing library. EIP-712 domain: name="USDC", version="2", verifyingContract=asset_address from Step 1. authorization.from MUST equal payer_address submitted in the request. Step 3: maxAmountRequired = amount × 10^6 (USDC has 6 decimals; refill has no extra fee, e.g. '50.00' → '50000000'). Step 4: submit with x402_reference_id, x402_version, payment_payload, payment_requirements. - payment_payload.network and payment_requirements.network MUST equal chain_code used in Step 1 - payment_requirements.extra.referenceId MUST equal x402_reference_id - x402_reference_id is the idempotency key (not client_request_id) Tip: use get_card_balance first to check current balance. Example: clawallex_refill({ card_id: 'c_123', amount: 50 })
clawallex_subscribeSet up a reloadable virtual card for recurring/subscription payments. Creates a stream card (card_type=200) that stays active and can be refilled via clawallex_refill. Mode A (mode_code=100, default): wallet balance → stream card. Immediate settlement. Mode B (mode_code=200): for callers with self-custody wallets — signing is performed by the caller. x402 on-chain two-stage flow: Stage 1 (Quote): POST with mode_code=200, chain_code, token_code. The 402 response is EXPECTED — it is a quote, NOT an error. Returns: card_order_id, client_request_id, x402_reference_id, payee_address, asset_address, final_card_amount, issue_fee_amount, monthly_fee_amount, fx_fee_amount, fee_amount, payable_amount. Agent signs: construct and sign an EIP-3009 transferWithAuthorization using your own wallet/signing library. EIP-712 domain: name="USDC", version="2", verifyingContract=asset_address from Stage 1. authorization fields: from=your wallet, to=payee_address, value=maxAmountRequired, validAfter/validBefore=unix seconds validity window, nonce=random 32-byte hex (unique per auth). authorization.from MUST equal payer_address submitted in Stage 1. Stage 2 (Settle): POST again with SAME client_request_id + signed x402 data: - payment_payload.network and payment_requirements.network MUST equal chain_code from Stage 1 - payment_requirements.payTo MUST equal payee_address from Stage 1 - payment_requirements.asset MUST equal asset_address from Stage 1 - maxAmountRequired = payable_amount × 10^6 (USDC decimals, e.g. '207.59' → '207590000') - payment_requirements.extra.referenceId MUST equal x402_reference_id from Stage 1 - extra.card_amount = amount, extra.paid_amount = amount + fee_amount If settle rejected, order stays pending_payment — fix params and retry with same client_request_id. Fee: fee_amount = issue_fee_amount + monthly_fee_amount + fx_fee_amount. total = amount + fee_amount. Example: clawallex_subscribe({ initial_amount: 100, description: 'AWS monthly billing' })
create_card_orderAdvanced: create a virtual card with full control over payment mode and card type. Most agents should use clawallex_pay or clawallex_subscribe instead. Mode A (mode_code=100): wallet balance deduction, immediate settlement. Mode B (mode_code=200): for callers with self-custody wallets — signing is performed by the caller. x402 two-stage flow: Stage 1 (Quote): provide chain_code + token_code. The 402 response is EXPECTED (a quote, NOT an error). Returns: payee_address, asset_address, x402_reference_id, fee breakdown, payable_amount. Agent signs: construct and sign an EIP-3009 transferWithAuthorization using your own wallet/signing library. EIP-712 domain: name="USDC", version="2", verifyingContract=asset_address from Stage 1. authorization fields: from=your wallet, to=payee_address, value=maxAmountRequired, validAfter/validBefore=unix seconds validity window, nonce=random 32-byte hex (unique per auth). authorization.from MUST equal payer_address submitted in Stage 1. Stage 2 (Settle): reuse SAME client_request_id + provide x402_version, payment_payload, payment_requirements, extra. - payment_payload.network and payment_requirements.network MUST equal chain_code from Stage 1 - payment_requirements.payTo MUST equal payee_address from Stage 1 - payment_requirements.asset MUST equal asset_address from Stage 1 - payment_requirements.extra.referenceId MUST equal x402_reference_id from Stage 1 - maxAmountRequired = payable_amount × 10^decimals (USDC = 6, e.g. '207.59' → '207590000') - extra.card_amount = amount, extra.paid_amount = amount + fee_amount If settle rejected, order stays pending_payment — retry with same client_request_id. card_type: 100=flash (single-use), 200=stream (reloadable). Fee: flash = issue_fee + fx_fee; stream = issue_fee + monthly_fee + fx_fee.
get_card_balanceGet the current balance and status of a virtual card. Returns available_balance, card_currency, status, and updated_at.
get_card_detailsGet full card details including PAN, CVV, expiry, balance, cardholder info, billing address, and risk controls.
get_walletGet the wallet details for the current API key. Each API key has exactly one wallet — shared across all agents using the same API key. Returns available_balance, frozen_balance, low_balance_threshold, currency (USD), and status. Use this to check if there is sufficient balance before creating cards (Mode A) or refilling (Mode A).
get_wallet_recharge_addressesGet the on-chain deposit addresses for a wallet. Send USDC to one of these addresses to top up the wallet balance. If the result is empty, no deposit address has been created yet — ask the user to visit https://app.clawallex.com to create one.
get_x402_payee_addressGet the system receiving address for x402 on-chain payments. When to use: MUST call this before Mode B Refill to obtain payee_address and asset_address. Not needed for Mode B card creation — the 402 quote response already includes both addresses. Returns: payee_address (payment_requirements.payTo), asset_address (payment_requirements.asset = USDC token contract).
list_cardsList virtual cards created by this agent (scoped to the server's client_id). Cards created by other agents using the same API key are not visible. Returns: card_id, mode_code, card_type (flash/stream), status, masked PAN, balance, and expiry.
list_transactionsList card transactions for this agent (scoped to the server's client_id). Transactions from other agents using the same API key are not visible. All filter parameters are optional — omit all to list recent transactions across all cards.
update_cardUpdate card risk controls: per-transaction limit and MCC whitelist/blacklist. At least one field must be provided.
whoamiQuery the current MCP connection status. Returns user_id, api_key_id, and client_id bound to this MCP token.