Cross-Chain Swap
Overview
Executes a cross-chain token swap — swapping a token on one chain for a different (or same) token on another chain. Delegates the full workflow to the cross-chain-executor agent, which handles quoting, route evaluation, safety checks, bridge monitoring, and destination confirmation.
When to Use
Activate when the user asks:
- "Swap ETH on Arbitrum for USDC on Base"
- "Cross-chain swap"
- "Buy USDC on Optimism using ETH from mainnet"
- "Move my ETH from Ethereum to Arbitrum and convert to USDC"
- "Swap tokens across chains"
- "Exchange X on chain A for Y on chain B"
Parameters
| Parameter |
Required |
Default |
Description |
| tokenIn |
Yes |
— |
Input token symbol or address on source chain |
| tokenOut |
Yes |
— |
Output token symbol or address on destination chain |
| amount |
Yes |
— |
Amount to swap (human-readable, e.g., "1.5" or "1000") |
| sourceChain |
Yes |
— |
Source chain name (e.g., "ethereum", "arbitrum") |
| destChain |
Yes |
— |
Destination chain name (e.g., "base", "optimism") |
| slippage |
No |
auto |
Slippage tolerance (e.g., "0.5" for 0.5%) |
| recipient |
No |
Same wallet |
Recipient address on destination chain |
Workflow
Extract parameters from the user's request. Identify:
- Which token they want to send and on which chain.
- Which token they want to receive and on which chain.
- The amount to swap.
- Resolve ambiguous chain references (e.g., "mainnet" = "ethereum").
Validate inputs:
- Verify both chains are supported via
mcp__uniswap__getSupportedChains.
- Verify tokens exist on their respective chains via
mcp__uniswap__getTokenInfo.
- If source and destination chain are the same: redirect to
execute-swap skill instead.
Delegate to cross-chain-executor: Invoke Task(subagent_type:cross-chain-executor) with:
- tokenIn, tokenOut, amount, sourceChain, destChain, slippage, recipient.
- The agent handles the full 7-step workflow: quote, risk assessment, safety check, execution, bridge monitoring, confirmation, and reporting.
Present results: Format the execution report for the user, highlighting:
- Amounts sent and received.
- Total fees (gas + bridge).
- Settlement time.
- Any warnings from safety or risk checks.
Output Format
Cross-Chain Swap Complete
Source: 1.5 ETH on Ethereum
Destination: 2,850.25 USDC on Base
Fees: $3.50 (gas: $2.50, bridge: $1.00)
Settlement: 2 min 35 sec
Source Tx: 0xabc...123
Bridge ID: 0x789...abc
Dest Tx: 0xdef...456
Risk: LOW | Safety: APPROVED
Important Notes
- Cross-chain swaps involve bridge operations that take time to settle (typically 1-10 minutes).
- The skill will monitor the bridge and report status updates during settlement.
- Bridge fees and slippage apply in addition to normal swap fees.
- If the bridge gets stuck, the executor will escalate with recovery instructions.
Error Handling
| Error |
User-Facing Message |
Suggested Action |
| Unsupported chain |
"Chain [name] is not supported for cross-chain swaps." |
Check supported chains |
| Same chain |
"Source and destination are the same chain. Use a regular swap." |
Use execute-swap skill |
| Safety veto |
"This swap was blocked by safety checks: [reason]." |
Reduce amount or check token |
| Risk veto |
"Risk assessment vetoed: [reason]." |
Choose a different route or amount |
| Bridge stuck |
"Bridge settlement is taking longer than expected." |
Wait or check order ID manually |
| Bridge failed |
"Bridge operation failed. Funds should remain on source chain." |
Check source wallet balance |
| Insufficient balance |
"Not enough [token] on [chain] to execute this swap." |
Check balance and reduce amount |
1---2name: cross-chain-swap3description: Execute a cross-chain token swap via Uniswap's bridge infrastructure. Handles quoting, safety validation, bridge monitoring, and destination confirmation. Use when the user wants to swap tokens across different chains.4---5
6# Cross-Chain Swap
7
8## Overview
9
10Executes a cross-chain token swap — swapping a token on one chain for a different (or same) token on another chain. Delegates the full workflow to the `cross-chain-executor` agent, which handles quoting, route evaluation, safety checks, bridge monitoring, and destination confirmation.
11
12## When to Use
13
14Activate when the user asks:
15
16- "Swap ETH on Arbitrum for USDC on Base"
17- "Cross-chain swap"
18- "Buy USDC on Optimism using ETH from mainnet"
19- "Move my ETH from Ethereum to Arbitrum and convert to USDC"
20- "Swap tokens across chains"
21- "Exchange X on chain A for Y on chain B"
22
23## Parameters
24
25| Parameter | Required | Default | Description |
26| ---------------- | -------- | ---------- | ---------------------------------------------------- |
27| tokenIn | Yes | — | Input token symbol or address on source chain |
28| tokenOut | Yes | — | Output token symbol or address on destination chain |
29| amount | Yes | — | Amount to swap (human-readable, e.g., "1.5" or "1000") |
30| sourceChain | Yes | — | Source chain name (e.g., "ethereum", "arbitrum") |
31| destChain | Yes | — | Destination chain name (e.g., "base", "optimism") |
32| slippage | No | auto | Slippage tolerance (e.g., "0.5" for 0.5%) |
33| recipient | No | Same wallet| Recipient address on destination chain |
34
35## Workflow
36
371. **Extract parameters** from the user's request. Identify:
38 - Which token they want to send and on which chain.
39 - Which token they want to receive and on which chain.
40 - The amount to swap.
41 - Resolve ambiguous chain references (e.g., "mainnet" = "ethereum").
42
432. **Validate inputs**:
44 - Verify both chains are supported via `mcp__uniswap__getSupportedChains`.
45 - Verify tokens exist on their respective chains via `mcp__uniswap__getTokenInfo`.
46 - If source and destination chain are the same: redirect to `execute-swap` skill instead.
47
483. **Delegate to cross-chain-executor**: Invoke `Task(subagent_type:cross-chain-executor)` with:
49 - tokenIn, tokenOut, amount, sourceChain, destChain, slippage, recipient.
50 - The agent handles the full 7-step workflow: quote, risk assessment, safety check, execution, bridge monitoring, confirmation, and reporting.
51
524. **Present results**: Format the execution report for the user, highlighting:
53 - Amounts sent and received.
54 - Total fees (gas + bridge).
55 - Settlement time.
56 - Any warnings from safety or risk checks.
57
58## Output Format
59
60```text
61Cross-Chain Swap Complete
62
63 Source: 1.5 ETH on Ethereum
64 Destination: 2,850.25 USDC on Base
65 Fees: $3.50 (gas: $2.50, bridge: $1.00)
66 Settlement: 2 min 35 sec
67
68 Source Tx: 0xabc...123
69 Bridge ID: 0x789...abc
70 Dest Tx: 0xdef...456
71
72 Risk: LOW | Safety: APPROVED
73```
74
75## Important Notes
76
77- Cross-chain swaps involve bridge operations that take time to settle (typically 1-10 minutes).
78- The skill will monitor the bridge and report status updates during settlement.
79- Bridge fees and slippage apply in addition to normal swap fees.
80- If the bridge gets stuck, the executor will escalate with recovery instructions.
81
82## Error Handling
83
84| Error | User-Facing Message | Suggested Action |
85| ---------------------------- | ---------------------------------------------------------------- | ------------------------------------ |
86| Unsupported chain | "Chain [name] is not supported for cross-chain swaps." | Check supported chains |
87| Same chain | "Source and destination are the same chain. Use a regular swap." | Use execute-swap skill |
88| Safety veto | "This swap was blocked by safety checks: [reason]." | Reduce amount or check token |
89| Risk veto | "Risk assessment vetoed: [reason]." | Choose a different route or amount |
90| Bridge stuck | "Bridge settlement is taking longer than expected." | Wait or check order ID manually |
91| Bridge failed | "Bridge operation failed. Funds should remain on source chain." | Check source wallet balance |
92| Insufficient balance | "Not enough [token] on [chain] to execute this swap." | Check balance and reduce amount |