An MCP server that tracks newly created liquidity pools on Uniswap across nine blockchain networks — Ethereum, Base, Optimism, Arbitrum, Polygon, BNB Smart Chain (BSC), Avalanche, Celo, and Blast — providing real-time data for DeFi analysts, traders, and developers.
1 stars1 watching1 forks

Uniswap PoolSpy MCP Server

An MCP server that tracks newly created liquidity pools on Uniswap across nine blockchain networks — Ethereum, Base, Optimism, Arbitrum, Polygon, BNB Smart Chain (BSC), Avalanche, Celo, and Blast — providing real-time data for DeFi analysts, traders, and developers.

Python License Status

Features

  • Monitors Uniswap V3 pool creation across 9 blockchain networks.
  • Customizable time range and result limits for querying new pools.
  • Supports sorting by timestamp, transaction count, volume, or TVL.

Prerequisites

  • Python 3.10 or higher
  • uv for package management
  • A valid The Graph API key
  • MCP-compatible environment (e.g., Claude Desktop) for full functionality

Installation

  1. Clone the Repository:

    git clone https://github.com/yourusername/uniswap-poolspy-mcp.git
    cd uniswap-poolspy-mcp
    
  2. Set Up Environment: Install uv if you haven't already:

    curl -LsSf https://astral.sh/uv/install.sh | sh
    
  3. Install Dependencies: Use uv to sync dependencies from pyproject.toml:

    uv sync
    
  4. Configure API Key: Create a .env file in the project root:

    echo "THEGRAPH_API_KEY=your-api-key-here" > .env
    

    Replace your-api-key-here with your actual The Graph API key.

Usage

Running the Server

Start the MCP server:

uv run main.py

For development with MCP Inspector:

uv run mcp dev main.py

Integrating with Claude Desktop

Install the server as an MCP plugin:

uv run mcp install main.py --name "UniswapPoolSpy"

Configuration

To make the server discoverable by MCP clients (e.g., Claude Desktop), configure it in an mcpServers file:

{
  "mcpServers": {
    "Uniswap-PoolSpy": {
      "command": "uv",
      "args": ["--directory", "path/to/uniswap-poolspy-mcp", "run", "main.py"],
      "env": {
        "THEGRAPH_API_KEY": "your api key from The Graph"
      }
    }
  }
}

Querying New Pools

Use the get_new_pools tool in Claude Desktop with natural language queries like:

  • "Show me new pools on Ethereum from the last 10 minutes"
  • "List pools on Base sorted by volume, limit to 50"
  • "What pools were created on Polygon in the past hour, ordered by TVL?"

The tool accepts these parameters:

  • chain: Blockchain network (e.g., "ethereum", "base", "optimism")
  • order_by: Sort field ("timestamp", "txcount", "volume", "tvl")
  • time_range_seconds: Lookback period in seconds (default: 300)
  • limit: Maximum number of pools to return (default: 100)

Example Output

Newly Created Trading Pools (Last 5 Minutes, Limit: 100):
Pool Address: 0x1234...abcd
Tokens: WETH/USDC
Created At: 2025-03-18 12:34:56
Block Number: 12345678
Transaction Count: 5
Volume (USD): 15000.25
Total Value Locked (USD): 50000.75

Pool Address: 0x5678...efgh
Tokens: DAI/USDT
Created At: 2025-03-18 12:33:45
Block Number: 12345670
Transaction Count: 3
Volume (USD): 8000.50
Total Value Locked (USD): 25000.00

Supported Chains

  • Ethereum
  • Base
  • Optimism
  • Arbitrum
  • Polygon
  • BNB Smart Chain (BSC)
  • Avalanche
  • Celo
  • Blast

License

This project is licensed under the MIT License - see the LICENSE file for details.

Features

monitoring
tracking
querying
sorting
multichain

Category

Monitoring