Fuse Network
MCP server for Fuse Network: balances, tokens, staking, DeFi data, swaps and on-chain transactions.
¿Debería usar esto?
Calidad y seguridad
Hallazgos (13)
- LOWen fuse_get_gas_price
- LOWen fuse_get_staked_tokens
- LOWen fuse_get_token_price_history
- LOWen fuse_trade_indicative_price
- LOWen fuse_get_account_abstraction_info
- LOWen fuse_notification_create_webhook
- LOWen fuse_notification_list_project_webhooks
- LOWen fuse_notification_update_webhook
- LOWen fuse_notification_delete_webhook
- LOWen fuse_notification_add_addresses
Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.
Costo de contexto
Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.
Instalar
Instalación con un clic
Agrega esto a tu archivo `claude_desktop_config.json`:
{
"mcpServers": {
"mcp": {
"url": "https://mcp.fuse.io/mcp"
}
}
}Puntos de conexión remotos
https://mcp.fuse.io/mcpstreamable-httpQué puede hacer
Inventario de herramientas
Herramientas (50)
🟢fuse_get_balance(address, tokenAddress)
Returns the native FUSE balance for an address, or an ERC-20 token balance when `tokenAddress` is supplied.
Esquema de entrada
{
"type": "object",
"properties": {
"address": {
"type": "string",
"description": "EOA or contract address to query (0x-prefixed, EIP-55 or lowercase)."
},
"tokenAddress": {
"type": "string",
"description": "Optional ERC-20 token address. Omit to fetch the native FUSE balance."
}
},
"required": [
"address"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢fuse_get_transaction(hash)
Fetches a transaction by hash. Returns null if the transaction is not found.
Esquema de entrada
{
"type": "object",
"properties": {
"hash": {
"type": "string",
"description": "Transaction hash (0x-prefixed, 32 bytes)."
}
},
"required": [
"hash"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢fuse_get_receipt(hash)
Fetches the receipt for a mined transaction (status, gasUsed, logs). Returns null if the transaction is pending or unknown.
Esquema de entrada
{
"type": "object",
"properties": {
"hash": {
"type": "string",
"description": "Transaction hash (0x-prefixed, 32 bytes)."
}
},
"required": [
"hash"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢fuse_read_contract(address, functionName, args, abi)
Calls a view/pure function on a Fuse contract. ABI is auto-fetched from the verified Fuse explorer when not supplied.
Esquema de entrada
{
"type": "object",
"properties": {
"address": {
"type": "string",
"description": "Contract address."
},
"functionName": {
"type": "string",
"description": "Name of the view/pure function to call."
},
"args": {
"type": "array",
"items": {},
"description": "Positional arguments for the function (defaults to [])."
},
"abi": {
"type": "array",
"items": {},
"description": "Optional ABI override. If omitted, the verified ABI is fetched from the Fuse explorer."
}
},
"required": [
"address",
"functionName"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢fuse_get_token_metadata(tokenAddress)
Reads name, symbol, decimals, and totalSupply for an ERC-20 token deployed on Fuse.
Esquema de entrada
{
"type": "object",
"properties": {
"tokenAddress": {
"type": "string",
"description": "ERC-20 token contract address."
}
},
"required": [
"tokenAddress"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢fuse_get_gas_price
Returns the current Fuse network gas price (in wei and gwei) along with EIP-1559 fee suggestions when available.
Esquema de entrada
{
"type": "object",
"properties": {},
"$schema": "http://json-schema.org/draft-07/schema#"
}⚪fuse_resolve_ens(name)
Resolves an ENS name to its EVM address. ENS is not deployed on Fuse — resolution requires `ENS_RPC_URL` to be configured (typically pointing at Ethereum mainnet). Plain hex addresses are passed through.
Esquema de entrada
{
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "ENS name to resolve (e.g. `vitalik.eth`). Plain addresses are returned unchanged."
}
},
"required": [
"name"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢fuse_get_account_abstraction_info(smartAccountAddress, nonceKey)
Reads ERC-4337 state for a smart account on Fuse: deployment status, EntryPoint nonce, and the account's deposit balance at the EntryPoint. Paymaster eligibility is not evaluated in v0.1.
Esquema de entrada
{
"type": "object",
"properties": {
"smartAccountAddress": {
"type": "string",
"description": "Smart-account (ERC-4337) address — counterfactual or deployed."
},
"nonceKey": {
"type": "string",
"description": "Optional 192-bit nonce key as a decimal or 0x-prefixed hex string (defaults to 0)."
}
},
"required": [
"smartAccountAddress"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢fuse_list_wallet_tokens(walletAddress)
Lists all ERC-20 tokens held by a wallet on Fuse, enriched with Fusebox metadata (symbol, decimals, USD value). Powered by the Fusebox SDK BalancesModule.
Esquema de entrada
{
"type": "object",
"properties": {
"walletAddress": {
"type": "string",
"description": "Wallet address whose ERC-20 token portfolio should be listed."
}
},
"required": [
"walletAddress"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢fuse_list_wallet_nfts(walletAddress)
Lists all NFTs (ERC-721 / ERC-1155 collectibles) owned by a wallet on Fuse. Powered by the Fusebox SDK BalancesModule.
Esquema de entrada
{
"type": "object",
"properties": {
"walletAddress": {
"type": "string",
"description": "Wallet address whose NFT holdings should be listed."
}
},
"required": [
"walletAddress"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢fuse_get_staking_options
Lists every staking option supported by Fuse — token, APR, TVL, expiry, and the matching unstake token. Powered by the Fusebox SDK StakingModule.
Esquema de entrada
{
"type": "object",
"properties": {},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢fuse_get_staked_tokens(walletAddress)
Returns the active staking positions for a wallet — staked amount, USD value, earned rewards, and APR per position. Powered by the Fusebox SDK StakingModule.
Esquema de entrada
{
"type": "object",
"properties": {
"walletAddress": {
"type": "string",
"description": "Smart-wallet address whose active staking positions should be returned."
}
},
"required": [
"walletAddress"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢fuse_get_token_price(tokenAddress)
Returns the current USD price for an ERC-20 token tracked by Fusebox. Powered by the Fusebox SDK TradeModule.
Esquema de entrada
{
"type": "object",
"properties": {
"tokenAddress": {
"type": "string",
"description": "Address of the ERC-20 token whose USD price should be returned."
}
},
"required": [
"tokenAddress"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟡fuse_get_token_price_change(tokenAddress)
Returns the 24-hour percentage price change for an ERC-20 token tracked by Fusebox. Powered by the Fusebox SDK TradeModule.
Esquema de entrada
{
"type": "object",
"properties": {
"tokenAddress": {
"type": "string",
"description": "Address of the ERC-20 token whose 24-hour price change should be returned."
}
},
"required": [
"tokenAddress"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢fuse_get_token_price_history(tokenAddress, timeFrame)
Returns OHLC / interval price stats for an ERC-20 token over a week, month, or year. Powered by the Fusebox SDK TradeModule.
Esquema de entrada
{
"type": "object",
"properties": {
"tokenAddress": {
"type": "string",
"description": "Address of the ERC-20 token to fetch price history for."
},
"timeFrame": {
"type": "string",
"enum": [
"week",
"month",
"year"
],
"description": "Granularity / range for the price series."
}
},
"required": [
"tokenAddress",
"timeFrame"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢fuse_list_supported_tokens
Returns the catalogue of ERC-20 tokens tracked by Fusebox (tradable, indexed, priced). Powered by the Fusebox SDK TradeModule.
Esquema de entrada
{
"type": "object",
"properties": {},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢fuse_get_trade_quote(inputToken, outputToken, amount, exactIn)
Quotes a token swap on Fuse — expected output amount, route, and price impact. Read-only: returns the quote without submitting a trade. Powered by the Fusebox SDK TradeModule.
Esquema de entrada
{
"type": "object",
"properties": {
"inputToken": {
"type": "string",
"description": "Address of the token being sold."
},
"outputToken": {
"type": "string",
"description": "Address of the token being bought."
},
"amount": {
"type": "string",
"description": "Amount, expressed as a decimal string in the token's base units (wei for 18-decimal tokens)."
},
"exactIn": {
"type": "boolean",
"description": "When true (default), `amount` is the sell amount. When false, `amount` is the desired buy amount."
}
},
"required": [
"inputToken",
"outputToken",
"amount"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢fuse_get_user_operations(sender)
Returns the ERC-4337 UserOperation history for a smart account on Fuse, indexed via the Fusebox GraphQL service. Powered by the Fusebox SDK GraphQLModule.
Esquema de entrada
{
"type": "object",
"properties": {
"sender": {
"type": "string",
"description": "Smart-account address (UserOperation `sender`) to fetch history for."
}
},
"required": [
"sender"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟡fuse_notification_create_webhook(projectId, webhookUrl, eventType)
Create a Fusebox Notification webhook for a project. Requires `FUSEBOX_SECRET_API_KEY` (Notification API endpoints authenticate with both apiKey and API-SECRET).
Esquema de entrada
{
"type": "object",
"properties": {
"projectId": {
"type": "string",
"description": "Fuse Console project ID that owns the webhook."
},
"webhookUrl": {
"type": "string",
"format": "uri",
"description": "HTTPS URL that Fusebox will POST event payloads to."
},
"eventType": {
"type": "string",
"enum": [
"ALL",
"FUSE",
"ERC20",
"ERC721"
],
"description": "Event filter. `ERC721` also covers ERC1155 events. `ALL` subscribes to every event type."
}
},
"required": [
"projectId",
"webhookUrl",
"eventType"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢fuse_notification_get_webhook(webhookId)
Retrieve details of a single Fusebox Notification webhook. Requires `FUSEBOX_SECRET_API_KEY`.
Esquema de entrada
{
"type": "object",
"properties": {
"webhookId": {
"type": "string",
"description": "Webhook ID to retrieve."
}
},
"required": [
"webhookId"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢fuse_notification_list_project_webhooks(projectId)
List every Fusebox Notification webhook configured for a given project. Requires `FUSEBOX_SECRET_API_KEY`.
Esquema de entrada
{
"type": "object",
"properties": {
"projectId": {
"type": "string",
"description": "Project ID whose webhooks should be listed."
}
},
"required": [
"projectId"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟡fuse_notification_update_webhook(webhookId, webhookUrl, eventType)
Update a Fusebox Notification webhook's URL or event type. Requires `FUSEBOX_SECRET_API_KEY`.
Esquema de entrada
{
"type": "object",
"properties": {
"webhookId": {
"type": "string",
"description": "ID of the webhook to update."
},
"webhookUrl": {
"type": "string",
"format": "uri",
"description": "New webhook URL."
},
"eventType": {
"type": "string",
"enum": [
"ALL",
"FUSE",
"ERC20",
"ERC721"
],
"description": "Event filter (`ERC721` also covers ERC1155)."
}
},
"required": [
"webhookId",
"webhookUrl",
"eventType"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🔴fuse_notification_delete_webhook(webhookId)
Permanently delete a Fusebox Notification webhook. Destructive — the webhook stops receiving events. Requires `FUSEBOX_SECRET_API_KEY`.
Esquema de entrada
{
"type": "object",
"properties": {
"webhookId": {
"type": "string",
"description": "ID of the webhook to delete."
}
},
"required": [
"webhookId"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟡fuse_notification_add_addresses(webhookId, addresses)
Add one or more EVM addresses to a webhook's listening scope. Requires `FUSEBOX_SECRET_API_KEY`.
Esquema de entrada
{
"type": "object",
"properties": {
"webhookId": {
"type": "string",
"description": "ID of the webhook to extend."
},
"addresses": {
"type": "array",
"items": {
"type": "string"
},
"minItems": 1,
"description": "EVM addresses to start monitoring for this webhook."
}
},
"required": [
"webhookId",
"addresses"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🔴fuse_notification_remove_addresses(webhookId, addresses)
Remove EVM addresses from a webhook's listening scope. Requires `FUSEBOX_SECRET_API_KEY`.
Esquema de entrada
{
"type": "object",
"properties": {
"webhookId": {
"type": "string",
"description": "ID of the webhook to modify."
},
"addresses": {
"type": "array",
"items": {
"type": "string"
},
"minItems": 1,
"description": "EVM addresses to stop monitoring."
}
},
"required": [
"webhookId",
"addresses"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢fuse_notification_list_addresses(webhookId)
List every EVM address monitored by a given webhook. Requires `FUSEBOX_SECRET_API_KEY`.
Esquema de entrada
{
"type": "object",
"properties": {
"webhookId": {
"type": "string",
"description": "Webhook ID whose monitored addresses should be listed."
}
},
"required": [
"webhookId"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢fuse_smart_wallet_authenticate(hash, signature, ownerAddress, smartWalletAddress)
Exchange an EIP-191 signature for a JWT used as Bearer auth on Smart Wallet API calls (e.g. `fuse_smart_wallet_get_actions`). Signing happens client-side; this tool only submits the signed payload.
Esquema de entrada
{
"type": "object",
"properties": {
"hash": {
"type": "string",
"description": "Signed message hash (EIP-191)."
},
"signature": {
"type": "string",
"description": "EIP-191 signature produced by the EOA owner."
},
"ownerAddress": {
"type": "string",
"description": "EOA address that signed the hash (the smart wallet's owner)."
},
"smartWalletAddress": {
"type": "string",
"description": "Deployed smart contract wallet address."
}
},
"required": [
"hash",
"signature",
"ownerAddress",
"smartWalletAddress"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢fuse_smart_wallet_get_actions(jwt, page, limit, tokenAddress)
List the paginated action history (transfers, contract calls) of an authenticated smart wallet. The JWT comes from `fuse_smart_wallet_authenticate`.
Esquema de entrada
{
"type": "object",
"properties": {
"jwt": {
"type": "string",
"description": "Bearer JWT issued by `fuse_smart_wallet_authenticate`."
},
"page": {
"type": "integer",
"minimum": 1,
"description": "Pagination page (default 1)."
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 100,
"description": "Items per page (default 10)."
},
"tokenAddress": {
"type": "string",
"description": "Optional ERC-20 token address to filter actions by."
}
},
"required": [
"jwt"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}⚪fuse_trade_indicative_price(sellToken, buyToken, sellAmount, buyAmount, slippagePercentage, ...)
Returns an indicative price + route for a swap on Fuse (0x-style response). One of `sellAmount` / `buyAmount` must be provided.
Esquema de entrada
{
"type": "object",
"properties": {
"sellToken": {
"type": "string",
"description": "ERC-20 contract address of the token to sell."
},
"buyToken": {
"type": "string",
"description": "ERC-20 contract address of the token to buy."
},
"sellAmount": {
"type": "string",
"description": "Sell amount in base units (mutually exclusive with `buyAmount`)."
},
"buyAmount": {
"type": "string",
"description": "Desired buy amount in base units (mutually exclusive with `sellAmount`)."
},
"slippagePercentage": {
"type": "string",
"description": "Max slippage as a decimal string (e.g. `0.01` = 1%)."
},
"gasPrice": {
"type": "string",
"description": "Gas price override in wei."
},
"takerAddress": {
"type": "string",
"description": "Address of the trader (for validation)."
},
"excludedSources": {
"type": "string",
"description": "Comma-separated liquidity sources to exclude."
},
"includedSources": {
"type": "string",
"description": "Comma-separated liquidity sources to include."
},
"skipValidation": {
"type": "boolean"
},
"feeRecipient": {
"type": "string"
},
"buyTokenPercentageFee": {
"type": "string"
},
"enableSlippageProtection": {
"type": "boolean"
},
"priceImpactProtectionPercentage": {
"type": "string"
},
"feeRecipientTradeSurplus": {
"type": "string"
}
},
"required": [
"sellToken",
"buyToken"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}⚪fuse_trade_liquidity_sources
Returns the liquidity sources currently enabled for Fuse-chain trades (e.g. voltage.finance, sub-pools).
Esquema de entrada
{
"type": "object",
"properties": {},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟡fuse_trade_price_change_over_duration(tokenAddress, days)
Returns a token's price change over a custom day-count window (`{ priceChange, currentPrice, previousPrice }`).
Esquema de entrada
{
"type": "object",
"properties": {
"tokenAddress": {
"type": "string",
"description": "ERC-20 contract address of the token."
},
"days": {
"type": "integer",
"minimum": 1,
"description": "Number of days to look back when computing the price change."
}
},
"required": [
"tokenAddress",
"days"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟡fuse_explorer_query(module, action, params, method, body)
Generic dispatcher for the Fusebox Explorer API (`/api/v0/explorer/`). Pass `module` + `action` + any additional query params. Covers all 40+ etherscan-compatible endpoints including balances, logs, transactions, contract ABI/source, and the five contract-verify POST routes.
Esquema de entrada
{
"type": "object",
"properties": {
"module": {
"type": "string",
"description": "Etherscan-style API module: `account`, `block`, `contract`, `logs`, `stats`, `token`, `transaction`."
},
"action": {
"type": "string",
"description": "Action within the module — e.g. `balance`, `txlist`, `getabi`, `getLogs`, `eth_block_number`, `verify`."
},
"params": {
"type": "object",
"additionalProperties": {
"type": [
"string",
"number",
"boolean"
]
},
"description": "Additional query parameters (e.g. `address`, `fromBlock`, `toBlock`, `topic0`). Omit `module`, `action`, and `apiKey` — they're injected automatically."
},
"method": {
"type": "string",
"enum": [
"GET",
"POST"
],
"description": "HTTP method (default GET). Use POST only for the five `contract/verify*` actions, which also accept a JSON body."
},
"body": {
"type": "object",
"additionalProperties": {},
"description": "JSON body for POST verify-* actions."
}
},
"required": [
"module",
"action"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟡fuse_get_signer_address
Returns the EOA address controlled by the server's configured `FUSE_PRIVATE_KEY`. Use this before any write tool to confirm which account will pay gas and send transactions.
Esquema de entrada
{
"type": "object",
"properties": {},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟡fuse_send_native(to, amount, unit)
Submits a signed transaction transferring native FUSE from the server's signer to a recipient. Returns the transaction hash; use `fuse_get_receipt` to confirm inclusion.
Esquema de entrada
{
"type": "object",
"properties": {
"to": {
"type": "string",
"description": "Recipient address."
},
"amount": {
"type": "string",
"description": "Amount of FUSE to send (default unit: FUSE — pass `unit: \"wei\"` for raw wei)."
},
"unit": {
"type": "string",
"enum": [
"display",
"base"
],
"description": "`display` (default) treats `amount` as FUSE; `base` treats it as wei."
}
},
"required": [
"to",
"amount"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟡fuse_send_erc20(tokenAddress, to, amount, unit)
Submits a signed `ERC20.transfer(to, amount)` from the server's signer. Decimals are auto-fetched from the token; use `unit: "base"` to skip scaling.
Esquema de entrada
{
"type": "object",
"properties": {
"tokenAddress": {
"type": "string",
"description": "ERC-20 token contract address."
},
"to": {
"type": "string",
"description": "Recipient address."
},
"amount": {
"type": "string",
"description": "Amount to transfer. Default unit is the token's display unit (decimals auto-detected); pass `unit: \"base\"` to send raw base units."
},
"unit": {
"type": "string",
"enum": [
"display",
"base"
]
}
},
"required": [
"tokenAddress",
"to",
"amount"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟡fuse_write_contract(address, functionName, args, abi, valueWei)
Signs and submits a state-mutating contract call from the server's signer. ABI is auto-fetched from the Fuse explorer when not supplied. Returns the transaction hash.
Esquema de entrada
{
"type": "object",
"properties": {
"address": {
"type": "string",
"description": "Contract address."
},
"functionName": {
"type": "string",
"description": "State-mutating function to call."
},
"args": {
"type": "array",
"items": {},
"description": "Positional arguments (defaults to [])."
},
"abi": {
"type": "array",
"items": {},
"description": "Optional ABI override. If omitted, the verified ABI is fetched from the Fuse explorer."
},
"valueWei": {
"type": "string",
"description": "Native FUSE value to send with the call, in wei (for payable functions)."
}
},
"required": [
"address",
"functionName"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟡fuse_deploy_contract(bytecode, abi, args, valueWei, waitForReceipt)
Signs and submits a contract-deployment transaction using the server's signer. Returns the transaction hash, and the deployed contract address when `waitForReceipt: true`.
Esquema de entrada
{
"type": "object",
"properties": {
"bytecode": {
"type": "string",
"description": "Contract creation bytecode as a 0x-prefixed hex string."
},
"abi": {
"type": "array",
"items": {},
"description": "Contract ABI. Required so constructor arguments can be encoded correctly."
},
"args": {
"type": "array",
"items": {},
"description": "Constructor arguments (defaults to [])."
},
"valueWei": {
"type": "string",
"description": "Native FUSE to send with the deployment, in wei (payable constructors)."
},
"waitForReceipt": {
"type": "boolean",
"description": "When true, the tool waits for the deployment to be mined and includes the deployed address in the response (default false)."
}
},
"required": [
"bytecode",
"abi"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}⚪fuse_sign_message(message, encoding)
Signs a message with the server's signer using EIP-191 (`personal_sign`). Returns the 65-byte signature as hex. No on-chain transaction is submitted.
Esquema de entrada
{
"type": "object",
"properties": {
"message": {
"type": "string",
"description": "Message to sign. UTF-8 by default; pass `encoding: \"hex\"` for raw bytes (0x-prefixed)."
},
"encoding": {
"type": "string",
"enum": [
"utf8",
"hex"
],
"description": "`utf8` (default) or `hex` for raw bytes."
}
},
"required": [
"message"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}⚪fuse_sign_typed_data(domain, types, primaryType, message)
Signs a structured EIP-712 payload with the server's signer. Returns the 65-byte signature as hex. No on-chain transaction is submitted.
Esquema de entrada
{
"type": "object",
"properties": {
"domain": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"version": {
"type": "string"
},
"chainId": {
"type": "integer"
},
"verifyingContract": {
"type": "string"
},
"salt": {
"type": "string"
}
},
"additionalProperties": false,
"description": "EIP-712 domain separator object."
},
"types": {
"type": "object",
"additionalProperties": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"type": {
"type": "string"
}
},
"required": [
"name",
"type"
],
"additionalProperties": false
}
},
"description": "EIP-712 types map (exclude the `EIP712Domain` entry — it's derived from `domain`)."
},
"primaryType": {
"type": "string",
"description": "Name of the primary type to hash."
},
"message": {
"type": "object",
"additionalProperties": {},
"description": "Typed-data message conforming to `primaryType`."
}
},
"required": [
"domain",
"types",
"primaryType",
"message"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢fuse_smart_get_info
Returns the ERC-4337 smart-wallet address derived from the configured signer, plus whether the Fuse paymaster (gasless mode) is enabled.
Esquema de entrada
{
"type": "object",
"properties": {},
"$schema": "http://json-schema.org/draft-07/schema#"
}⚪fuse_smart_transfer_token(tokenAddress, to, amount, unit)
Submits an ERC-4337 UserOperation transferring a token (native FUSE or ERC-20) from the configured smart wallet. Gasless when `FUSE_USE_PAYMASTER=true`.
Esquema de entrada
{
"type": "object",
"properties": {
"tokenAddress": {
"type": "string",
"description": "Token contract address. Use the native-token sentinel `0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee` for FUSE."
},
"to": {
"type": "string",
"description": "Recipient address."
},
"amount": {
"type": "string",
"description": "Amount to transfer. Default unit is the token's display unit; pass `unit: \"base\"` for raw base units."
},
"unit": {
"type": "string",
"enum": [
"display",
"base"
]
}
},
"required": [
"tokenAddress",
"to",
"amount"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}⚪fuse_smart_transfer_nft(nftContractAddress, to, tokenId)
Submits an ERC-4337 UserOperation transferring an NFT (ERC-721 / ERC-1155) from the configured smart wallet to a recipient.
Esquema de entrada
{
"type": "object",
"properties": {
"nftContractAddress": {
"type": "string",
"description": "ERC-721 / ERC-1155 contract address."
},
"to": {
"type": "string",
"description": "Recipient address."
},
"tokenId": {
"type": "string",
"description": "NFT token ID (decimal or 0x-prefixed hex string)."
}
},
"required": [
"nftContractAddress",
"to",
"tokenId"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}⚪fuse_smart_approve_token(tokenAddress, spender, amount, unit)
Submits an ERC-4337 UserOperation calling `ERC20.approve(spender, amount)` from the configured smart wallet.
Esquema de entrada
{
"type": "object",
"properties": {
"tokenAddress": {
"type": "string",
"description": "ERC-20 token contract address."
},
"spender": {
"type": "string",
"description": "Address being granted spending allowance."
},
"amount": {
"type": "string",
"description": "Allowance amount. Default unit is the token's display unit; pass `unit: \"base\"` for raw base units. Use `\"max\"` to approve the uint256 maximum."
},
"unit": {
"type": "string",
"enum": [
"display",
"base"
]
}
},
"required": [
"tokenAddress",
"spender",
"amount"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}⚪fuse_smart_approve_nft(nftContractAddress, spender, tokenId)
Submits an ERC-4337 UserOperation calling `approve(spender, tokenId)` on an NFT contract from the configured smart wallet.
Esquema de entrada
{
"type": "object",
"properties": {
"nftContractAddress": {
"type": "string",
"description": "ERC-721 / ERC-1155 contract address."
},
"spender": {
"type": "string",
"description": "Address being granted approval for the token ID."
},
"tokenId": {
"type": "string",
"description": "NFT token ID (decimal or hex)."
}
},
"required": [
"nftContractAddress",
"spender",
"tokenId"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}⚪fuse_smart_approve_and_call(tokenAddress, spender, amount, unit, callData)
Atomically approves a token and invokes a follow-up call on the spender from the configured smart wallet. Common DeFi pattern.
Esquema de entrada
{
"type": "object",
"properties": {
"tokenAddress": {
"type": "string",
"description": "ERC-20 token contract address to approve."
},
"spender": {
"type": "string",
"description": "Contract that will receive the subsequent call."
},
"amount": {
"type": "string",
"description": "Allowance amount in the token's display unit (or base if `unit: \"base\"`)."
},
"unit": {
"type": "string",
"enum": [
"display",
"base"
]
},
"callData": {
"type": "string",
"description": "Encoded calldata to invoke on `spender` after approval (0x-prefixed hex)."
}
},
"required": [
"tokenAddress",
"spender",
"amount",
"callData"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}⚪fuse_smart_call_contract(to, valueWei, data)
Submits an ERC-4337 UserOperation invoking arbitrary calldata on a contract from the configured smart wallet. Use when you need full control over the encoded call.
Esquema de entrada
{
"type": "object",
"properties": {
"to": {
"type": "string",
"description": "Target contract address."
},
"valueWei": {
"type": "string",
"description": "Native FUSE to send with the call, in wei (default `0`)."
},
"data": {
"type": "string",
"description": "Encoded calldata (0x-prefixed hex)."
}
},
"required": [
"to",
"data"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}⚪fuse_smart_execute_batch(calls)
Submits a single ERC-4337 UserOperation that executes a sequence of contract calls atomically. Failed sub-calls revert the whole batch.
Esquema de entrada
{
"type": "object",
"properties": {
"calls": {
"type": "array",
"items": {
"type": "object",
"properties": {
"to": {
"type": "string",
"description": "Target contract address."
},
"value": {
"type": "string",
"description": "Native FUSE to send with the call, in wei (default `0`)."
},
"data": {
"type": "string",
"description": "Encoded calldata (0x-prefixed hex)."
}
},
"required": [
"to",
"data"
],
"additionalProperties": false
},
"minItems": 1,
"description": "Ordered list of contract calls to execute atomically as a single UserOp."
}
},
"required": [
"calls"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢fuse_smart_swap_tokens(inputToken, outputToken, inputAmount, exactIn)
Submits an ERC-4337 UserOperation executing a swap on Fuse via the Fusebox trade engine. Quote a swap first with `fuse_get_trade_quote` to preview the route.
Esquema de entrada
{
"type": "object",
"properties": {
"inputToken": {
"type": "string",
"description": "Address of the token being sold."
},
"outputToken": {
"type": "string",
"description": "Address of the token being bought."
},
"inputAmount": {
"type": "string",
"description": "Amount in base units (wei for 18-decimal tokens)."
},
"exactIn": {
"type": "boolean",
"description": "`true` (default) treats `inputAmount` as sell amount; `false` treats it as buy amount."
}
},
"required": [
"inputToken",
"outputToken",
"inputAmount"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢fuse_smart_stake_token(tokenAddress, tokenAmount)
Submits an ERC-4337 UserOperation that stakes a token using Fuse's staking module. List options first with `fuse_get_staking_options`.
Esquema de entrada
{
"type": "object",
"properties": {
"tokenAddress": {
"type": "string",
"description": "Token to stake (must match a `fuse_get_staking_options` entry)."
},
"tokenAmount": {
"type": "string",
"description": "Amount in base units (wei for 18-decimal tokens)."
}
},
"required": [
"tokenAddress",
"tokenAmount"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}⚪fuse_smart_unstake_token(tokenAddress, tokenAmount, unstakeTokenAddress)
Submits an ERC-4337 UserOperation that unstakes a token via Fuse's staking module.
Esquema de entrada
{
"type": "object",
"properties": {
"tokenAddress": {
"type": "string",
"description": "Original staking-token address."
},
"tokenAmount": {
"type": "string",
"description": "Amount to unstake, in base units."
},
"unstakeTokenAddress": {
"type": "string",
"description": "Receipt token address paired with the stake (`unStakeTokenAddress` from `fuse_get_staking_options`)."
}
},
"required": [
"tokenAddress",
"tokenAmount",
"unstakeTokenAddress"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}Comunidad
Evidencia