Overview

Enabling mev-commit on your relay is simple and requires minimal changes to your existing setup.
This guide explains how to integrate your relay with mev-commit. Your relay will check if the current slot’s validator has opted into mev-commit:
  • If they haven’t opted in, your relay works normally:
mev-commit relay diagram
  • If they have opted in, your relay only accepts blocks from mev-commit builders:
mev-commit validator relay diagram
To implement this, your relay needs to track two things:
  1. Provider Registry: Lists opted-in builders and their BLS keys
  2. Validator Registry: Shows which validators have opted into mev-commit

Quick Start

1

View the Example Implementation

Mainnet

MEV_COMMIT_RPC=wss://chainrpc-wss.mev-commit.xyz
PROVIDER_REGISTRY_ADDR=ProviderRegistryAddressMainnet1_0_0

Testnet

MEV_COMMIT_RPC=wss://chainrpc-wss.testnet.mev-commit.xyz
PROVIDER_REGISTRY_ADDR=ProviderRegistryAddress0_7_0
2

Test and Deploy

Test filtering behavior on Holesky:
3

Register Your Relay

  1. Add your relay to our supporting relays list
  2. Provide connection details for validators
  3. Contact the Primev team to coordinate validator outreach
You have now successfully integrated your relay with mev-commit.

Implementation Details

What Contracts to Monitor

To track which validators have opted into mev-commit, you’ll want to monitor the following contracts:

Ethereum L1

NetworkContractAddress
MainnetValidator Opt In RouterValidatorOptInRouterProxyAddress
HoleskyValidator Opt In RouterValidatorOptInRouterAddress

mev-commit Chain

NetworkContractAddress
MainnetProvider RegistryProviderRegistryAddressMainnet1_0_0
TestnetProvider RegistryProviderRegistryAddress0_7_0
By monitoring these contracts, you can determine which validators and providers have opted into mev-commit and ensure compliance with the protocol.

How to Query the Provider Registry

The mev-commit provider registry contract maintains the list of authorized providers such as block builders. You can query this contract to validate builder addresses. Contract Details:
NetworkAddress
mev-commit chain mainnetProviderRegistryAddressMainnet1_0_0
mev-commit chain testnetProviderRegistryAddress0_7_0