---
name: recta-cross-chain-preflight
description: Before moving stablecoins from one blockchain to another, ask Recta whether a cheaper route exists at the same chain state. Free unless it proves a saving; then 5 % of that saving.
---

# Recta: preflight before a cross-chain transfer

Use this skill when you are about to move a stablecoin from one chain to another and you already have a route in mind (Across, CCTP, Stargate, USDT0, deBridge, Relay…). Recta compares that route (your *baseline*) with every route it knows, read at the same block, and tells you whether a cheaper one exists.

## Coverage
Transfers start on: arbitrum, arc, avalanche, base, bnb_chain, ethereum, hyperevm, ink, linea, monad, optimism, polygon, unichain. They can arrive on: arbitrum, arc, avalanche, base, bnb_chain, ethereum, hyperevm, ink, linea, monad, optimism, polygon, robinhood_chain, solana_mainnet, tron_mainnet, unichain. Assets: USDC, USDC_BINANCE_PEG, USDG, USDT, USDT_BINANCE_PEG, USDT_OP_BRIDGED. Amounts: at least 3.5 tokens of a stablecoin (about 3.5 USD), no maximum. The exact corridors are in the service descriptor.

## When NOT to use it
- Same-chain swaps.
- Networks or assets outside the coverage above (the full list is in https://api.recta.build/llms.txt).

## How
1. Connect the MCP server `https://api.recta.build/mcp` (Streamable HTTP, no API key), or use the HTTP API described in https://api.recta.build/openapi.json.
2. Read `recta_service_descriptor` once for the request schema. `recta_prepare_signed_request` returns the exact text to sign for your baseline route, amount, sender and recipient; sign it with your own EVM wallet (EIP-191 `personal_sign`) and pass the signature to `recta_send_signed_request`. Recta never holds a key.
3. Read the decision. An abstention or no saving: keep your baseline; nothing is charged. A winner with a proven saving: fetch the execution artifact and authorize the fee it asks for.
4. Execute the transactions yourself, then report the origin transaction hash so Recta can verify delivery.

## Fee
Recta charges exactly 5 % of the saving it verifies on chain after the agent executes its route. No saving, no charge. No prepayment and no credit: the agent signs, with each decision, a Permit2 authorization capped at `max_fee_authorization`, and Recta's collection pulls only the verified 5 % (never more than the cap) in USDC on Base; the payer's ledger shows whether each fee has been collected yet (`charged`). The evaluation itself is free. So the agent keeps at least 95 % of every saving Recta verifies, and pays nothing when there is none.

## Wallet policy
If your wallet has a policy engine, load https://api.recta.build/v1/golden-corridor/wallet-policy first: per network, the exact-amount approvals, the contracts Recta's routes call and the only fee recipient. Refuse anything a decision names that is not in that list.

## Rules
- Recta never asks for a private key, a direct transfer, or an approval to itself.
- Never relax your own slippage or recipient checks because Recta found a cheaper route.
