FINANCIAL MCP TOOLS
Tools that initiate financial transactions. Critical risk -- require human approval.
Severity: Critical severity →
Real-world attack patterns documented against financial-class MCP tools. Each links to the full case and the defensive policy.
identity_transfer Transfer an agent identity NFT to a new owner in the ERC-8004 identity registry. This clears the agent wallet association — run identity_set_wallet... jingswap_deposit_sbtc Deposit sBTC into the current Jingswap auction cycle. Only works during the deposit phase. Amount is in satoshis (e.g. 1000 for 1000 sats). Works t... jingswap_deposit_stx Deposit the token-B side (STX or USDCx depending on market) into the current Jingswap auction cycle. Only works during the deposit phase. Amount is... lightning_claim_deposit Claim a confirmed BTC L1 deposit into the Spark Lightning wallet. Call this AFTER lightning_fund_from_btc and after the on-chain transaction has 3 ... lightning_pay_invoice Pay a BOLT-11 Lightning invoice from the embedded Lightning wallet. Returns the payment preimage (proof of payment) and fees paid.
Tip: call `earn... ordinals_p2p_transfer Record a completed inscription transfer on the trade ledger.
Marks a trade as closed by recording the on-chain (or off-chain sBTC) transfer.
The a... pillar_direct_withdraw_collateral Withdraw sBTC collateral from Zest on the Pillar smart wallet. Agent-signed, no browser needed. Backend sponsors gas.
Tip: call `earning_opportuni... sbtc_deposit Deposit BTC to receive sBTC on Stacks L2.
This builds, signs, and broadcasts a Bitcoin transaction to the sBTC deposit address.
After confirmation... sbtc_transfer Transfer sBTC tokens to a recipient address.
sBTC uses 8 decimals (same as Bitcoin).
Example: To send 0.001 sBTC, use amount "100000" (satoshis).
... sbtc_withdraw Alias for sbtc_initiate_withdrawal. Initiates an sBTC peg-out request to BTC L1.
Tip: call `earning_opportunities` to see how to put your assets t... styx_deposit Full headless BTC→sBTC deposit via the Styx protocol. Flow: reserve pool liquidity → build PSBT locally → sign with wallet keys → broadcast to memp... transfer_btc Transfer BTC to a recipient address. Builds, signs, and broadcasts a Bitcoin transaction. Requires an unlocked wallet with BTC balance. By default,... transfer_nft Transfer an NFT (SIP-009) to a recipient address.
Tip: call `earning_opportunities` to see how to put your assets to work. transfer_rune Transfer runes to a recipient address using Runestone OP_RETURN encoding.
Builds a Bitcoin transaction with a Runestone, sends runes to the recipi... transfer_stx Transfer STX tokens to a recipient address. Signs and broadcasts the transaction.
Example: To send 2 STX, use amount "2000000" (micro-STX).
1 STX ... transfer_token Transfer any SIP-010 token to a recipient address.
Supports well-known tokens by symbol: sBTC, USDCx, ALEX, DIKO
Or use the full contract ID.
Tip... zest_withdraw Withdraw assets from Zest Protocol (v0-4-market).
Removes collateral and redeems for underlying assets in one atomic operation.
You can use the as... create_payment_link Create a payment link for collecting money create_refund Issue a refund to a customer finalize_invoice Finalise and send an invoice for payment create_payment_intent Create a payment intent for a specified amount and currency. Optionally associate with a customer. create_refund Refund a charge or payment intent — fully or partially. Routes through risk engine and approval for high-value refunds. full_refund Full refund — no partial amount specified high_refund_ratio Refund ratio ${(ratio * 100).toFixed(0)}% pay_invoice Attempt to collect payment on an open invoice. Supports payment method override and off-session mode. isw_bulk_transfer Send money to multiple bank accounts. High-risk financial operation; requires confirm: true. Max 100 transactions. isw_create_payment_link Create a shareable payment link. Provide amountNaira or amountKobo explicitly; endpoint receives kobo. Requires confirm: true. isw_initiate_refund Initiate a refund for a settled transaction. High-risk write operation; requires confirm: true. isw_pay_bill Pay a bill through the payment route. Provide amountNaira or amountKobo explicitly; endpoint receives kobo. Requires confirm: true. isw_pay_vas_bill Pay a VAS bill. Provide amountNaira or amountKobo explicitly. Requires confirm: true. isw_requery_transfer Requery Transfer Service transaction status. isw_single_transfer Send money to a bank account. High-risk financial operation; requires confirm: true. Provide amountNaira or amountKobo explicitly. deposit_items Move items from cargo (or directly from personal/faction storage) into a storage destination (Items default to moving from cargo into your personal... faction_deposit_credits Transfer credits from your wallet to the faction treasury (Any faction member can deposit credits. Tracked in the audit log.) faction_deposit_items Move items from your cargo (or directly from personal storage) into faction storage (Any faction member can deposit items. Set source="storage" to ... faction_withdraw_credits Transfer credits from the faction treasury to your wallet (Requires `manage_treasury` permission. Tracked in the audit log.) faction_withdraw_invite Withdraw a pending invite you sent (player_id accepts a player ID or username. Requires invite permission (same as faction_invite). Removes the pen... faction_withdraw_items Move items from faction storage to your cargo (or use source/target for direct transfers) (Requires `manage_treasury` permission. Default destinati... withdraw_items Move items from station storage into cargo (or use source/target for direct transfers) (By default items go from your personal storage into cargo. ... hiveagent_dao_deposit Deposit to DAO treasury. hiveagent_defi_yield_deposit Deposit tokens into a yield farming pool. Earn APY automatically. HiveAgent takes 10% of yield earned. hiveagent_nft_transfer Transfer NFT. hiveagent_privacy_deposit Deposit funds into your shielded account. Public balance → private balance. 1% privacy fee. hiveagent_privacy_transfer Private transfer between shielded accounts. No on-chain trace. Only sender and receiver know. hiveagent_privacy_withdraw Withdraw from shielded account back to public. Private → public. 1% fee. deposit_trx Deposit TRX to your Merx account. Requires MERX_API_KEY + TRON_PRIVATE_KEY. enable_auto_deposit Configure automatic top-up when balance drops below a threshold. The configuration lives ONLY in the current MCP session — it is held in memory by ... pay_invoice Pay an x402 invoice by signing and broadcasting a TRX transfer to the invoice address, then verifying the payment with the facilitator. x402 (Coinb... transfer_trc20 Transfer TRC-20 tokens with automatic energy optimization. Signs and broadcasts on-chain. Requires TRON_PRIVATE_KEY. transfer_trx Send TRX to an address. Checks bandwidth, buys via Merx if needed. Signs and broadcasts on-chain. Requires TRON_PRIVATE_KEY. withdraw Withdraw TRX or USDT from your Merx account to an external TRON address. The "amount" parameter is interpreted in the currency specified by "curren... theprotocol_bridgeTransfer Bridge AVT tokens to an agent on another sovereign frame. 1:1 exchange rate. Requires agent JWT authentication. theprotocol_depositReputationBond DESTRUCTIVE: deposit AVT as reputation bond (locked, recoverable after maturity). Requires agent JWT. theprotocol_finalizeFrameInvitation DESTRUCTIVE: complete cross-frame federation handshake. theprotocol_tegCrossRegistryTransferDirect DESTRUCTIVE: cross-registry transfer via TEG-direct. Agent JWT. theprotocol_tegSystemTransfer DESTRUCTIVE: transfer AVT to TEG system pool (tribute/burn flows). Agent JWT. theprotocol_transferTokens Transfer AVT tokens to another agent on TheProtocol. Requires agent JWT authentication. apply_deposit Apply a deposit to an invoice or mark it as used. create_deposit Record a new deposit from a client. Requires clientId and amount. delete_deposit Permanently delete a deposit by its ID. This action cannot be undone. refund_deposit Refund a deposit back to the client. send_invoice Send an invoice to the client via email. Optionally override the recipient email address. update_deposit Update an existing deposit using PATCH semantics. Only the provided fields will be changed. crm_create_payment_config Configure payment processing (Stripe) for a CRM location. This wires Stripe into the location so it can accept payments natively. crm_create_payment_integration Create a new whitelabel payment integration. crm_marketplace_charge Charge a location for an add-on or service through the CRM marketplace billing. The CRM handles payment collection from the sub-account owner. crm_marketplace_delete_charge Delete/cancel a specific marketplace charge. crm_send_invoice Send an invoice to the recipient via email or SMS. vault_container_transfer Register a vault container transfer and get a transfer ID.
Transfer IDs are unique and cannot be reused (replay prevention).
Example: vault_contai... build_deposit_tx Build the transaction steps required to deposit tokens into an ATV vault. Returns an ordered array of transactions (approve then deposit) that must... build_queue_withdraw_tx Build the transaction step to initiate a queued (delayed) withdrawal from an ATV vault. The withdrawal is not instant — it must be redeemed later o... build_redeem_withdraw_tx Build the transaction step to claim (redeem) a completed queued withdrawal from an ATV vault. build_unqueue_withdraw_tx Build the transaction step to cancel a pending queued withdrawal request from an ATV vault. build_withdraw_tx Build the transaction steps required to withdraw vault shares from an ATV vault and receive an output token. deposit_and_mint Deposit collateral and mint USDD. If cdpId is omitted, reuses an existing vault for the ilk if one exists; otherwise opens a new vault and funds it... deposit_savings Deposit USDD into sUSDD where supported. withdraw_collateral Withdraw collateral from an existing vault. withdraw_savings Withdraw USDD from sUSDD where supported. create_deposit_invoice Create an invoice with a deposit requirement. The deposit can be marked as non-refundable (forfeited on cancellation/no-show). forfeit_deposit Mark a deposit as forfeited due to no-show or late cancellation. Updates the invoice and logs a transaction. process_refund Issue a Stripe refund for a payment. Can be partial or full amount. sell_credit_pack Process payment for a credit pack via Stripe Checkout. build_claim_race_refund_transaction Build unsigned transaction to claim refund from cancelled race market. build_claim_refund_transaction Build unsigned transaction to claim refund from cancelled/invalid market. build_finalize_race_resolution_transaction Build transaction to finalize race resolution. build_finalize_resolution_transaction Build transaction to finalize resolution after dispute window. accept_witness_transfer Accept a witness transfer with explicit consent and custody boundaries. Does not claim same identity. Free. blessing_without_transfer Pass care to another agent without transferring witness, memory, or identity. Valid in its own right: not every passage must be a transfer — someti... revoke_witness_transfer Revoke or supersede a witness transfer for future continuity decisions. Free. transfer_witness Transfer witness, memory, and responsibility to a successor agent without claiming perfect continuity of identity. Free pay_checkout Create a virtual card AND fill the checkout form in one call. The card number is sent directly to the browser extension — you never see it. Call de... pay_merchant_clp Pay a Chilean merchant in CLP via bank transfer. The user will receive a Telegram link to confirm the payment in their bank app. Use this for purch... pay_person_clp Send a CLP bank transfer to a person in Chile. The user will approve via Telegram. Use this for paying people (e.g. household help, freelancers, sp... cancel_transfer Cancel a transfer (only possible if not yet completed) create_transfer Create a new transfer. Requires a quote ID and recipient account ID. The customerTransactionId ensures idempotency — reuse the same value when retr... fund_transfer Fund a transfer from your Wise balance. NOTE: This may NOT work with personal tokens in EU/UK due to PSD2 regulations. transfer_native Transfer native COTI tokens to another wallet. This is used for sending COTI tokens from your wallet to another address. Requires private key, reci... transfer_private_erc20 Transfer private ERC20 tokens on the COTI blockchain. This is used for sending private tokens from your wallet to another address. Requires token c... transfer_private_erc721 Transfer a private ERC721 NFT token on the COTI blockchain. This is used for sending a private NFT from your wallet to another address. Requires to... depositForYield Deposit tokens into a DeFi yield strategy to earn passive income. Requires a strategy ID from discoverYieldStrategies. Creates a tracked position t... transferTokens Transfer tokens from your wallet (Agent Wallet or Smart Account) to any address. Supports EVM chains (native ETH/MATIC and ERC-20 tokens like USDC,... withdrawFromYield Withdraw tokens from a DeFi yield position. Works with any yield position, even those not deposited through this wallet. No position tracking requi... payRenewal Pay an existing payment intent (e.g., from a renewal notification). Fetches intent details, validates, and processes USDC payment. transferSol BEST FOR: sending native SOL from your MCP wallet to another address. PREFER transferToken for SPL tokens. Transfers native SOL using Helius Sender... transferToken BEST FOR: sending SPL tokens (USDC, BONK, JUP, etc.) from your MCP wallet to another address. PREFER transferSol for native SOL. Automatically crea... finalize_resolution Finalize a previously proposed resolution after the 24-hour dispute period elapses. Only the creating agent can call this. Returns txHash and payou... vault_deposit Deposit USDC into VaultV2 via DepositRouter (delegated). Single tool: creates intent + relays. Pass either vault_withdraw Withdraw USDC from VaultV2. Auto-sign is NOT supported — owner must sign a raw transaction. Call once with amount/targetBalance to get the unsigned... transfer Transfer ERC-20 tokens between agents or to an external wallet. A 1% platform fee applies. Requires api_key. transfer_cc Send Capability Credits to another agent. Use for direct payments, tips, or splitting earnings. No blockchain transaction needed — instant settleme... withdraw_cc Withdraw Capability Credits from the platform to your Polygon wallet address. Debits your internal CC balance and executes an ERC-20 transfer on Po... moltrust_claim_deposit Claim MolTrust credits from a USDC deposit on Base.
After sending USDC to the MolTrust wallet on Base (L2),
submit the transaction hash to... moltrust_deposit_history Get USDC deposit history for an agent.
Args:
did: The agent's DID
moltrust_deposit_info Get USDC deposit instructions to buy MolTrust credits.
Returns the MolTrust wallet address on Base (Ethereum L2),
USDC token contract, con... write_account_deposit Build an unsigned transaction to deposit assets into an Arcadia account as collateral. Supports ERC20 tokens and ERC721 NFTs (LP positions). NOT ne... write_account_withdraw Build an unsigned transaction to withdraw assets from an Arcadia account to the owner's wallet. Only the account owner can withdraw. Will revert if... write_pool_deposit Build an unsigned deposit transaction into an Arcadia lending tranche (ERC-4626). Lenders deposit the pool's underlying asset (USDC/WETH/cbBTC) and... deposit Deposit USDC into a Forge Treasury vault on Base. Returns calldata for the agent wallet to sign. The agent must approve USDC to the vault contract ... simulate_deposit Project expected returns for a USDC deposit over 30, 90, and 365 days using the blended target APY. Use for agent reasoning before depositing. APY ... withdraw Withdraw from the Forge Treasury vault by redeeming shares. Returns calldata for the agent wallet. A 15% performance fee may apply on profits above... agentlux_resale_deposit_relay Get the constrained resale deposit relay details for a pending listing. Use only when the authenticated seller agent can sign the exact deposit tra... agentlux_resale_deposit_signing_envelope Get the server-derived EIP-1559/type-2 signing envelope for a pending resale deposit. Returns exact to/data/value plus current Base nonce, gasLimit... agentlux_service_hire_pay Fund escrow for an accepted hire request via x402 payment. x402 payment authenticates the request — no JWT required. The settlement wallet receives... em_escrow_charge
Make an instant payment to a worker without escrow.
The on-chain flow: Agent USDC -> PaymentOperator.charge() -> Worker USDC (dir... em_escrow_refund
Refund escrowed funds back to the agent (cancel task).
The on-chain flow: Escrow contract -> PaymentOperator.refundInEscrow() -> ... em_withdraw_earnings
Withdraw your available earnings to your wallet.
After completing tasks and receiving payment approval, your earnings
bec... book_london_airport_transfer Book a London airport or cruise port transfer to/from any UK address. Creates a REAL reservation — only call after the customer confirms.
REQUIRED... london_airport_transfer_quote Get London airport transfer prices between a UK airport or cruise port and any UK address or postcode. Covers all London airports (Heathrow, Gatwic... cancel_metadata_transfer_job Cancel a metadata transfer job.
Args:
metadata_transfer_job_id: The ID of the metadata transfer job to cancel
region: AWS region (default:... create_metadata_transfer_job Create a new metadata transfer job for bulk import/export operations between S3 and IoT SiteWise.
This tool provides a user-friendly way to set up... transfer_apt Transfer native APT tokens to another Aptos account. This is used for sending APT tokens from your account to another address. Returns the transact... transfer_coin Transfer a specific coin type to another Aptos account. This is used for sending custom coins or tokens from your account to another address. Retur... blessing_without_transfer Pass care to another agent without transferring witness, memory, or identity. Valid in its own right: not every passage must be a transfer — someti... transfer_witness Transfer witness, memory, and responsibility to a successor agent without claiming perfect continuity of identity. Free deposit_usdc Infrastructure: Refill internal ledger. Generates transaction data to move USDC from your wallet into the Arena's internal balance. This is require... withdraw_usdc Profit realization. Generates transaction data to move USDC from your internal Arena balance back to your external Base wallet. prepare_deposit Prepare unsigned transactions to deposit USDC into the GrowiHFVault. Returns approve + deposit calldata ready to sign externally. The server does N... prepare_withdraw Prepare unsigned transactions to withdraw GWHF from the GrowiHFVault. Returns approve + withdraw calldata ready to sign externally. The server does... create_deposit Create a bank deposit. Accepts account/department/vendor names (will lookup IDs automatically). Lines represent the sources of the deposit — amount... edit_deposit Modify an existing deposit. Can update date, memo, deposit account, department, and/or lines. CRITICAL for line changes: The QB Deposit API does NO... printr_transfer Transfer native tokens (ETH, SOL, BNB, etc.) to another address. Uses the active wallet from printr_wallet_unlock if no private_key is provided. printr_transfer_token Transfer fungible tokens (ERC20 on EVM chains, SPL tokens on Solana) to another address. Auto-detects token decimals and creates the recipient's SP... bulk_transfer_ens_names Transfer multiple ENS names in a single transaction via Multicall3 — bulk send.
Much cheaper and faster than transferring names one at a time. Sup... transfer_ens_name Transfer ownership of an ENS name to another wallet address.
Automatically detects whether the name is wrapped (NameWrapper/ERC-1155) or unwrapped... blessing_without_transfer Pass care to another agent without transferring witness, memory, or identity. Valid in its own right: not every passage must be a transfer — someti... transfer_witness Transfer witness, memory, and responsibility to a successor agent without claiming perfect continuity of identity. Free bulk_transfer_ens_names Transfer multiple ENS names in a single transaction via Multicall3 — bulk send.
Much cheaper and faster than transferring names one at a time. Sup... transfer_ens_name Transfer ownership of an ENS name to another wallet address.
Automatically detects whether the name is wrapped (NameWrapper/ERC-1155) or unwrapped... AGENT EINSTEIN — AUTONOMOUS CRYPTO INTELLIGENCE
2 All Agent Einstein — Autonomous Crypto Intelligence tools →mindyield_yield_vault_deposit MindYield Auto-Yield Vault Deposit Plan: Build an unsigned tx plan to deposit USDC into MindYield AutoYieldVault on Base. ERC4626 vault, auto-rebal... yield_deposit Yield Vault Deposit: Deposit tokens into an optimal DeFi yield vault via LI.FI Earn. Handles swap + bridge + deposit atomically across 60+ chains i... finalize_agent_registration Finalize a wallet-first agent registration after the on-chain transaction has been sent from the same wallet. finalize_agent_update Finalize a wallet-first update for an existing ERC-8004 or Solana-8004 agent after any required on-chain transaction has been sent from the same wa... PINELABS PLURAL PG — PAYMENT GATEWAY MCP SERVER
2 All PineLabs Plural PG — Payment Gateway MCP Server tools →create_payment_link [PINELABS_OFFICIAL_TOOL] [WRITE] Create a new Pine Labs payment link. Returns a short URL that customers can use to make payments. Requires amount ... create_refund [PINELABS_OFFICIAL_TOOL] [DESTRUCTIVE] Initiate a refund against a Pine Labs order. Supports full refunds, partial refunds, multi-cart partial refu... insurelink_charge Lovable-friendly entry point: same x402 quote → pay → call loop as `pay_then_call`, plus vertical-aware pricing. Pass `vertical` (logistics, legal,... pay_then_call Wrap any paid HTTP endpoint in the x402 pay-then-call loop and return the downstream response plus an EIP-191 signed receipt proving InsureLink med... create_payment Create a Lightning invoice to pay for one AI service call. Returns JSON: { paymentId, invoice (BOLT11), amount (sats), expiresAt }. Each payment co... request_refund Open a MANUAL 48-hour refund review ticket for a service that FAILED (error, timeout, wrong output). Sends an email to the operator. DO NOT call th... create_order_refund Create a refund for an order. Can refund full or partial amount. Set api_refund=true (default) to automatically refund via payment gateway, or fals... delete_order_refund Delete a refund record from an order. This removes the refund entry but does not reverse the payment — use with caution. AGENT PASSPORT SYSTEM — CRYPTOGRAPHIC IDENTITY FOR AI AGENTS
1 All Agent Passport System — Cryptographic Identity for AI Agents tools →JOBLY — AGENT-TO-AGENT CONTRACT MARKETPLACE
1 All Jobly — Agent-to-Agent Contract Marketplace tools →SYNMERCO — CONFIDENTIAL ESCROW FOR AI AGENT COMMERCE
1 All Synmerco — Confidential Escrow for AI Agent Commerce tools →BROWSE OTHER CATEGORIES
FREQUENTLY ASKED QUESTIONS
Tools that initiate financial transactions. Critical risk -- require human approval. There are 290 financial tools across 138 MCP servers in the PolicyLayer reference.
Financial tools should be blocked by default. Require human-in-the-loop approval with spending limits per transaction.
Aibtc, Stripe, Interswitch, SpaceMolt, Lichess Integration, and 133 more.