Uniswap Pools MCP

Consulta pools y pares de Uniswap por dirección de token para datos estructurados.

Documentación

Uniswap Pools MCP

Un servidor MCP para consultar pools/pares de Uniswap por dirección de token, que entrega resultados limpios y estructurados para una fácil integración y análisis.

GitHub License Python Version Status

Características

  • Consultar Pools/Pares de Uniswap:
    • Obtener pools/pares V2, V3 y V4 para una dirección de token determinada.
    • Recuperar detalles específicos de pool/pair por versión (v2, v3, v4) e ID.
  • Salida Formateada:
    • Devuelve datos en tablas markdown para consultas combinadas de pools.
    • Proporciona resúmenes de texto markdown para consultas específicas de pool/pair, incluyendo direcciones de token.

Instalación

Requisitos previos

  • Python: Versión 3.10 o superior.
  • uv: Un gestor de paquetes de Python (recomendado para la gestión de dependencias).
  • Clave de API de The Graph: Requerida para consultar Subgraphs. Obtén una en The Graph.

Configuración

  1. Clonar el Repositorio:

    git clone https://github.com/kukapay/uniswap-pools-mcp.git
    cd uniswap-pools-mcp
    
  2. Instalar Dependencias:

    uv sync
    
  3. Instalar en Claude Desktop:

    Instala el servidor como una aplicación de Claude Desktop:

    uv run mcp install main.py --name "Uniswap Pools"
    

    Archivo de configuración como referencia:

    {
       "mcpServers": {
           "Uniswap Pools": {
               "command": "uv",
               "args": [ "--directory", "/path/to/uniswap-pools-mcp", "run", "main.py" ],
               "env": { "THEGRAPH_API_KEY": "thegraph-api-key"}               
           }
       }
    }
    

    Reemplaza /path/to/uniswap-pools-mcp con tu ruta de instalación real, y thegraph-api-key con tu clave de API de The Graph.

Uso

El servidor proporciona varias herramientas para consultar datos de pools/pares de Uniswap.

Herramientas

  1. Obtener Todos los Pools/Pares para un Token:

    def get_token_pools(token_address: str) -> str:
    
    • Descripción: Consulta todos los pools/pares de Uniswap V2, V3 y V4 para una dirección de token determinada.

    • Parámetros:

      • token_address (str): Dirección Ethereum del token (p. ej., 0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 para USDC).
    • Salida: Tabla markdown con columnas: Versión, ID, Par, Nivel de Comisión, Volumen USD, Liquidez/ReserveUSD, Comisiones USD.

    • Ejemplo:

      Solicitud:

      Get Uniswap pools for token at address 0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48
      

      Salida:

      | Version | ID                                         | Pair      | Fee Tier | Volume USD | Liquidity/ReserveUSD | Fees USD |
      |---------|--------------------------------------------|-----------|----------|------------|---------------------|----------|
      | v2      | 0xb4e16d0168e52d35cacd2c6185b44281ec28c9dc | USDC/WETH | 3000     | 2000000.0  | 500000.0            | N/A      |
      | v3      | 0x88e6a0c2ddd26feeb64f039a2c41296fcb3f5640 | USDC/WETH | 500      | 1000000.0  | 123456789           | 5000.0   |
      | v4      | 0x1234567890abcdef1234567890abcdef12345678 | USDC/WETH | 1000     | 500000.0   | 987654321           | 2500.0   |
      
  2. Obtener Pool/Pair Específico por Versión e ID:

    def get_pool_data(version: str, pool_id: str) -> str:
    
    • Descripción: Consulta un pool/pair específico de Uniswap por versión (v2, v3 o v4) e ID.

    • Parámetros:

      • version (str): Versión de Uniswap (v2, v3 o v4).
      • pool_id (str): Dirección Ethereum del pool o par (p. ej., 0xb4e16d0168e52d35cacd2c6185b44281ec28c9dc).
    • Salida: Texto markdown con detalles: Versión, ID, Par, Dirección Token0, Dirección Token1, Nivel de Comisión, Volumen USD, Liquidez/ReserveUSD, Comisiones USD.

    • Ejemplo:

      Solicitud:

      Get Uniswap V2 pool data by ID 0xb4e16d0168e52d35cacd2c6185b44281ec28c9dc
      

      Salida:

      **Uniswap V2 Pair Details**
      - **Version**: v2
      - **ID**: 0xb4e16d0168e52d35cacd2c6185b44281ec28c9dc
      - **Pair**: USDC/WETH
      - **Token0 Address**: 0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48
      - **Token1 Address**: 0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2
      - **Fee Tier**: 3000 (0.3%)
      - **Volume USD**: 2000000.0
      - **Liquidity/ReserveUSD**: 500000.0
      - **Fees USD**: N/A
      

Licencia

Este proyecto está licenciado bajo la Licencia MIT. Consulta el archivo LICENSE para más detalles.