Uniswap Trader MCP

Automatize trocas de tokens no DEX Uniswap em múltiplas blockchains.

Documentação

Uniswap Trader MCP

smithery badge

Um servidor MCP para agentes de IA automatizarem trocas de tokens na DEX Uniswap em múltiplas blockchains.

Recursos

  • Cotações de Preço: Obtenha cotações de preço em tempo real para trocas de tokens com otimização de rota multi-hop.
  • Execução de Trocas: Execute trocas no Uniswap V3 com tolerância de slippage configurável e prazos.
  • Sugestões de Troca: Gere sugestões de negociação com base em liquidez, taxas e caminhos ideais.
  • Suporte Multi-Cadeia: Compatível com Ethereum, Optimism, Polygon, Arbitrum, Celo, BNB Chain, Avalanche e Base.

Pré-requisitos

  • Node.js: Versão 14.x ou superior.
  • npm: Para gerenciamento de pacotes.
  • Carteira: Uma carteira com fundos e chave privada para executar trocas.
  • Endpoints RPC: Acesso a URLs RPC de blockchain (ex.: Infura, Alchemy) para as cadeias suportadas.

Instalação

Instalando via Smithery

Para instalar o Uniswap Trader MCP para Claude Desktop automaticamente via Smithery:

npx -y @smithery/cli install @kukapay/uniswap-trader-mcp --client claude

Instalação Manual

  1. Clone o Repositório:

    git clone https://github.com/kukapay/uniswap-trader-mcp.git
    cd uniswap-trader-mcp
    
  2. Instale as Dependências:

    npm install
    

Configuração

{
  "mcpServers": {
    "Uniswap-Trader-MCP": {
      "command": "node",
      "args": ["path/to/uniswap-trader-mcp/server/index.js"],
      "env": {
        "INFURA_KEY": "your infura key",
        "WALLET_PRIVATE_KEY": "your private key"
      }
    }
  }
}

Uso

Cadeias Suportadas

As seguintes blockchains são suportadas. Certifique-se de que cada cadeia esteja configurada em chainConfigs.js com uma URL RPC válida, endereço WETH e endereço SwapRouter.

ID da CadeiaNomeObservações
1EthereumMainnet, amplamente usado para negociações Uniswap
10OptimismLayer 2, requer RPC da Optimism
137PolygonRápido e de baixo custo, usa MATIC como nativo
42161ArbitrumLayer 2, rede Arbitrum One
42220CeloBlockchain mobile-first, usa CELO
56BNB ChainBinance Smart Chain, usa BNB
43114AvalancheAlto throughput, usa AVAX
8453BaseLayer 2 da Coinbase, construída na Optimism

Ferramentas e Prompts

1. getPrice

Busca uma cotação de preço para uma troca na Uniswap.

Esquema:

  • chainId: Número (padrão: 1)
  • tokenIn: String (ex.: "NATIVE" ou endereço do token)
  • tokenOut: String (ex.: "NATIVE" ou endereço do token)
  • amountIn: String (opcional, obrigatório para "exactIn")
  • amountOut: String (opcional, obrigatório para "exactOut")
  • tradeType: "exactIn" ou "exactOut" (padrão: "exactIn")

Exemplo de prompt:

Get me a price quote for swapping 1 ETH to DAI on Ethereum.

Saída:

{
  "chainId": 1,
  "tradeType": "exactIn",
  "price": "3000.50",
  "inputAmount": "1.000000",
  "outputAmount": "3000.50",
  "minimumReceived": "2985.50",
  "maximumInput": "1.005000",
  "route": [
    {
      "tokenIn": "0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2",
      "tokenOut": "0x6B175474E89094C44Da98b954EedeAC495271d0F",
      "fee": 3000
    }
  ],
  "estimatedGas": "150000"
}

2. executeSwap

Executa uma troca na Uniswap.

Esquema:

  • chainId: Número (padrão: 1)
  • tokenIn: String
  • tokenOut: String
  • amountIn: String (opcional, obrigatório para "exactIn")
  • amountOut: String (opcional, obrigatório para "exactOut")
  • tradeType: "exactIn" ou "exactOut" (padrão: "exactIn")
  • slippageTolerance: Número (padrão: 0.5, em porcentagem)
  • deadline: Número (padrão: 20, em minutos)

Exemplo de prompt:

Swap 1 ETH for DAI on Ethereum with a 0.5% slippage tolerance and a 20-minute deadline.

Saída:

{
  "chainId": 1,
  "txHash": "0x1234...abcd",
  "tradeType": "exactIn",
  "amountIn": "1.000000",
  "outputAmount": "2990.75",
  "minimumReceived": "2985.50",
  "maximumInput": "1.005000",
  "fromToken": "NATIVE",
  "toToken": "0x6B175474E89094C44Da98b954EedeAC495271d0F",
  "route": [
    {
      "tokenIn": "0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2",
      "tokenOut": "0x6B175474E89094C44Da98b954EedeAC495271d0F",
      "fee": 3000
    }
  ],
  "gasUsed": "145000"
}

Licença

Licença MIT. Consulte LICENSE para detalhes.