Cross-Chain Swap and Bridge Quote (LI.FI)
lifi/quote
The best single-step route LI.FI finds to swap or bridge a token between two chains: which bridge or DEX it uses, the amount you would receive (and the minimum after slippage), fee and gas costs in USD, the estimated duration and the ready-to-sign transaction request. It is a quote only: nothing is sent or signed. fromAmount is in the token's smallest unit (10000000 = 10 USDC). LI.FI allows only about 35 quotes per hour for all callers combined, so a quote can be refused when busy. LI.FI public API data, passed through and served by Eden Engine; not an official LI.FI product.
Price
$0.0026 per call
You pay the price shown. If a call turns out to cost more than its quote, you pay the actual price, capped at twice the quote. No monthly minimum. Top-ups start at $0.50.
Data source
Data from the LI.FI public API (li.fi). Served by Eden Engine; not an official LI.FI product.
Use it
Five steps: search, inspect, learn, run, settle. No per-tool setup; your agent reaches this tool through the meta-tools it already has.
Connect once and your AI can find and run this tool, and any other it needs.
// 1. search: find the tool
omnial_search({ query: "what you need" })
// 2. inspect: price and input schema
omnial_inspect({ tool: "lifi/quote" })
// 3. learn: read the usage guide at runtime
omnial_learn({ tool: "lifi/quote" })
// 4. run: price the exact call first, then run it
omnial_execute({ tool: "lifi/quote", input: { /* see input_schema */ }, dry_run: true })
omnial_execute({ tool: "lifi/quote", input: { /* ... */ } })
// 5. settle: the call is charged when it finishes, nothing to doNot connected yet? Point your MCP client at https://mcp.eden-engine.com/mcp, then copy a config for your client.
Pricing
Every charge this tool can incur.
| Charge | Price |
|---|---|
Per call | $0.0026 |
- Updated
- Oct 21, 2026
Input and output schemas
Input schema
{
"type": "object",
"required": [
"fromChain",
"toChain",
"fromToken",
"toToken",
"fromAmount",
"fromAddress"
],
"properties": {
"toChain": {
"type": "string",
"pattern": "^[A-Za-z0-9]{1,20}$",
"description": "Chain id (for example 1 for Ethereum, 137 for Polygon, 10 for Optimism) or LI.FI chain key (eth, pol, opt, arb, bas, sol)."
},
"toToken": {
"type": "string",
"pattern": "^[A-Za-z0-9]{1,66}$",
"description": "Destination token symbol or contract address."
},
"fromChain": {
"type": "string",
"pattern": "^[A-Za-z0-9]{1,20}$",
"description": "Chain id (for example 1 for Ethereum, 137 for Polygon, 10 for Optimism) or LI.FI chain key (eth, pol, opt, arb, bas, sol)."
},
"fromToken": {
"type": "string",
"pattern": "^[A-Za-z0-9]{1,66}$",
"description": "Source token symbol or contract address, for example USDC."
},
"fromAmount": {
"type": "string",
"pattern": "^[0-9]{1,40}$",
"description": "Amount to send, in the source token's smallest unit as a whole-number string (USDC has 6 decimals, so 10000000 is 10 USDC)."
},
"fromAddress": {
"type": "string",
"pattern": "^[A-Za-z0-9]{20,66}$",
"description": "Sender wallet address; the quote is built for it, nothing is sent. Any valid address works for a price check."
}
},
"additionalProperties": false
}Output schema
{
"type": "object",
"required": [
"tool",
"action",
"estimate"
],
"properties": {
"id": {
"type": "string",
"description": "Quote id."
},
"tool": {
"type": "string",
"description": "Key of the bridge or DEX chosen, e.g. across."
},
"type": {
"type": "string"
},
"action": {
"type": "object",
"properties": {
"toToken": {
"type": "object",
"required": [
"address",
"chainId",
"symbol",
"decimals"
],
"properties": {
"name": {
"type": "string"
},
"tags": {
"type": "array",
"items": {
"type": "string"
}
},
"symbol": {
"type": "string"
},
"address": {
"type": "string"
},
"chainId": {
"type": "integer"
},
"coinKey": {
"type": "string"
},
"logoURI": {
"type": "string"
},
"decimals": {
"type": "integer"
},
"priceUSD": {
"type": "string",
"description": "USD price as a string."
},
"marketCapUSD": {
"type": "number"
},
"volumeUSD24H": {
"type": "number"
},
"verificationStatus": {
"type": "string"
},
"verificationStatusBreakdown": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": true
}
}
},
"additionalProperties": true
},
"slippage": {
"type": "number"
},
"fromToken": {
"type": "object",
"required": [
"address",
"chainId",
"symbol",
"decimals"
],
"properties": {
"name": {
"type": "string"
},
"tags": {
"type": "array",
"items": {
"type": "string"
}
},
"symbol": {
"type": "string"
},
"address": {
"type": "string"
},
"chainId": {
"type": "integer"
},
"coinKey": {
"type": "string"
},
"logoURI": {
"type": "string"
},
"decimals": {
"type": "integer"
},
"priceUSD": {
"type": "string",
"description": "USD price as a string."
},
"marketCapUSD": {
"type": "number"
},
"volumeUSD24H": {
"type": "number"
},
"verificationStatus": {
"type": "string"
},
"verificationStatusBreakdown": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": true
}
}
},
"additionalProperties": true
},
"toAddress": {
"type": "string"
},
"toChainId": {
"type": "integer"
},
"fromAmount": {
"type": "string"
},
"fromAddress": {
"type": "string"
},
"fromChainId": {
"type": "integer"
}
},
"additionalProperties": true
},
"estimate": {
"type": "object",
"properties": {
"feeCosts": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": true
}
},
"gasCosts": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": true
}
},
"toAmount": {
"type": "string",
"description": "Expected received amount, smallest unit."
},
"fromAmount": {
"type": "string"
},
"toAmountMin": {
"type": "string",
"description": "Minimum after slippage."
},
"toAmountUSD": {
"type": "string"
},
"fromAmountUSD": {
"type": "string"
},
"approvalAddress": {
"type": "string",
"description": "Contract to approve for ERC20 spending."
},
"executionDuration": {
"type": "number",
"description": "Estimated seconds."
}
},
"additionalProperties": true
},
"toolDetails": {
"type": "object",
"additionalProperties": true
},
"includedSteps": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": true
}
},
"transactionRequest": {
"type": "object",
"properties": {
"to": {
"type": "string"
},
"data": {
"type": "string"
},
"from": {
"type": "string"
},
"value": {
"type": "string"
},
"chainId": {
"type": "integer"
},
"gasLimit": {
"type": "string"
}
},
"description": "Unsigned transaction a wallet would sign; it is not executed.",
"additionalProperties": true
},
"recommendedSlippage": {
"type": [
"number",
"null"
]
}
},
"additionalProperties": true
}