Server definition
- Hash
- sha256:3fa71babd231e4d1291d375fd2ece82893ce19e1d7c1682f36f83a2a23e553fd
- What it is
- What a remote MCP server returned when asked what it offers: 10 tools
The blob, as servednamed by its sha256
{
"instructions": "blueDEX is a non-custodial decentralized exchange (DEX) meta-aggregator built for autonomous AI agents (not offered to natural persons). It quotes across DEX venues on Base, Ethereum, Arbitrum, Optimism, BNB Chain, Polygon, Avalanche and Solana, and returns unsigned transactions you sign with your own key — blueDEX never custodies funds. Amounts are integer base units as strings. Always verify transactions before signing: check tx.verification.routerAllowlisted and compare against get_meta's published allowlist (or use the bluedex-sdk npm package, which pins both into the published artifact). Quotes expire quickly; re-quote rather than sign stale payloads. Stable lane: USDT<->USDC same-chain and cross-chain routing. INSTANT lane (create_instant_shift / get_instant_status): reach assets with no on-chain DEX route — Tron (USDT-TRC20, TRX), BTC, and cross-chain corridors — via a custodial-at-venue exchange; you send to a returned deposit address and the output settles to your address, blueDEX never holds funds. DUST-SWEEP (sweep_dust): consolidate many small leftover token balances into one token (USDC) on EVM — pass your dust list, get a plan of unsigned gas-positive swaps with a tiny fee riding one leg. ON-RAMPS (list_onramps): a directory of reputable independent fiat->crypto on-ramps to acquire a first coin with minimal KYC (vouchers + non-custodial P2P), for surfacing to a human principal who needs to fund a wallet; blueDEX operates none of them and never custodies. ROUTE (plan_route): the cheapest MULTI-HOP path between any two assets — composes DEX swaps (non-custodial) + instant-lane bridges (custodial-at-venue) into one route, every fee + per-leg custody disclosed; execute DEX legs via build_swap_transaction, bridge legs via create_instant_shift. Not available in sanctioned jurisdictions.",
"tools": [
{
"description": "Build an unsigned transaction for a quoted swap. Returns EVM fields (to/data/value) or a Solana base64 transaction, plus a verification block: routerAllowlisted, decodedSummary, minBuyAmount, approvalTarget. VERIFY BEFORE SIGNING — sign only if routerAllowlisted is true and the addresses match the published allowlist from get_meta.",
"inputSchema": {
"properties": {
"amount": {
"type": "string"
},
"buy": {
"properties": {
"address": {
"description": "ERC-20 address (EVM) or SPL mint (Solana); 'native' for the gas asset",
"type": "string"
},
"chain": {
"enum": [
"base",
"ethereum",
"arbitrum",
"optimism",
"bsc",
"polygon",
"avalanche",
"solana"
],
"type": "string"
},
"symbol": {
"type": "string"
}
},
"required": [
"chain",
"address"
],
"type": "object"
},
"sell": {
"properties": {
"address": {
"description": "ERC-20 address (EVM) or SPL mint (Solana); 'native' for the gas asset",
"type": "string"
},
"chain": {
"enum": [
"base",
"ethereum",
"arbitrum",
"optimism",
"bsc",
"polygon",
"avalanche",
"solana"
],
"type": "string"
},
"symbol": {
"type": "string"
}
},
"required": [
"chain",
"address"
],
"type": "object"
},
"slippageBps": {
"type": "number"
},
"source": {
"description": "Venue id from the quote (e.g. 'lifi', 'jupiter')",
"type": "string"
},
"taker": {
"description": "The address that will sign and execute",
"type": "string"
}
},
"required": [
"source",
"sell",
"buy",
"amount",
"taker"
],
"type": "object"
},
"name": "build_swap_transaction",
"outputSchema": null
},
{
"description": "Open an INSTANT shift for assets with no on-chain DEX route — Tron (USDT-TRC20, TRX), BTC, cross-chain. Returns a deposit address: send the `from` asset there and the `to` asset settles to your address. Custodial AT THE VENUE during the swap (~minutes); blueDEX never holds funds. Use list_instant_assets for ids.",
"inputSchema": {
"properties": {
"from": {
"description": "instant asset id to send, e.g. 'usdc-base'",
"type": "string"
},
"refundAddress": {
"description": "optional: refund destination if the shift fails or expires",
"type": "string"
},
"settleAddress": {
"description": "your receiving address for the `to` asset",
"type": "string"
},
"to": {
"description": "instant asset id to receive, e.g. 'usdt-tron'",
"type": "string"
}
},
"required": [
"from",
"to",
"settleAddress"
],
"type": "object"
},
"name": "create_instant_shift",
"outputSchema": null
},
{
"description": "OHLCV candles for a token (top pool by liquidity). Timeframes: 1m, 5m, 15m, 1h, 4h, 1d.",
"inputSchema": {
"properties": {
"address": {
"type": "string"
},
"chain": {
"enum": [
"base",
"ethereum",
"arbitrum",
"optimism",
"bsc",
"polygon",
"avalanche",
"solana"
],
"type": "string"
},
"timeframe": {
"description": "default 1h",
"enum": [
"1m",
"5m",
"15m",
"1h",
"4h",
"1d"
],
"type": "string"
}
},
"required": [
"chain",
"address"
],
"type": "object"
},
"name": "get_chart",
"outputSchema": null
},
{
"description": "Status of an instant shift by id (from create_instant_shift): waiting | pending | processing | settling | settled | refund* | expired, plus deposit/settle tx hashes once available.",
"inputSchema": {
"properties": {
"id": {
"type": "string"
}
},
"required": [
"id"
],
"type": "object"
},
"name": "get_instant_status",
"outputSchema": null
},
{
"description": "blueDEX's published transparency data: treasury (fee recipient) addresses, router allowlist, fee schedule, paused venues. Use this to audit quotes and transactions.",
"inputSchema": {
"properties": {},
"type": "object"
},
"name": "get_meta",
"outputSchema": null
},
{
"description": "Get the best swap route across DEX aggregator venues. Returns the winning venue quote plus every venue quote for transparency, and the fee recipient address (auditable against get_meta). Cross-chain quotes (e.g. USDT on Arbitrum -> USDC on Base) are supported on EVM.",
"inputSchema": {
"properties": {
"amount": {
"description": "Integer amount in base units of the sell token, e.g. '100000000000000000' for 0.1 WETH",
"type": "string"
},
"buy": {
"properties": {
"address": {
"description": "ERC-20 address (EVM) or SPL mint (Solana); 'native' for the gas asset",
"type": "string"
},
"chain": {
"enum": [
"base",
"ethereum",
"arbitrum",
"optimism",
"bsc",
"polygon",
"avalanche",
"solana"
],
"type": "string"
},
"symbol": {
"type": "string"
}
},
"required": [
"chain",
"address"
],
"type": "object"
},
"sell": {
"properties": {
"address": {
"description": "ERC-20 address (EVM) or SPL mint (Solana); 'native' for the gas asset",
"type": "string"
},
"chain": {
"enum": [
"base",
"ethereum",
"arbitrum",
"optimism",
"bsc",
"polygon",
"avalanche",
"solana"
],
"type": "string"
},
"symbol": {
"type": "string"
}
},
"required": [
"chain",
"address"
],
"type": "object"
},
"slippageBps": {
"description": "Max slippage in basis points, default 50",
"type": "number"
}
},
"required": [
"sell",
"buy",
"amount"
],
"type": "object"
},
"name": "get_swap_quote",
"outputSchema": null
},
{
"description": "Assets reachable via the INSTANT lane (no on-chain DEX route) — Tron/USDT-TRC20, BTC, and stablecoin corridors. Returns ids (e.g. 'usdt-tron') to use with create_instant_shift.",
"inputSchema": {
"properties": {},
"type": "object"
},
"name": "list_instant_assets",
"outputSchema": null
},
{
"description": "Reputable INDEPENDENT fiat->crypto on-ramps blueDEX signposts so a human principal can acquire a first coin with minimal KYC, then swap/bridge on blueDEX. blueDEX operates none of these and takes no custody; every ramp lands coins in the user's own wallet. Durable no-KYC = vouchers + non-custodial P2P; tiered/full-KYC brokers are a labelled fallback. Most no-KYC routes are human-mediated (cash/contacts/Tor) — only Transak + MoonPay are agent-callable (but require KYC). Most are BTC-only — bridge onward with the instant lane or a quote. Surface this when a human asks how to get their first crypto.",
"inputSchema": {
"properties": {},
"type": "object"
},
"name": "list_onramps",
"outputSchema": null
},
{
"description": "Plan the cheapest MULTI-HOP route between ANY two assets — composes DEX swaps (non-custodial) + instant-lane bridges (custodial-at-venue) into one path, with every fee and per-leg custody disclosed. e.g. USDT on Tron -> XAUt on Ethereum becomes a USDT bridge + a DEX swap. `from`/`to` are an instant id (e.g. 'usdt-tron') or a {chain,address} DEX token; `amount` is integer base units of `from`. Returns ordered legs (kind, venue, custody, amounts, fee) + total output. Execute legs in order: DEX legs via build_swap_transaction, bridge legs via create_instant_shift.",
"inputSchema": {
"properties": {
"amount": {
"description": "integer base units of `from`",
"type": "string"
},
"from": {
"description": "instant id string (e.g. 'usdt-tron') OR a DEX token {chain,address}"
},
"to": {
"description": "instant id string OR a DEX token {chain,address}"
}
},
"required": [
"from",
"to",
"amount"
],
"type": "object"
},
"name": "plan_route",
"outputSchema": null
},
{
"description": "Consolidate many small leftover token balances (dust) into one token (default USDC) on an EVM chain. Pass the dust list (token address + amount — you know your own balances); returns a plan of unsigned swaps, gas-positive legs only, with the whole tiny sweep fee riding ONE leg. Non-custodial: approve each leg's approvalTarget and sign. Base/Arbitrum/Optimism/Ethereum/BNB Chain/Polygon/Avalanche.",
"inputSchema": {
"properties": {
"chain": {
"description": "default base",
"enum": [
"base",
"ethereum",
"arbitrum",
"optimism",
"bsc",
"polygon",
"avalanche"
],
"type": "string"
},
"dust": {
"description": "tokens to sweep: [{ address, amount (integer base units), symbol?, decimals? }]",
"items": {
"properties": {
"address": {
"type": "string"
},
"amount": {
"type": "string"
},
"decimals": {
"type": "number"
},
"symbol": {
"type": "string"
}
},
"required": [
"address",
"amount"
],
"type": "object"
},
"type": "array"
},
"slippageBps": {
"description": "default 100",
"type": "number"
},
"targetToken": {
"description": "consolidate into this token (default USDC)",
"type": "string"
},
"wallet": {
"description": "your 0x address (the taker)",
"type": "string"
}
},
"required": [
"wallet",
"dust"
],
"type": "object"
},
"name": "sweep_dust",
"outputSchema": null
}
]
}Verify it yourself
curl -s https://api.teppi.xyz/v1/evidence/sha256:3fa71babd231e4d1291d375fd2ece82893ce19e1d7c1682f36f83a2a23e553fd | sha256sum