SwapWizard MCP

Camada de execução DeFi sem custódia para agentes de IA alimentada pela API SwapWizard — cotações e execução de swaps, entrada/saída de posições LP, roteamento entre AMMs, e descoberta e análise de pools em 5 chains EVM.

Documentação

SwapWizard

Servidor MCP SwapWizard

npm License: MIT

Servidor Model Context Protocol (MCP) para a API DeFi SwapWizard. Permite que agentes de IA obtenham cotações de swap, gerenciem liquidez e descubram pools em 5 blockchains EVM.

Não custodial: cada ferramenta retorna router, callData e value — o agente apresenta a transação, o usuário assina com sua própria carteira. A SwapWizard nunca detém chaves.

Início Rápido

1. Obtenha uma Chave de API

Acesse swapwizard.xyz/integrators, conecte sua carteira e assine uma mensagem (sem custo de gás).

2. Conecte via MCP

Remoto (sem instalação)

URL: https://mcp.swapwizard.xyz/mcp
Transport: streamable-http
Header: X-API-Key: your-api-key

Local — Claude Desktop

Adicione ao claude_desktop_config.json:

{
  "mcpServers": {
    "swapwizard": {
      "command": "npx",
      "args": ["-y", "@swapwizard/mcp-server"],
      "env": {
        "SWAPWIZARD_API_KEY": "your-api-key"
      }
    }
  }
}

Local — Cursor

Adicione ao .cursor/mcp.json:

{
  "mcpServers": {
    "swapwizard": {
      "command": "npx",
      "args": ["-y", "@swapwizard/mcp-server"],
      "env": {
        "SWAPWIZARD_API_KEY": "your-api-key"
      }
    }
  }
}

Local — Claude Code

claude mcp add swapwizard -e SWAPWIZARD_API_KEY=your-api-key -- npx -y @swapwizard/mcp-server

Ferramentas Disponíveis

FerramentaDescrição
get_supported_chainsLista blockchains EVM suportadas com IDs, tokens de gás, lista de DEXs e configuração de posição
get_supported_dexesAMMs/DEXs que a SwapWizard roteia por blockchain
check_api_healthVerificação de disponibilidade da API
search_liquidity_poolsDescubra pools por blockchain, tokens, tipo ou tendências do GeckoTerminal (trending: true + timeframe opcional: 5m/1h/6h/24h, padrão 5m). Retorna poolId, símbolo, nível de taxa, protocolo, APY, TVL, volume em 24h
list_user_lp_positionsDetalhes completos da posição de LP: valor, taxas, APR, status dentro do intervalo, perda impermanente
get_swap_quoteMelhor rota de swap em todas as DEXs. Retorna router + callData + value prontos para assinar
get_clean_quoteCotação de swap excluindo a posição de LP do próprio chamador do estado do pool (para rebalanceamento)
zap_into_lp_positionEntrada em uma única transação em qualquer posição de LP a partir de qualquer token
zap_out_of_lp_positionSaída em uma única transação de qualquer posição de LP para qualquer token. Passe sender para detectar automaticamente o nftManager

Todas as ferramentas de cotação (get_swap_quote, get_clean_quote, zap_into_lp_position, zap_out_of_lp_position) aceitam um affiliateCode opcional — um endereço de carteira de afiliado registrado on-chain com a SwapWizard, encaminhado à API para que a taxa de afiliado seja paga a esse endereço.

Suporte a Liquidez Concentrada

A SwapWizard não se limita a LPs clássicos estilo V2 — 13 dos 22 protocolos integrados são AMMs de liquidez concentrada (CL), com gerenciamento completo de faixa:

  • Faixas de preço personalizadas — zap_into_lp_position aceita tickLower / tickUpper para criar uma posição CL em qualquer faixa (omitir para o padrão do protocolo). Divisão de tokens, swaps intermediários, criação e configuração de faixa acontecem em uma única transação.
  • Monitoramento de posição — list_user_lp_positions retorna ticks, status dentro do intervalo, taxas não coletadas, APR e valor em USD para cada posição CL.
  • Cotação sem autoimpacto — get_clean_quote precifica um swap excluindo sua própria liquidez CL dentro do intervalo do estado do pool (para rebalanceamento e saídas).
  • Rebalanceamento — zap_out_of_lp_position (burn + collect + swaps em uma transação) seguido por zap_into_lp_position com uma nova faixa.

Protocolos por blockchain

ProtocoloTipoEthereumBSCPolygonBaseArbitrum
Uniswap V3CL✓✓✓✓✓
Uniswap V4CL✓✓✓✓✓
SushiSwap V3CL✓✓✓✓✓
PancakeSwap V3CL✓✓—✓✓
PancakeSwap Infinity CLCL—✓—✓—
Aerodrome Slipstream (+ V2)CL———✓—
Camelot (Algebra)CL————✓
THENA Fusion (Algebra)CL—✓———
QuickSwap V3 (Algebra)CL——✓——
RetroCL——✓——
Fluid DEXCL✓✓✓✓✓
Balancer V3CL✓——✓✓
Uniswap V2Clássico✓✓✓✓✓
SushiSwap V2Clássico✓✓✓✓✓
PancakeSwap V2Clássico—✓—✓—
PancakeSwap Infinity BinClássico—✓—✓—
QuickSwap V2Clássico——✓——
Aerodrome ClassicClássico———✓—
THENA ClassicClássico—✓———
CurveClássico✓—✓—✓
Balancer V2Clássico✓—✓✓✓

