Fuse Network
MCP server for Fuse Network: balances, tokens, staking, DeFi data, swaps and on-chain transactions.
사용해야 할까요
품질 및 안전성
발견 사항 (13)
- LOWfuse_get_gas_price에서
- LOWfuse_get_staked_tokens에서
- LOWfuse_get_token_price_history에서
- LOWfuse_trade_indicative_price에서
- LOWfuse_get_account_abstraction_info에서
- LOWfuse_notification_create_webhook에서
- LOWfuse_notification_list_project_webhooks에서
- LOWfuse_notification_update_webhook에서
- LOWfuse_notification_delete_webhook에서
- LOWfuse_notification_add_addresses에서
도구 정의와 프로토콜 준수에 대한 자동 분석을 기반으로 합니다.
컨텍스트 비용
이는 서버의 도구가 모델의 컨텍스트에 로드될 때마다 소비되는 대략적인 토큰 수입니다. 수치가 높을수록 다른 작업에 사용할 수 있는 주의가 줄어듭니다.
설치
원클릭 설치
`claude_desktop_config.json` 파일에 다음을 추가하세요:
{
"mcpServers": {
"mcp": {
"url": "https://mcp.fuse.io/mcp"
}
}
}원격 엔드포인트
https://mcp.fuse.io/mcpstreamable-http할 수 있는 일
도구 목록
도구 (50)
🟢fuse_get_balance(address, tokenAddress)
Returns the native FUSE balance for an address, or an ERC-20 token balance when `tokenAddress` is supplied.
입력 스키마
{
"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.
입력 스키마
{
"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.
입력 스키마
{
"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.
입력 스키마
{
"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.
입력 스키마
{
"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.
입력 스키마
{
"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.
입력 스키마
{
"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.
입력 스키마
{
"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.
입력 스키마
{
"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.
입력 스키마
{
"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.
입력 스키마
{
"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.
입력 스키마
{
"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.
입력 스키마
{
"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.
입력 스키마
{
"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.
입력 스키마
{
"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.
입력 스키마
{
"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.
입력 스키마
{
"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.
입력 스키마
{
"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).
입력 스키마
{
"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`.
입력 스키마
{
"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`.
입력 스키마
{
"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`.
입력 스키마
{
"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`.
입력 스키마
{
"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`.
입력 스키마
{
"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`.
입력 스키마
{
"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`.
입력 스키마
{
"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.
입력 스키마
{
"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`.
입력 스키마
{
"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.
입력 스키마
{
"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).
입력 스키마
{
"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 }`).
입력 스키마
{
"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.
입력 스키마
{
"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.
입력 스키마
{
"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.
입력 스키마
{
"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.
입력 스키마
{
"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.
입력 스키마
{
"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`.
입력 스키마
{
"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.
입력 스키마
{
"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.
입력 스키마
{
"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.
입력 스키마
{
"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`.
입력 스키마
{
"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.
입력 스키마
{
"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.
입력 스키마
{
"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.
입력 스키마
{
"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.
입력 스키마
{
"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.
입력 스키마
{
"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.
입력 스키마
{
"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.
입력 스키마
{
"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`.
입력 스키마
{
"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.
입력 스키마
{
"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#"
}커뮤니티
증거