mev-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| POLYGON_RPC_URL | Yes | The RPC URL for Polygon with mempool support | |
| MEV_MCP_LOGS_CHUNK_SIZE | No | Block range chunk size for eth_getLogs calls (default 10) | 10 |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| helloA | Simple connectivity check — confirms the MCP server is reachable. |
| get_gas_price_percentilesA | Returns the gas price distribution (base fee + priority fee percentiles) over the last N blocks. Works on any supported chain — does not require mempool access, just standard eth_feeHistory. Args: chain: "polygon" or "arbitrum" block_count: number of recent blocks to sample (default 20, max 1024) |
| check_pending_swaps_on_poolA | Watches the public mempool for pending transactions touching a given Uniswap v3 pool — either direct calls to the pool, or single-hop swaps routed through a known Uniswap v3 router (SwapRouter or SwapRouter02) whose calldata references both of the pool's tokens. Polygon only — Arbitrum uses a centralized sequencer with no public mempool, so this isn't available there. See the README for details. Note: only catches single-hop router swaps (exactInputSingle / exactOutputSingle). Multi-hop swaps (exactInput / exactOutput) encode the route as a packed path that isn't decoded yet — see roadmap. Args: pool_address: the pool contract address (catches direct calls) token0: address of one of the pool's two tokens token1: address of the pool's other token chain: only "polygon" is currently supported duration_seconds: how long to watch, capped at 60 seconds (default 15) |
| check_confirmed_swaps_on_poolA | Queries already-mined (confirmed) blocks for Uniswap v3 Swap events on
the given pool. Returns the total swap count and a breakdown by the This is NOT a mempool tool — it reads finalized on-chain state via eth_getLogs. Use it to establish ground-truth swap volume and compare against check_pending_swaps_on_pool: a large gap between confirmed volume and pending detections points to a mempool coverage issue, not swap scarcity. Polygon only. Args: pool_address: the Uniswap v3 pool contract address to query chain: only "polygon" is currently supported lookback_blocks: number of recent confirmed blocks to scan (default 600 ≈ 20 min at ~2 s/block on Polygon) |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
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/matiosera3-ops/mev-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server