Operador MCP de Uniswap
Un servidor MCP para que los agentes de IA automaticen los intercambios de tokens en Uniswap DEX en múltiples cadenas de bloques.
Características
Cotizaciones de precios : obtenga cotizaciones de precios en tiempo real para intercambios de tokens con optimización de rutas de múltiples saltos.
Ejecución de swaps : ejecute swaps en Uniswap V3 con tolerancia de deslizamiento y plazos configurables.
Sugerencias de swap : genere sugerencias comerciales basadas en liquidez, tarifas y rutas óptimas.
Soporte multicadena : compatible con Ethereum, Optimism, Polygon, Arbitrum, Celo, BNB Chain, Avalanche y Base.
Related MCP server: Armor Crypto MCP
Prerrequisitos
Node.js : Versión 14.x o superior.
npm : Para la gestión de paquetes.
Monedero : Un monedero financiado con una clave privada para ejecutar intercambios.
Puntos finales de RPC : acceso a las URL de RPC de blockchain (por ejemplo, Infura, Alchemy) para cadenas compatibles.
Instalación
Clonar el repositorio :
git clone https://github.com/kukapay/uniswap-trader-mcp.git cd uniswap-trader-mcpInstalar dependencias :
npm install
Configuración
{
"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
Cadenas soportadas
Se admiten las siguientes cadenas de bloques. Asegúrese de que cada cadena esté configurada en chainConfigs.js con una URL RPC, una dirección WETH y una dirección SwapRouter válidas.
Identificación de cadena | Nombre | Notas |
1 | Ethereum | Red principal, ampliamente utilizada para transacciones con Uniswap |
10 | Optimismo | Capa 2, requiere Optimism RPC |
137 | Polígono | Rápido y de bajo costo, utiliza MATIC como nativo |
42161 | Arbitrum | Capa 2, red Arbitrum One |
42220 | Celo | Blockchain móvil, utiliza CELO |
56 | Cadena BNB | Binance Smart Chain, utiliza BNB |
43114 | Avalancha | Alto rendimiento, utiliza AVAX |
8453 | Base | La capa 2 de Coinbase, construida sobre el optimismo |
Herramientas y avisos
1. getPrice
Obtiene una cotización de precio para un intercambio de Uniswap.
Esquema :
chainId: Número (predeterminado: 1)tokenIn: cadena (por ejemplo,"NATIVE"o dirección del token)tokenOut: cadena (por ejemplo,"NATIVE"o dirección del token)amountIn: Cadena (opcional, requerida para"exactIn")amountOut: cadena (opcional, obligatoria para"exactOut")tradeType:"exactIn"o"exactOut"(predeterminado:"exactIn")
Ejemplo de mensaje:
Get me a price quote for swapping 1 ETH to DAI on Ethereum.Producción:
{
"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
Ejecuta un intercambio en Uniswap.
Esquema :
chainId: Número (predeterminado: 1)tokenIn: CadenatokenOut: CadenaamountIn: Cadena (opcional, requerida para"exactIn")amountOut: cadena (opcional, obligatoria para"exactOut")tradeType:"exactIn"o"exactOut"(predeterminado:"exactIn")slippageTolerance: Número (predeterminado: 0,5, en porcentaje)deadline: Número (predeterminado: 20, en minutos)
Ejemplo de mensaje:
Swap 1 ETH for DAI on Ethereum with a 0.5% slippage tolerance and a 20-minute deadline.Producción:
{
"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"
}Licencia
Licencia MIT. Ver LICENCIA para más detalles.