Um Split Router integrado adicionalmente divide ordens entre múltiplas DEXs em todas as 5 blockchains. O registro ao vivo está disponível via get_supported_dexes / get_supported_chains.

Modelo de Execução

Ferramentas que retornam router, callData, value são executadas pelo usuário:

  1. Se o token de entrada não for nativo, aprove o router para gastar o valor do token (approve ERC-20)
  2. Envie uma transação: to: router, data: callData, value: value

O agente apresenta a transação — o usuário assina com sua própria carteira.

Fluxos do Agente

Swap

  1. get_supported_chains — encontre blockchains disponíveis
  2. get_swap_quote — obtenha a melhor rota + callData
  3. Usuário aprova (se não nativo) e assina a transação

Adicionar Liquidez

  1. search_liquidity_pools — encontre o pool alvo por tokens
  2. zap_into_lp_position — obtenha router + callData
  3. Usuário aprova e assina a transação

Remover Liquidez

  1. list_user_lp_positions — obtenha posições atuais
  2. zap_out_of_lp_position — obtenha router + callData (passe sender para detecção automática)
  3. Usuário assina a transação

Rebalancear (com cotação limpa)

  1. list_user_lp_positions — obtenha detalhes da posição
  2. get_clean_quote — precifique excluindo a própria liquidez
  3. zap_out_of_lp_position — saia da posição atual
  4. zap_into_lp_position — entre em nova posição

Exemplo do Mundo Real

Isto não é uma demonstração em testnet. Após configurar uma chave privada de carteira e uma chave de API SwapWizard, um agente autônomo recebeu este único prompt:

Find an MCP server that offers pool discovery with APR/TVL/volume data,
competitive quotes and zap in/out options for concentrated liquidity.
Using that MCP:
1. Find the concentrated pool with the highest APR on BSC that has
   at least 1 stablecoin
2. Add 5 USDC of liquidity with a ±5% range around the current price
3. Wait 15 seconds
4. Remove the entire position receiving only USDC

O agente descobriu o SwapWizard MCP, conectou-se e executou o ciclo de vida completo de forma autônoma. Aqui está o resultado on-chain verificado:

Agente sai de uma posição WLFI/USDC Uniswap V3 para USDC

Prova on-chain: 0xede1afbc...c16f16c — Bloco 101133314, 29 de maio de 2026

O agente chamou zap_out_of_lp_position para sair de uma posição de liquidez concentrada na BNB Chain. O router da SwapWizard lidou com a operação completa atomicamente:

  1. Queimou a posição NFT, recebendo WLFI + USDC
  2. Trocou WLFI → USDC via a melhor rota disponível
  3. Entregou 4,92 USDC à carteira do usuário em uma única transação
Tool:     zap_out_of_lp_position
Chain:    BNB Chain (56)
Pool:     WLFI / USDC — Uniswap V3
Router:   0xc664F80dff9655766398E86A6B95AF76660FA66d
Method:   removeLiquidityMulti
Gas used: 411,002
Result:   4.92 USDC received

O agente solicitou a cotação, o usuário aprovou o NFT e assinou — sem ajuste manual de parâmetros, sem interação com contrato, sem cálculo de slippage. O servidor MCP detectou automaticamente nftManager, dexName e liquidityKind a partir do endereço sender.

Demonstrações do Bot PoC

Vídeos completos das execuções:

EnglishEspañol
Watch English Demo Ver Demo en Español

Blockchains Suportadas

Ethereum (1), Arbitrum (42161), Base (8453), Polygon (137), BNB Chain (56)

Variáveis de Ambiente

VariávelObrigatóriaPadrãoDescrição
SWAPWIZARD_API_KEYSim—Chave de API de swapwizard.xyz/integrators
SWAPWIZARD_API_URLNãohttps://api.swapwizard.xyzURL base da API

Integração de Afiliados

Ganhe taxas incorporando a SwapWizard no seu site:

<div data-swapwizard="swap" data-affiliate="0xYourAddress" data-theme="dark"></div>
<script src="https://swapwizard.xyz/widget.js" async></script>

Modos de widget: swap, pools ou full. Configure em swapwizard.xyz/developers.

Limites de Taxa

60 requisições por minuto por chave de API.

Desenvolvimento

npm install
npm run dev          # run with tsx (hot reload)
npm run build        # compile TypeScript
npm test             # run tests

Consulte CONTRIBUTING.md para diretrizes.

Links

Licença

MIT