Uniswap池查询服务

一个用于通过代币地址查询Uniswap池/对的MCP服务器,提供清晰、结构化的结果以便于集成和分析。

  • by kukapay
  • Python
  • 本地部署
  • 4 星标
  • 更新于
在 GitHub 查看 kukapay/uniswap-pools-mcp

使用说明

Uniswap池MCP

MCP服务器,用于按令牌地址查询Uniswap池/对,提供干净、结构化的结果,便于集成和分析。

特性

  • 查询Uniswap池/对:
    • 获取给定令牌地址的V2、V3和V4池/对。
    • 按版本检索特定池/对详细信息(v2, v3, v4)以及ID。
  • 格式化输出:
    • 返回组合池查询的markdown表中的数据。
    • 为特定的池/对查询提供标记文本摘要,包括令牌地址。

安装

先决条件

  • python:版本3.10或更高版本。
  • 紫外线Python包管理器(推荐用于依赖关系管理)。
  • 图形API键:查询子图时需要。从以下位置获取一个 图表.

设置

  1. 克隆存储库:

    git clone https://github.com/kukapay/uniswap-pools-mcp.git
    cd uniswap-pools-mcp
    
  2. 再进行:

    uv sync
    
  3. 安装到克劳德桌面:

    将服务器安装为Claude Desktop应用程序:

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

    配置文件作为参考:

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

    替换 /path/to/uniswap-pools-mcp 根据您的实际安装路径,以及 thegraph-api-key 使用图形中的API键。

用法

服务器提供了多种工具来查询Uniswap池/对数据。

工具

  1. 获取代币的所有池/对:

    def get_token_pools(token_address: str) -> str:
    
    • 描述:查询给定令牌地址的所有Uniswap V2、V3和V4池/对。

    • 参数:

      • token_address (str):令牌的以太坊地址(例如。, 0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 美元)。
    • 输出:带列的Markdown表:版本、ID、配对、费用级别、交易量美元、流动性/储备美元、费用美元。

    • 示例:

      提示:

      Get Uniswap pools for token at address 0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48
      

      输出:

      | 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. 按版本和ID获取特定池/对:

    def get_pool_data(version: str, pool_id: str) -> str:
    
    • 描述:按版本查询特定的Uniswap池/对(v2, v3,或 v4)以及ID。

    • 参数:

      • version (str): Uniswap 版本 (v2, v3,或 v4).
      • pool_id (str):池或对的以太坊地址(例如。, 0xb4e16d0168e52d35cacd2c6185b44281ec28c9dc).
    • 输出:带有详细信息的Markdown文本:版本、ID、配对、Token0地址、Token1地址、费用级别、交易量美元、流动性/储备美元、费用美元。

    • 示例:

      提示:

      Get Uniswap V2 pool data by ID 0xb4e16d0168e52d35cacd2c6185b44281ec28c9dc
      

      输出:

      **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
      

许可证

该项目根据MIT许可证获得许可。请参阅 许可证 文件以获取详细信息。