Skip to main content
Glama

Uniswap Trader MCP

smithery badge

An MCP server for AI agents to automate token swaps on Uniswap DEX across multiple blockchains.

Features

--

  • Price Quotes: Get real-time price quotes for token swaps with multi-hop route optimization.

  • Swap Execution: Execute swaps on Uniswap V3 with configurable slippage tolerance and deadlines.

  • Swap Suggestions: Generate trading suggestions based on liquidity, fees, and optimal paths.

  • Multi-Chain Support: Compatible with Ethereum, Optimism, Polygon, Arbitrum, Celo, BNB Chain, Avalanche, and Base.

Prerequisites

  • Node.js: Version 14.x or higher.

  • npm: For package management.

  • Wallet: A funded wallet with a private key for executing swaps.

  • RPC Endpoints: Access to blockchain RPC URLs (e.g., Infura, Alchemy) for supported chains.

Installation

Installing via Smithery

To install Uniswap Trader MCP for Claude Desktop automatically via Smithery:

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

Manual Installation

  1. Clone the Repository:

    git clone https://github.com/kukapay/uniswap-trader-mcp.git cd uniswap-trader-mcp
  2. Install Dependencies:

    npm install

Configuration

{ "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" } } } }

Usage

Supported Chains

The following blockchains are supported. Ensure each chain is configured in chainConfigs.js with a valid RPC URL, WETH address, and SwapRouter address.

Chain ID

Name

Notes

1

Ethereum

Mainnet, widely used for Uniswap trades

10

Optimism

Layer 2, requires Optimism RPC

137

Polygon

Fast and low-cost, uses MATIC as native

42161

Arbitrum

Layer 2, Arbitrum One network

42220

Celo

Mobile-first blockchain, uses CELO

56

BNB Chain

Binance Smart Chain, uses BNB

43114

Avalanche

High-throughput, uses AVAX

8453

Base

Coinbase’s Layer 2, built on Optimism

Tools and Prompts

1. getPrice

Fetches a price quote for a Uniswap swap.

Schema:

  • chainId: Number (default: 1)

  • tokenIn: String (e.g., "NATIVE" or token address)

  • tokenOut: String (e.g., "NATIVE" or token address)

  • amountIn: String (optional, required for "exactIn")

  • amountOut: String (optional, required for "exactOut")

  • tradeType: "exactIn" or "exactOut" (default: "exactIn")

Example prompt:

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

Output:

{ "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

Executes a swap on Uniswap.

Schema:

  • chainId: Number (default: 1)

  • tokenIn: String

  • tokenOut: String

  • amountIn: String (optional, required for "exactIn")

  • amountOut: String (optional, required for "exactOut")

  • tradeType: "exactIn" or "exactOut" (default: "exactIn")

  • slippageTolerance: Number (default: 0.5, in percentage)

  • deadline: Number (default: 20, in minutes)

Example prompt:

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

Output:

{ "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" }

License

MIT License. See LICENSE for details.

-
security - not tested
A
license - permissive license
-
quality - not tested

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/catwhisperingninja/uniswap-trader-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server