FortFi Treasury MCP
What this MCP does
Provides policy-controlled crypto treasury operations across chains, including wallets, payments, token discovery, swaps, bridges, trading data, approvals, and customer vaults.
Tools
Input schema
{'type': 'object', 'required': ['inviteId'], 'properties': {'inviteId': {'type': 'string', 'description': 'Invite id from list_incoming_cosigner_invites'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['address', 'chainId'], 'properties': {'address': {'type': 'string', 'description': 'Wallet address (0x… or Solana base58)'}, 'chainId': {'type': 'string', 'description': 'FortFi chain id, e.g. base-mainnet, ethereum-mainnet, robinhood-mainnet, solana-mainnet'}, 'nickname': {'type': 'string', 'description': 'Optional display name'}, 'challengeId': {'type': 'string', 'description': 'Agent GOVERN: challengeId from the first call'}, 'walletSignature': {'type': 'string', 'description': 'Agent GOVERN: funding-wallet signature'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['pendingApprovalId'], 'properties': {'pendingApprovalId': {'type': 'string'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['recipientId'], 'properties': {'challengeId': {'type': 'string', 'description': 'Governance challengeId from the first call'}, 'recipientId': {'type': 'string', 'description': 'Recipient id from list_recipients or add_recipient'}, 'walletSignature': {'type': 'string', 'description': 'Funding-wallet signature over the challenge message'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['challengeId'], 'properties': {'challengeId': {'type': 'string', 'description': 'The governance request id from list_governance_requests'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['idOrPid'], 'properties': {'idOrPid': {'type': 'string'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['pendingApprovalId'], 'properties': {'pendingApprovalId': {'type': 'string', 'description': 'Pending approval id from list_pending_cosigner_approvals or list_audit_log'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['fromWalletId', 'tokenAddress', 'requiredAmountSmallest', 'flow'], 'properties': {'flow': {'enum': ['cow_swap', 'fusion_bridge'], 'type': 'string', 'description': 'cow_swap = CoW VaultRelayer; fusion_bridge = 1inch Limit Order'}, 'fromWalletId': {'type': 'string', 'description': 'Source EVM wallet id'}, 'tokenAddress': {'type': 'string', 'description': 'Sell token contract (0x…)'}, 'requiredAmountSmallest': {'type': 'string', 'description': 'Required allowance in token smallest units (e.g. USDC 6 decimals)'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['proposalId'], 'properties': {'proposalId': {'type': 'string', 'description': 'Proposal UUID returned by a propose_* tool'}, 'confirmToken': {'type': 'string', 'description': 'Optional proposal-bound confirmation token when one was returned'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['customer'], 'properties': {'chainId': {'type': 'string', 'description': 'Chain for ad-hoc sessions (default base-mainnet)'}, 'customer': {'type': 'object', 'required': ['externalId'], 'properties': {'namespace': {'type': 'string', 'description': "Mapping namespace (default 'default')"}, 'externalId': {'type': 'string', 'description': 'Your customer id (e.g. platform-customer-42)'}}, 'description': 'Your customer identity — vault is resolved per (namespace, externalId)', 'additionalProperties': False}, 'metadata': {'type': 'object', 'description': 'Optional metadata object'}, 'amountUsd': {'type': 'number', 'description': 'Ad-hoc price in USD (alternative to productSlug)'}, 'reference': {'type': 'string', 'description': 'Your order/session id, echoed on every webhook'}, 'description': {'type': 'string', 'description': 'Optional checkout note'}, 'productSlug': {'type': 'string', 'description': 'Price from an existing payment product (SKU)'}, 'idempotencyKey': {'type': 'string', 'description': 'Safe retries — same key returns the same session'}, 'expiresInMinutes': {'type': 'number', 'description': 'Session TTL (default 60, product default wins if set)'}, 'amountSmallestUnit': {'type': 'string', 'description': 'Ad-hoc USDC amount in smallest units'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['clientRequestId', 'externalCustomerId', 'wallet'], 'properties': {'wallet': {'type': 'object', 'required': ['chainId', 'nickname'], 'properties': {'chainId': {'type': 'string', 'description': 'e.g. base, ethereum, solana'}, 'metadata': {'type': 'object', 'additionalProperties': {'type': 'string'}}, 'nickname': {'type': 'string'}, 'spendingPolicy': {'type': 'object'}}, 'description': 'Wallet to create or reuse for this customer'}, 'namespace': {'type': 'string', 'description': 'Optional mapping namespace (default: default)'}, 'credential': {'type': 'object', 'description': 'Optional vault-scoped credential to issue for this wallet'}, 'clientRequestId': {'type': 'string', 'description': 'Caller idempotency id (unique per provisioning attempt)'}, 'externalCustomerId': {'type': 'string', 'description': 'Your platform customer id (stable across retries)'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['url'], 'properties': {'url': {'type': 'string', 'description': "HTTPS callback URL on the merchant's server"}, 'description': {'type': 'string'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['walletMappingId', 'name'], 'properties': {'name': {'type': 'string', 'description': 'Product display name'}, 'slug': {'type': 'string', 'description': 'Optional URL slug (auto-generated if omitted)'}, 'imageUrl': {'type': 'string', 'description': 'HTTPS product image URL for checkout branding'}, 'amountUsd': {'type': 'number', 'description': 'Price in USD/USDC'}, 'description': {'type': 'string', 'description': 'Checkout subtitle shown to buyers'}, 'merchantSiteUrl': {'type': 'string', 'description': 'Merchant homepage for checkout branding (optional)'}, 'walletMappingId': {'type': 'string', 'description': 'USDC collection vault id'}, 'amountSmallestUnit': {'type': 'string', 'description': 'Alternative: amount in token smallest units'}, 'successRedirectUrl': {'type': 'string', 'description': 'HTTPS buyer redirect after pay (optional)'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['walletMappingId'], 'properties': {'metadata': {'type': 'object', 'description': 'Optional metadata object'}, 'amountUsd': {'type': 'number', 'description': 'Invoice amount in USD (1 USD = 1 USDC)'}, 'expiryDays': {'type': 'number', 'description': 'Days until expiry (default 30)'}, 'description': {'type': 'string', 'description': 'Optional invoice note'}, 'walletMappingId': {'type': 'string', 'description': 'Target collection vault id'}, 'externalReference': {'type': 'string', 'description': 'Optional external invoice id'}, 'amountSmallestUnit': {'type': 'string', 'description': 'USDC amount in smallest units (alternative to amountUsd)'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['idempotencyKey', 'items'], 'properties': {'items': {'type': 'array', 'items': {'type': 'object'}, 'description': 'Up to 20 provisioning items'}, 'idempotencyKey': {'type': 'string', 'description': 'Unique key (8–200 chars) — same key + body replays the job'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['name', 'access', 'vaultGrants'], 'properties': {'name': {'type': 'string', 'description': 'Credential label (2–100 chars)'}, 'access': {'enum': ['read_only', 'read_write'], 'type': 'string'}, 'expiresAt': {'type': 'string', 'description': 'ISO-8601 expiry (optional)'}, 'vaultGrants': {'type': 'array', 'items': {'type': 'object', 'required': ['walletId'], 'properties': {'walletId': {'type': 'string'}, 'dailyCapUsdMicros': {'type': 'string'}, 'perTxCapUsdMicros': {'type': 'string'}, 'monthlyCapUsdMicros': {'type': 'string'}, 'maxTransactionsPerDay': {'type': 'number'}}}, 'description': 'Explicit wallet grants with optional USD micro caps'}, 'agentPublicKey': {'type': 'string', 'description': 'Optional uncompressed P-256 public key (04… hex) for ECDSA auth'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['chainId'], 'properties': {'sort': {'type': 'string', 'description': 'gainers_1d, gainers_30d, gainers_90d, gainers_365d, losers_1d, losers_30d, losers_90d, losers_365d, market_cap, volume_1d (default market_cap)'}, 'limit': {'type': 'number', 'description': 'Max results (default 10, max 25)'}, 'query': {'type': 'string', 'description': "Optional name/symbol filter, e.g. 'USDC' or 'wrapped'"}, 'chainId': {'type': 'string', 'description': 'FortFi chain id, e.g. base-mainnet, ethereum-mainnet'}, 'verifiedOnly': {'type': 'boolean', 'description': 'Only verified tokens'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['idOrPid', 'expiryDays'], 'properties': {'idOrPid': {'type': 'string'}, 'expiryDays': {'type': 'number', 'description': 'New expiry horizon from now (1-365)'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['walletId'], 'properties': {'walletId': {'type': 'string', 'description': 'Wallet id from list_wallets'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'properties': {}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['orderHash'], 'properties': {'orderHash': {'type': 'string', 'description': 'Fusion+ order hash (0x…)'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['walletId'], 'properties': {'walletId': {'type': 'string', 'description': 'FortFi wallet id on hyperliquid-mainnet'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'properties': {'dex': {'oneOf': [{'type': 'string'}, {'type': 'array', 'items': {'type': 'string'}}], 'description': 'Filter dex ids. Comma-separated string or array.'}, 'band': {'type': 'number', 'description': 'Hysteresis band, default 1.0. A held name stays eligible while inside the top legsPerSide*(1+band); surfaced as hold_long / hold_short.'}, 'limit': {'type': 'number', 'description': 'Max symbols ranked by volume, default 60'}, 'scope': {'enum': ['core', 'all'], 'type': 'string', 'description': 'Default core'}, 'assetClass': {'oneOf': [{'type': 'string'}, {'type': 'array', 'items': {'enum': ['crypto', 'equity', 'commodity', 'fx', 'index', 'pre_ipo', 'other'], 'type': 'string'}}], 'description': 'Filter asset classes. Comma-separated string or array.'}, 'legsPerSide': {'type': 'number', 'description': 'Legs per side, default 6'}, 'lookbackDays': {'type': 'array', 'items': {'type': 'number'}, 'description': 'Trailing return windows in days. FIRST entry is the ranking signal. Default [14,7,30].'}, 'includeAllDesks': {'type': 'boolean', 'description': 'When true, same as scope=all'}, 'minDayVolumeUsd': {'type': 'number', 'description': 'Liquidity floor, default 2000000'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['symbol'], 'properties': {'symbol': {'type': 'string', 'description': 'Coin symbol, e.g. BTC'}, 'interval': {'enum': ['1m', '5m', '15m', '1h', '4h', '1d'], 'type': 'string', 'description': 'Candle interval (default 1h)'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'properties': {}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['walletId'], 'properties': {'walletId': {'type': 'string', 'description': 'FortFi wallet id on hyperliquid-mainnet'}, 'fillLimit': {'type': 'number', 'description': 'Recent fills to include (default 100, max 500)'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['walletId'], 'properties': {'limit': {'type': 'number', 'description': 'Max fills to return (default 200, max 2000)'}, 'walletId': {'type': 'string'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'properties': {'topic': {'enum': ['overview', 'tools', 'workflows', 'limits', 'pricing', 'all'], 'type': 'string', 'description': 'Default overview'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'properties': {'id': {'type': 'string'}, 'slug': {'type': 'string'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['idOrPid'], 'properties': {'idOrPid': {'type': 'string', 'description': 'Internal id or public pid'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'properties': {}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['conditionId'], 'properties': {'tokenId': {'type': 'string', 'description': 'Outcome token id for history (defaults to first outcome)'}, 'interval': {'enum': ['1h', '6h', '1d', '1w', 'max'], 'type': 'string', 'description': 'Price history window (default 1w)'}, 'conditionId': {'type': 'string', 'description': 'Market condition id'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'properties': {}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['jobId'], 'properties': {'jobId': {'type': 'string', 'description': 'Job id from create_provisioning_job'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['fromChainId', 'toChainId'], 'properties': {'toChainId': {'type': 'string', 'description': 'Destination chain id'}, 'fromChainId': {'type': 'string', 'description': 'Source chain id'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['chainId'], 'properties': {'period': {'enum': ['hour', 'day', 'week', 'month', '3months', '6months', 'year', '5years', 'max'], 'type': 'string', 'description': 'Chart window (default day)'}, 'address': {'type': 'string', 'description': 'Token contract address or Solana mint (fallback)'}, 'chainId': {'type': 'string', 'description': 'FortFi chain id, e.g. base-mainnet, ethereum-mainnet'}, 'fungibleId': {'type': 'string', 'description': 'Zerion fungible id returned by discover_tokens (preferred)'}, 'indicators': {'type': 'array', 'items': {'enum': ['return', 'drawdown', 'ema', 'rsi', 'macd', 'bollinger'], 'type': 'string'}, 'description': 'Optional indicators to return; defaults to all. REST callers may pass a comma-separated value.'}, 'includePoints': {'type': 'boolean', 'description': 'Include the raw chart points array. Default false.'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'properties': {}, 'additionalProperties': False}
Input schema
{'type': 'object', 'properties': {}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['chainId', 'vaultAddress'], 'properties': {'apyDays': {'type': 'number', 'description': 'APY history window, 7–365 days; default 30'}, 'chainId': {'type': 'string', 'description': 'FortFi yield-supported chain id'}, 'tvlDays': {'type': 'number', 'description': 'TVL history window, 7–365 days; default 90'}, 'vaultAddress': {'type': 'string', 'description': 'Vault address from list_yield_markets'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'properties': {'email': {'type': 'string', 'description': 'Human path: invitee email for Security UI co-signer provision'}, 'nickname': {'type': 'string', 'description': 'Optional nickname for this co-signer'}, 'challengeId': {'type': 'string', 'description': 'Governance challengeId from the first call'}, 'cosignerUserId': {'type': 'string', 'description': 'Agent path: FortFi userId of the agent to invite as co-signer'}, 'walletSignature': {'type': 'string', 'description': 'Funding-wallet signature over the challenge message'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'properties': {'email': {'type': 'string'}, 'nickname': {'type': 'string'}, 'challengeId': {'type': 'string'}, 'cosignerUserId': {'type': 'string'}, 'walletSignature': {'type': 'string'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'properties': {'category': {'enum': ['all', 'money', 'security', 'account'], 'type': 'string', 'description': 'Filter timeline category (default all)'}, 'walletId': {'type': 'string', 'description': 'Filter to one wallet mapping id'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'properties': {'limit': {'type': 'number', 'description': 'Max entries to return (default 20, max 100)'}, 'cursor': {'type': 'string', 'description': "Opaque cursor from a previous page's nextCursor. Passing this key (even as '') switches the response to { items, nextCursor }."}, 'walletId': {'type': 'string', 'description': 'Filter to audit entries for one wallet id'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'properties': {}, 'additionalProperties': False}
Input schema
{'type': 'object', 'properties': {}, 'additionalProperties': False}
Input schema
{'type': 'object', 'properties': {}, 'additionalProperties': False}
Input schema
{'type': 'object', 'properties': {'limit': {'type': 'number', 'description': 'Page size (default 30, max 100)'}, 'offset': {'type': 'number', 'description': 'Pagination offset (default 0)'}, 'search': {'type': 'string', 'description': 'Filter by coin symbol'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['walletId'], 'properties': {'walletId': {'type': 'string'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['walletId'], 'properties': {'walletId': {'type': 'string', 'description': 'FortFi wallet id on hyperliquid-mainnet'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'properties': {'dex': {'oneOf': [{'type': 'string'}, {'type': 'array', 'items': {'type': 'string'}}], 'description': 'Filter dex ids (core, xyz, io, para). Comma-separated string or array.'}, 'limit': {'type': 'number', 'description': 'Max rows by 24h volume (default all, max 500)'}, 'scope': {'enum': ['core', 'all'], 'type': 'string', 'description': 'Default core'}, 'assetClass': {'oneOf': [{'type': 'string'}, {'type': 'array', 'items': {'enum': ['crypto', 'equity', 'commodity', 'fx', 'index', 'pre_ipo', 'other'], 'type': 'string'}}], 'description': 'Filter asset classes. Comma-separated string or array.'}, 'includeAllDesks': {'type': 'boolean', 'description': 'When true, same as scope=all'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'properties': {}, 'additionalProperties': False}
Input schema
{'type': 'object', 'properties': {'limit': {'type': 'number', 'description': 'Max rows (default 50, max 200)'}, 'status': {'enum': ['pending', 'delivered', 'failed'], 'type': 'string'}, 'endpointId': {'type': 'string'}, 'paymentRequestId': {'type': 'string', 'description': 'Internal payment request UUID'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'properties': {}, 'additionalProperties': False}
Input schema
{'type': 'object', 'properties': {}, 'additionalProperties': False}
Input schema
{'type': 'object', 'properties': {'limit': {'type': 'number', 'description': 'Max rows (default 200, max 500)'}, 'walletMappingId': {'type': 'string', 'description': 'Optional payer vault filter'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'properties': {'status': {'enum': ['open', 'processing', 'partially_paid', 'paid', 'expired', 'cancelled'], 'type': 'string'}, 'walletMappingId': {'type': 'string', 'description': 'Optional vault filter'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'properties': {'walletMappingId': {'type': 'string', 'description': 'Optional collection vault filter'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'properties': {'limit': {'type': 'number', 'description': 'Max entries (default 10)'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'properties': {'limit': {'type': 'number', 'description': 'Max markets (default 25)'}, 'search': {'type': 'string', 'description': 'Optional question/slug filter'}, 'sortBy': {'type': 'string', 'description': 'volume_24hr (default), volume, liquidity, or end_date'}, 'afterCursor': {'type': 'string', 'description': 'Pagination cursor from a prior list response'}, 'sortDirection': {'enum': ['asc', 'desc'], 'type': 'string'}, 'minLiquidityUsd': {'type': 'number', 'description': 'Minimum liquidity USD (default 10000)'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['walletId'], 'properties': {'walletId': {'type': 'string', 'description': 'FortFi Polygon wallet id'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'properties': {}, 'additionalProperties': False}
Input schema
{'type': 'object', 'properties': {}, 'additionalProperties': False}
Input schema
{'type': 'object', 'properties': {'limit': {'type': 'number', 'description': 'Page size when paginating (default 50, max 200)'}, 'cursor': {'type': 'string', 'description': "Opaque cursor from a previous page's nextCursor. Passing this (even empty) switches the response to { items, nextCursor }."}, 'metadataKey': {'type': 'string', 'description': 'Filter wallets that include this metadata key (optional)'}, 'metadataValue': {'type': 'string', 'description': 'When set with metadataKey, require an exact value match'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'properties': {'asset': {'type': 'string', 'description': 'Asset symbol filter, default USDC'}, 'limit': {'type': 'number', 'description': 'Max vaults (default 15, max 25)'}, 'sortBy': {'type': 'string', 'description': 'net_apy (default) or tvl'}, 'chainId': {'type': 'string', 'description': 'FortFi chain id or omit for all yield chains'}, 'minTvlUsd': {'type': 'number', 'description': 'Minimum vault TVL in USD (default 500000)'}, 'verifiedOnly': {'type': 'boolean', 'description': 'If true, only FortFi curated vaults; default false = open discovery'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'properties': {}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['paymentRequestPid', 'fromWalletId'], 'properties': {'fromWalletId': {'type': 'string', 'description': 'Payer vault id (must match invoice chain)'}, 'paymentRequestPid': {'type': 'string', 'description': 'Public invoice pid from checkout URL or create_payment_request'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['targets'], 'properties': {'targets': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'weightPercent', 'kind'], 'properties': {'kind': {'enum': ['cash', 'yield', 'token', 'symbol'], 'type': 'string'}, 'label': {'type': 'string'}, 'symbol': {'type': 'string'}, 'weightPercent': {'type': 'number'}}}, 'description': 'Target allocation. Each row: { label, weightPercent, kind: cash|yield|token|symbol, symbol? }. Example: 40% cash, 10% yield, 30% UNI, 20% other tokens.'}, 'minLegUsd': {'type': 'number', 'description': 'Minimum leg size in USD (default 1)'}, 'driftThresholdPercent': {'type': 'number', 'description': 'Ignore drift below this % (default 5)'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['fromWalletId', 'toWalletId', 'sellSymbol', 'buySymbol', 'amountUsd'], 'properties': {'amountUsd': {'type': 'string'}, 'buySymbol': {'type': 'string'}, 'sellSymbol': {'type': 'string'}, 'toWalletId': {'type': 'string'}, 'fromWalletId': {'type': 'string'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['fromWalletId', 'sellSymbol', 'buySymbol', 'amountUsd'], 'properties': {'buyMint': {'type': 'string', 'description': 'Solana buy mint — omit for EVM'}, 'sellMint': {'type': 'string', 'description': 'Solana sell mint — omit for EVM'}, 'amountUsd': {'type': 'string', 'description': 'Approximate sell amount in USD'}, 'buySymbol': {'type': 'string'}, 'sellSymbol': {'type': 'string'}, 'toWalletId': {'type': 'string', 'description': 'Optional Solana receive wallet'}, 'fromWalletId': {'type': 'string', 'description': 'Source wallet id'}, 'buyTokenAddress': {'type': 'string', 'description': 'EVM buy token (0x…) — omit for Solana'}, 'slippagePercent': {'type': 'number', 'description': 'Optional Jupiter slippage 0–50'}, 'sellTokenAddress': {'type': 'string', 'description': 'EVM sell token (0x…) — omit for Solana'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['fromWalletId', 'toWalletId', 'sellSymbol', 'buySymbol', 'amountUsd'], 'properties': {'amountUsd': {'type': 'string', 'description': 'Bridge amount in USD'}, 'buySymbol': {'type': 'string', 'description': 'Buy token symbol'}, 'sellSymbol': {'type': 'string', 'description': 'Sell token symbol'}, 'toWalletId': {'type': 'string', 'description': 'Destination wallet id (different chain)'}, 'fromWalletId': {'type': 'string', 'description': 'Source wallet id'}, 'previewQuoteId': {'type': 'string', 'description': 'Optional — from preview_bridge_quote for explicit quote review before propose'}, 'buyTokenAddress': {'type': 'string', 'description': "Optional expected destination token contract; proposal fails if it differs from FortFi's verified chain resolution"}, 'sellTokenAddress': {'type': 'string', 'description': "Optional expected source token contract; proposal fails if it differs from FortFi's verified chain resolution"}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['chainId', 'walletName'], 'properties': {'chainId': {'type': 'string', 'description': 'FortFi chain id, e.g. base-mainnet, robinhood-mainnet, solana-mainnet'}, 'metadata': {'type': 'object', 'description': 'Optional flat string tags (max 20 keys), e.g. { "customer_id": "cust_123" }', 'additionalProperties': {'type': 'string'}}, 'walletName': {'type': 'string', 'description': 'Display name for the new wallet (2–64 chars)'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['walletId', 'amountUsd'], 'properties': {'perpDex': {'type': 'string', 'description': 'core | xyz | io | para (default core)'}, 'walletId': {'type': 'string'}, 'amountUsd': {'type': 'string'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['walletId', 'symbol'], 'properties': {'size': {'type': 'string', 'description': 'Optional; omit to close all'}, 'symbol': {'type': 'string'}, 'walletId': {'type': 'string'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['walletId', 'symbol'], 'properties': {'symbol': {'type': 'string'}, 'stopLoss': {'type': 'string'}, 'walletId': {'type': 'string'}, 'takeProfit': {'type': 'string'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['walletId', 'symbol', 'side'], 'properties': {'side': {'enum': ['long', 'short'], 'type': 'string'}, 'size': {'type': 'string', 'description': 'Coin-unit size (string). Use sizeUsd instead for USD notional.'}, 'symbol': {'type': 'string', 'description': 'e.g. BTC, ETH, xyz:TSLA, xyz:GOLD'}, 'sizeUsd': {'type': 'string', 'description': 'USD notional target (min $10 on HL). Preferred for agents.'}, 'leverage': {'type': 'number'}, 'stopLoss': {'type': 'string'}, 'walletId': {'type': 'string'}, 'takeProfit': {'type': 'string'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['walletId', 'amountUsd', 'sourceDex', 'destinationDex'], 'properties': {'walletId': {'type': 'string'}, 'amountUsd': {'type': 'string'}, 'sourceDex': {'type': 'string', 'description': 'core | spot | or any HIP-3 builder dex (xyz, io, para, mkts, …)'}, 'destinationDex': {'type': 'string', 'description': 'core | or any HIP-3 builder dex (not spot)'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['walletId', 'amountUsd'], 'properties': {'walletId': {'type': 'string'}, 'amountUsd': {'type': 'string'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['walletId', 'amountUsd'], 'properties': {'walletId': {'type': 'string'}, 'amountUsd': {'type': 'string'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['fromWalletId', 'lines'], 'properties': {'lines': {'type': 'array', 'items': {'type': 'object', 'required': ['recipientId', 'amountUsdc'], 'properties': {'memo': {'type': 'string'}, 'amountUsdc': {'type': 'string'}, 'recipientId': {'type': 'string'}}}}, 'dryRun': {'type': 'boolean', 'description': 'If true, validate only — no sends'}, 'fromWalletId': {'type': 'string'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['conditionId', 'outcomeIndex', 'price', 'sizeDisplay'], 'properties': {'price': {'type': 'string', 'description': 'Limit price 0-1 (e.g. 0.52)'}, 'conditionId': {'type': 'string', 'description': 'Market condition id from list_polymarket_markets'}, 'sizeDisplay': {'type': 'string', 'description': 'Share count (e.g. 10)'}, 'fromWalletId': {'type': 'string'}, 'outcomeIndex': {'type': 'number', 'description': '0-based outcome index'}, 'fromAccountQuery': {'type': 'string'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['conditionId'], 'properties': {'conditionId': {'type': 'string'}, 'fromWalletId': {'type': 'string'}, 'outcomeIndex': {'type': 'number'}, 'fromAccountQuery': {'type': 'string'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['conditionId', 'outcomeIndex', 'price', 'sizeDisplay'], 'properties': {'price': {'type': 'string'}, 'conditionId': {'type': 'string'}, 'sizeDisplay': {'type': 'string'}, 'fromWalletId': {'type': 'string'}, 'outcomeIndex': {'type': 'number'}, 'fromAccountQuery': {'type': 'string'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['recipients'], 'properties': {'recipients': {'type': 'array', 'items': {'type': 'object', 'required': ['address', 'chainId'], 'properties': {'address': {'type': 'string'}, 'chainId': {'type': 'string'}, 'nickname': {'type': 'string'}}}}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['accountId', 'nickname'], 'properties': {'nickname': {'type': 'string', 'description': 'New nickname (2–64 characters)'}, 'accountId': {'type': 'string', 'description': 'Wallet id from list_wallets'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['fromWalletId', 'toWalletId', 'sellMint', 'buyMint', 'sellSymbol', 'buySymbol', 'amountUsd'], 'properties': {'buyMint': {'type': 'string', 'description': 'Mint address of token to buy'}, 'sellMint': {'type': 'string', 'description': 'Mint address of token to sell'}, 'amountUsd': {'type': 'string', 'description': 'Sell amount in USD'}, 'buySymbol': {'type': 'string', 'description': 'Human-readable buy symbol'}, 'sellSymbol': {'type': 'string', 'description': 'Human-readable sell symbol'}, 'toWalletId': {'type': 'string', 'description': 'Solana wallet id to receive (can be same as fromWalletId)'}, 'fromWalletId': {'type': 'string', 'description': 'Solana wallet id to sell from'}, 'previewQuoteId': {'type': 'string', 'description': 'Optional — from preview_swap_quote for explicit quote review before propose'}, 'slippagePercent': {'type': 'number', 'description': 'Optional slippage tolerance 0–50 (default 0.5)'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['fromWalletId', 'sellTokenAddress', 'buyTokenAddress', 'sellSymbol', 'buySymbol', 'amountUsd'], 'properties': {'amountUsd': {'type': 'string', 'description': 'Sell amount in USD'}, 'buySymbol': {'type': 'string', 'description': 'Human-readable symbol of buy token, e.g. ETH'}, 'sellSymbol': {'type': 'string', 'description': 'Human-readable symbol of sell token, e.g. USDC'}, 'fromWalletId': {'type': 'string', 'description': 'Source wallet id (must be EVM, CoW-supported chain)'}, 'previewQuoteId': {'type': 'string', 'description': 'Optional — from preview_swap_quote for explicit quote review before propose'}, 'buyTokenAddress': {'type': 'string', 'description': 'Token contract address to buy (0x…)'}, 'slippagePercent': {'type': 'number', 'description': 'Optional slippage tolerance 0–50 (default 0.5)'}, 'sellTokenAddress': {'type': 'string', 'description': 'Token contract address to sell (0x…)'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['fromWalletId', 'tokenAddress', 'flow'], 'properties': {'flow': {'enum': ['cow_swap', 'fusion_bridge'], 'type': 'string'}, 'fromWalletId': {'type': 'string', 'description': 'EVM wallet id'}, 'tokenAddress': {'type': 'string', 'description': 'Token to approve (0x…)'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['fromWalletId'], 'properties': {'memo': {'type': 'string', 'description': 'Optional transfer note (max 256 chars)'}, 'amountUsdc': {'type': 'string', 'description': "Amount in USDC as a decimal string, e.g. '5.00'. Required for recipient sends; optional for invoice pay (defaults to remaining balance)."}, 'recipientId': {'type': 'string', 'description': 'Allowlisted recipient id (omit when using paymentRequestPid)'}, 'fromWalletId': {'type': 'string', 'description': 'Source wallet id from list_wallets'}, 'paymentRequestPid': {'type': 'string', 'description': 'Public invoice pid from checkout URL — pays merchant vault with pid-bound settlement'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['vaultAddress', 'amountUsd'], 'properties': {'amountUsd': {'type': 'string', 'description': 'USDC amount e.g. 100.00'}, 'assetSymbol': {'enum': ['USDC', 'USDT'], 'type': 'string'}, 'fromWalletId': {'type': 'string', 'description': 'FortFi wallet id'}, 'vaultAddress': {'type': 'string', 'description': 'Morpho vault contract (0x…)'}, 'fromAccountQuery': {'type': 'string', 'description': 'Wallet nickname (alternative to fromWalletId)'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['vaultAddress', 'amountDisplay'], 'properties': {'vaultName': {'type': 'string'}, 'assetSymbol': {'enum': ['USDC', 'USDT'], 'type': 'string'}, 'fromWalletId': {'type': 'string'}, 'vaultAddress': {'type': 'string'}, 'amountDisplay': {'type': 'string'}, 'fromAccountQuery': {'type': 'string'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'properties': {'dex': {'oneOf': [{'type': 'string'}, {'type': 'array', 'items': {'type': 'string'}}], 'description': 'Filter dex ids. Comma-separated string or array.'}, 'sort': {'enum': ['volume', 'pctChange', 'funding'], 'type': 'string', 'description': 'Default volume'}, 'limit': {'type': 'number', 'description': 'Default 20'}, 'scope': {'enum': ['core', 'all'], 'type': 'string', 'description': 'Default core'}, 'direction': {'enum': ['asc', 'desc'], 'type': 'string', 'description': 'Default desc'}, 'assetClass': {'oneOf': [{'type': 'string'}, {'type': 'array', 'items': {'enum': ['crypto', 'equity', 'commodity', 'fx', 'index', 'pre_ipo', 'other'], 'type': 'string'}}], 'description': 'Filter asset classes. Comma-separated string or array.'}, 'includeAllDesks': {'type': 'boolean', 'description': 'When true, same as scope=all'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'properties': {'limit': {'type': 'number'}, 'sortBy': {'type': 'string'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['chains'], 'properties': {'mode': {'enum': ['quick', 'standard', 'deep'], 'type': 'string'}, 'sorts': {'type': 'array', 'items': {'enum': ['gainers_1d', 'gainers_30d', 'gainers_90d', 'gainers_365d', 'volume_1d', 'market_cap'], 'type': 'string'}, 'description': 'Defaults to gainers_30d + volume_1d. Optional supplements: gainers_1d, gainers_90d, gainers_365d, market_cap.'}, 'chains': {'type': 'array', 'items': {'type': 'string'}}, 'periods': {'type': 'array', 'items': {'enum': ['hour', 'day', 'week', 'month', '3months', '6months', 'year', '5years', 'max'], 'type': 'string'}}, 'deepOptIn': {'type': 'boolean', 'description': 'Required when mode=deep'}, 'verifiedOnly': {'type': 'boolean', 'description': 'Default true'}, 'candidateLimit': {'type': 'number', 'description': 'Override merged candidate cap, max 100'}, 'minVolume1dUsd': {'type': 'number', 'description': 'Default 50000'}, 'minMarketCapUsd': {'type': 'number', 'description': 'Default 5000000'}, 'includeUnverified': {'type': 'boolean', 'description': 'Default false'}, 'chartCandidateLimit': {'type': 'number', 'description': 'Override chart cap, max 20'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'properties': {'asset': {'type': 'string', 'description': 'Asset symbol, default USDC'}, 'limit': {'type': 'number', 'description': 'Default 10, max 25'}, 'apyDays': {'type': 'number', 'description': 'Default 30'}, 'chainId': {'type': 'string', 'description': 'FortFi chain id or all'}, 'tvlDays': {'type': 'number', 'description': 'Default 90'}, 'minTvlUsd': {'type': 'number', 'description': 'Default 500000'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['walletAddress'], 'properties': {'challengeId': {'type': 'string', 'description': 'Governance challengeId from the first call'}, 'walletAddress': {'type': 'string', 'description': 'The backup wallet address (0x…) to register'}, 'walletSignature': {'type': 'string', 'description': 'CURRENT funding-wallet signature over the challenge message'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['pendingApprovalId'], 'properties': {'reason': {'type': 'string', 'description': 'Optional rejection reason'}, 'pendingApprovalId': {'type': 'string'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'properties': {'challengeId': {'type': 'string', 'description': 'Governance challengeId from the first call'}, 'walletSignature': {'type': 'string', 'description': 'Funding-wallet signature over the challenge message'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['membershipId'], 'properties': {'challengeId': {'type': 'string', 'description': 'Governance challengeId from the first call'}, 'membershipId': {'type': 'string', 'description': 'Membership id from list_cosigner_memberships'}, 'walletSignature': {'type': 'string', 'description': 'Funding-wallet signature over the challenge message'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['recipientId'], 'properties': {'recipientId': {'type': 'string', 'description': 'Recipient id from list_recipients'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['deliveryId'], 'properties': {'deliveryId': {'type': 'string', 'description': 'Delivery row id from list_merchant_webhook_deliveries'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'properties': {}, 'additionalProperties': False}
Input schema
{'type': 'object', 'properties': {'targets': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'weightPercent', 'kind'], 'properties': {'kind': {'enum': ['cash', 'yield', 'token', 'symbol'], 'type': 'string'}, 'label': {'type': 'string'}, 'symbol': {'type': 'string', 'description': 'Required when kind=symbol (e.g. UNI)'}, 'weightPercent': {'type': 'number'}}}, 'description': 'Optional target allocation. Each row: { label, weightPercent, kind: cash|yield|token|symbol, symbol? }. Weights must sum to 100.'}, 'minLegUsd': {'type': 'number', 'description': 'Minimum USD for rebalance legs (default 1)'}, 'driftThresholdPercent': {'type': 'number', 'description': 'Hysteresis band in percentage points (default 5)'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['inviteId'], 'properties': {'inviteId': {'type': 'string', 'description': 'Invite id from the invite you sent'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['credentialId'], 'properties': {'credentialId': {'type': 'string', 'description': 'Vault credential id'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'properties': {'coins': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Optional fixed symbol list (e.g. BTC, ETH). Omit for volume-filtered universe'}, 'holdBars': {'type': 'number', 'description': 'Hold period in bars. Default 24'}, 'interval': {'enum': ['1m', '5m', '15m', '1h', '4h', '1d'], 'type': 'string', 'description': 'Candle interval in research DB. Default 1h'}, 'strategy': {'enum': ['momentum_cross', 'trailing_return_rank'], 'type': 'string', 'description': 'Default momentum_cross'}, 'legsPerSide': {'type': 'number', 'description': 'Long/short leg count. Default 6'}, 'oosFraction': {'type': 'number', 'description': 'Out-of-sample tail fraction. Default 0.35'}, 'lookbackBars': {'type': 'number', 'description': 'Trailing return lookback. Default 336 on 1h (~14d)'}, 'minDayVolumeUsd': {'type': 'number', 'description': 'Universe liquidity floor when coins omitted. Default 1000000'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'properties': {'prod': {'type': 'boolean', 'description': 'Use production Supabase (default false in dev)'}, 'spec': {'type': 'object', 'description': 'Strategy Spec: name, universe {dex, minDayVolumeUsd, includeCoins, excludeCoins, maxSymbols}, interval, signal {type rank|pattern, factor|pattern, params}, portfolio, costs, validation'}}, 'additionalProperties': True}
Input schema
{'type': 'object', 'properties': {'dex': {'oneOf': [{'type': 'string'}, {'type': 'array', 'items': {'type': 'string'}}], 'description': 'Filter dex ids. Comma-separated string or array.'}, 'sort': {'enum': ['volume', 'pctChange', 'funding'], 'type': 'string', 'description': 'Default pctChange'}, 'limit': {'type': 'number', 'description': 'Default 40'}, 'scope': {'enum': ['core', 'all'], 'type': 'string', 'description': 'Default core'}, 'interval': {'enum': ['1m', '5m', '15m', '1h', '4h', '1d'], 'type': 'string', 'description': 'Default 1h'}, 'sideBias': {'enum': ['long', 'short', 'both'], 'type': 'string'}, 'direction': {'enum': ['asc', 'desc'], 'type': 'string', 'description': 'desc=gainers, asc=losers/short ideas'}, 'assetClass': {'oneOf': [{'type': 'string'}, {'type': 'array', 'items': {'enum': ['crypto', 'equity', 'commodity', 'fx', 'index', 'pre_ipo', 'other'], 'type': 'string'}}], 'description': 'Filter asset classes. Comma-separated string or array.'}, 'chartLimit': {'type': 'number', 'description': 'TA depth, default 10'}, 'indicators': {'type': 'array', 'items': {'enum': ['return', 'drawdown', 'ema', 'rsi', 'macd', 'bollinger'], 'type': 'string'}}, 'includeCharts': {'type': 'boolean'}, 'includeAllDesks': {'type': 'boolean', 'description': 'When true, same as scope=all'}, 'minDayVolumeUsd': {'type': 'number', 'description': 'Default 1000000'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['chains'], 'properties': {'mode': {'enum': ['quick', 'standard', 'deep'], 'type': 'string'}, 'sorts': {'type': 'array', 'items': {'enum': ['gainers_1d', 'gainers_30d', 'gainers_90d', 'gainers_365d', 'volume_1d', 'market_cap'], 'type': 'string'}, 'description': 'Defaults to gainers_30d + volume_1d. Add gainers_1d, gainers_90d, gainers_365d, or market_cap when requested.'}, 'chains': {'type': 'array', 'items': {'type': 'string'}}, 'deepOptIn': {'type': 'boolean', 'description': 'Required when mode=deep'}, 'verifiedOnly': {'type': 'boolean', 'description': 'Default true'}, 'candidateLimit': {'type': 'number', 'description': 'Override merged candidate cap, max 100'}, 'minVolume1dUsd': {'type': 'number', 'description': 'Default 50000'}, 'minMarketCapUsd': {'type': 'number', 'description': 'Default 5000000'}, 'includeUnverified': {'type': 'boolean', 'description': 'Default false; unverified results are labeled and need execution opt-in'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'properties': {'limit': {'type': 'number', 'description': 'Page size (default 50, max 100)'}, 'query': {'type': 'string', 'description': 'Free-text search'}, 'access': {'enum': ['read_only', 'read_write'], 'type': 'string'}, 'cursor': {'type': 'string', 'description': 'Pagination cursor'}, 'status': {'enum': ['active', 'revoked'], 'type': 'string'}, 'walletId': {'type': 'string', 'description': 'Filter by vault wallet id'}, 'metadataKey': {'type': 'string', 'description': 'Exact metadata key (requires metadataValue)'}, 'metadataValue': {'type': 'string', 'description': 'Exact metadata value (requires metadataKey)'}, 'credentialKind': {'enum': ['treasury', 'vault'], 'type': 'string'}, 'externalCustomerId': {'type': 'string', 'description': 'Exact external customer id'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['query'], 'properties': {'limit': {'type': 'number'}, 'query': {'type': 'string', 'description': 'Search text'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'properties': {'limit': {'type': 'number', 'description': 'Page size (default 50, max 100)'}, 'query': {'type': 'string', 'description': 'Free-text search'}, 'cursor': {'type': 'string', 'description': 'Pagination cursor from prior response'}, 'chainId': {'type': 'string', 'description': 'Exact chain filter'}, 'metadataKey': {'type': 'string', 'description': 'Exact metadata key (requires metadataValue)'}, 'metadataValue': {'type': 'string', 'description': 'Exact metadata value (requires metadataKey)'}, 'credentialAccess': {'enum': ['read_only', 'read_write'], 'type': 'string', 'description': 'Filter by linked credential access mode'}, 'credentialStatus': {'enum': ['active', 'revoked'], 'type': 'string', 'description': 'Filter by linked credential status'}, 'externalCustomerId': {'type': 'string', 'description': 'Exact external customer id'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['endpointId'], 'properties': {'endpointId': {'type': 'string'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['rules'], 'properties': {'rules': {'type': 'array', 'items': {'type': 'object'}}, 'challengeId': {'type': 'string', 'description': 'Governance challengeId (only needed when weakening rules)'}, 'walletSignature': {'type': 'string', 'description': 'Funding-wallet signature over the challenge message'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['credentialId', 'name', 'access', 'vaultGrants'], 'properties': {'name': {'type': 'string'}, 'access': {'enum': ['read_only', 'read_write'], 'type': 'string'}, 'expiresAt': {'type': 'string', 'description': 'ISO-8601 expiry, or null to clear'}, 'vaultGrants': {'type': 'array', 'items': {'type': 'object', 'required': ['walletId'], 'properties': {'walletId': {'type': 'string'}, 'dailyCapUsdMicros': {'type': 'string'}, 'perTxCapUsdMicros': {'type': 'string'}, 'monthlyCapUsdMicros': {'type': 'string'}, 'maxTransactionsPerDay': {'type': 'number'}}}}, 'credentialId': {'type': 'string', 'description': 'Vault credential id'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['accountId', 'metadata'], 'properties': {'metadata': {'type': 'object', 'description': 'Full metadata object, e.g. { "customer_id": "cust_123", "agent_id": "ag_1" }', 'additionalProperties': {'type': 'string'}}, 'accountId': {'type': 'string', 'description': 'Wallet id from list_wallets'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['fromWalletId', 'lines'], 'properties': {'lines': {'type': 'array', 'items': {'type': 'object', 'required': ['recipientId', 'amountUsdc'], 'properties': {'memo': {'type': 'string'}, 'amountUsdc': {'type': 'string', 'description': 'Decimal USD amount e.g. 125.50'}, 'recipientId': {'type': 'string'}}}}, 'fromWalletId': {'type': 'string', 'description': 'Wallet id from list_wallets'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['recipients'], 'properties': {'recipients': {'type': 'array', 'items': {'type': 'object', 'required': ['address', 'chainId'], 'properties': {'address': {'type': 'string'}, 'chainId': {'type': 'string'}, 'nickname': {'type': 'string'}}}}}, 'additionalProperties': False}
Recent tool changes
Similar MCP servers
Gate DEX MCP
Supports wallet authentication, blockchain RPC access, token and market data, transaction construction, transfers, swaps, approva…
Tokenbooks - crypto and fiat accounting and payments
Maintains double-entry accounting for crypto and fiat portfolios, including wallet synchronization, transaction classification, c…
xrploracle
Provides XRPL intelligence for payments, accounts, DEX and AMM liquidity, escrows, NFTs, validators, issued-token compliance, and…
Liquid Agent
Provides USDC bridge quotes and tracking, cross-chain balance checks, gas sponsorship information, tokenized stock portfolio oper…
Inferventis MCP Server
Provides financial calculations, stock and cryptocurrency prices, currency conversion, banking transactions, and Stripe payment d…
Bity
Connects to Bity accounts for cryptocurrency and fiat balances, market tickers, order books, trades, open orders, executed orders…
wallet
Provides account balances, stock-token prices and quotes, USDG trade information, and on-chain payment settlement records.
SAP MCP Server
Provides an MCP gateway connecting SAP-related tools with Solana, DeFi, decentralized identity, and x402 payments.