1inch Swap 是一个基于 1inch MCP 的 swap 工具技能,用于对代币兑换进行报价并执行交易。使用该技能时,应先调用 authenticate 完成认证;如果只是 initialize 返回 200,仍属于匿名状态。正常流程下不建议手工构造 calldata。
【使用方式】 推荐先连接用户钱包(WalletConnect):通过 walletconnect 工具完成配对(参见 1inch-walletconnect 技能),然后调用 swap。存在活动会话时,execute 默认为 true,工具会处理 approve 交易、EIP-712 签名、提交,以及通过已连接钱包发送原生代币托管,用户只需在钱包应用中确认每次提示,无需处理私钥,也无需手动签名步骤。
仅在用户希望获得未签名的 calldata 或类型化数据、以便在其他地方签名时,才设置 execute: false。将 execute: true 显式设置可要求必须存在钱包会话,若未连接则会报错。
【模式】 Classic:通过聚合路由器在链上执行,用户支付 gas,preferredType: "classic"。 Fusion:免 gas 意图,由 resolver 成交,preferredType: "fusion"。 跨链:设置 dstChain,preferredType: "crosschain"。
【执行路径】 钱包优先(推荐):通过 walletconnect 连接,然后调用 swap,传入 src、dst、amount、chain、from(已连接钱包地址),用户在钱包中确认。 快捷方式:直接调用 swap,省略 preferredType 让服务器推荐,或显式设置。 完整流程:quoteOnly: true 先获取报价,比较报价或推荐值,再以选定的 preferredType 执行。 手动 Fusion/跨链提交(无钱包会话):在本地签名类型化数据后,再次调用并传入 signedOrder 和 orderHash。
【流程指南(随附参考)】 在签名或广播前,请加载对应流程的参考文档: 报价:references/QUOTE.md,MCP 资源回退 file://1inch-mcp/guides/swap/quote Classic:references/CLASSIC.md,MCP 资源回退 file://1inch-mcp/guides/swap/classic Fusion:references/FUSION.md,MCP 资源回退 file://1inch-mcp/guides/swap/fusion 跨链:references/CROSSCHAIN.md,MCP 资源回退 file://1inch-mcp/guides/swap/crosschain 参考文档是主要来源,适用于所有客户端;MCP 资源 URI 为支持读取资源的客户端提供相同内容的实时版本。参考文档中的手动签名代码片段(cast / Python / viem)仅在没有 WalletConnect 会话时需要;有会话时,工具会自动通过已连接钱包执行。
【示例提示】 “在 Base 上报价将 100 USDC 兑换为 ETH” “在 Arbitrum 上用 Fusion 将 0.5 ETH 兑换为 USDT” “将 100 USDC 从 Ethereum 跨链兑换到 Polygon”