Uniswap Pools MCP
Query Uniswap pools and pairs by token address for structured data.
Uniswap Pools MCP
An MCP server for querying Uniswap pools/pairs by token address, delivering clean, structured results for easy integration and analysis.
Features
- Query Uniswap Pools/Pairs:
- Fetch V2, V3, and V4 pools/pairs for a given token address.
- Retrieve specific pool/pair details by version (
v2,v3,v4) and ID.
- Formatted Output:
- Returns data in markdown tables for combined pool queries.
- Provides markdown text summaries for specific pool/pair queries, including token addresses.
Installation
Prerequisites
- Python: Version 3.10 or higher.
- uv: A Python package manager (recommended for dependency management).
- The Graph API Key: Required for querying Subgraphs. Obtain one from The Graph.
Setup
-
Clone the Repository:
git clone https://github.com/kukapay/uniswap-pools-mcp.git cd uniswap-pools-mcp -
Install Dependencies:
uv sync -
Installing to Claude Desktop:
Install the server as a Claude Desktop application:
uv run mcp install main.py --name "Uniswap Pools"Configuration file as a reference:
{ "mcpServers": { "Uniswap Pools": { "command": "uv", "args": [ "--directory", "/path/to/uniswap-pools-mcp", "run", "main.py" ], "env": { "THEGRAPH_API_KEY": "thegraph-api-key"} } } }Replace
/path/to/uniswap-pools-mcpwith your actual installation path, andthegraph-api-keywith your API key from The Graph.
Usage
The server provides several tools to query Uniswap pool/pair data.
Tools
-
Get All Pools/Pairs for a Token:
def get_token_pools(token_address: str) -> str:-
Description: Queries all Uniswap V2, V3, and V4 pools/pairs for a given token address.
-
Parameters:
token_address(str): Ethereum address of the token (e.g.,0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48for USDC).
-
Output: Markdown table with columns: Version, ID, Pair, Fee Tier, Volume USD, Liquidity/ReserveUSD, Fees USD.
-
Example:
Prompt:
Get Uniswap pools for token at address 0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48Output:
| 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 |
-
-
Get Specific Pool/Pair by Version and ID:
def get_pool_data(version: str, pool_id: str) -> str:-
Description: Queries a specific Uniswap pool/pair by version (
v2,v3, orv4) and ID. -
Parameters:
version(str): Uniswap version (v2,v3, orv4).pool_id(str): Ethereum address of the pool or pair (e.g.,0xb4e16d0168e52d35cacd2c6185b44281ec28c9dc).
-
Output: Markdown text with details: Version, ID, Pair, Token0 Address, Token1 Address, Fee Tier, Volume USD, Liquidity/ReserveUSD, Fees USD.
-
Example:
Prompt:
Get Uniswap V2 pool data by ID 0xb4e16d0168e52d35cacd2c6185b44281ec28c9dcOutput:
**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
-
License
This project is licensed under the MIT License. See the LICENSE file for details.
関連サーバー
Airtable
Interact with Airtable's API to manage bases, tables, and records.
Simple Loki MCP Server
Query Grafana Loki logs using logcli with an automatic fallback to the HTTP API.
pg-aiguide
Postgres skills and documentation to help AI coding tools generate better PostgreSQL code.
MCP MySQL Server
An MCP server based on Spring AI that executes arbitrary SQL queries against a configured MySQL database.
MCP Vertica
A server for managing and querying Vertica databases, including connection, schema, and security management.
VictoriaMetrics
A server for writing and querying time series data using the VictoriaMetrics API.
SQLAlchemy ODBC
An MCP server for connecting to any ODBC-compliant database via SQLAlchemy, supporting various DBMS backends.
MongoDB
Interact with MongoDB databases using natural language. Query collections, inspect schemas, and manage data.
SchemaCrawler
Connect to any relational database, and be able to get valid SQL, and ask questions like what does a certain column prefix mean.
VikingDB
A server for storing and searching data in a VikingDB instance, configurable via command line or environment variables.