# beaconcha.in

Beaconchain is a platform providing real-time data and analytics for the Ethereum 2.0 Beacon Chain, offering insights into validators, blocks, and network performance.

- **Category:** analytics
- **Auth:** API_KEY
- **Composio Managed App Available?** N/A
- **Tools:** 37
- **Triggers:** 0
- **Slug:** `BEACONCHAIN`
- **Version:** 20260227_00

## Tools

### Get Chart

**Slug:** `BEACONCHAIN_GET_CHART`

Retrieve chart visualizations from beaconcha.in as PNG images. Use when you need visual representations of Ethereum Beacon Chain data like validator counts, staked ether, network liveness, or block statistics.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `chart` | string ("blocks" | "validators" | "staked_ether" | "average_balance" | "network_liveness" | "participation_rate" | "stake_effectiveness" | "balance_distribution" | "effective_balance_distribution" | "performance_distribution_365d" | "deposits" | "withdrawals" | "graffiti_wordcloud" | "pools_distribution" | "historic_pool_performance" | "avg_gas_used_chart_data" | "execution_burned_fees" | "block_gas_used" | "block_count_chart_data" | "block_time_avg_chart_data" | "avg_gas_limit_chart_data" | "avg_block_util_chart_data" | "tx_count_chart_data") | Yes | Chart type to retrieve. Specifies which visualization to generate from beaconcha.in charts. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Epoch

**Slug:** `BEACONCHAIN_GET_EPOCH`

Retrieve aggregate metrics and status for a beacon chain epoch. Use this tool to fetch epoch-level statistics including validator counts, balances, participation rates, block counts, and various operations (slashings, deposits, exits). Supports lookup by epoch number or keywords 'latest' or 'finalized'.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `epoch` | string | Yes | The epoch to fetch. Provide an integer epoch number (>= 0), or one of the keywords `latest` or `finalized`. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get ETH1 Deposits by Transaction Hash

**Slug:** `BEACONCHAIN_GET_ETH1_DEPOSITS_BY_TX_HASH`

Retrieve all beacon chain validator deposit events associated with a specific execution-layer transaction hash. Use this tool to inspect deposit transactions and verify deposit parameters like amount, public key, and withdrawal credentials. Returns an empty array if the transaction contains no deposit events.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `tx_hash` | string | Yes | Execution-layer transaction hash to inspect. Provide tx hash as a 0x-prefixed hex string (64 hex characters after 0x, e.g., '0x3629639fe74ef981ff72ba2678130c700b779964e6c22fe42201445084e9d343'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get ETH.Store Daily Aggregates

**Slug:** `BEACONCHAIN_GET_ETH_STORE_DAILY`

Retrieve ETH.Store daily aggregate metrics for Ethereum validators. Use this to analyze the average financial return validators achieved over a specific 24-hour period, including APR metrics, consensus/execution layer rewards, and balance aggregates.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `day` | string | Yes | The beaconchain-day to fetch. Provide an integer day index (>= 0, e.g., '0', '100', '1000'), or the keyword 'latest' for the most recently computed day. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get ERC-20 Token Balances

**Slug:** `BEACONCHAIN_GET_EXECUTION_ADDRESS_ERC20_TOKENS`

Retrieve a paginated list of ERC-20 token balances for a specific Ethereum address. Use offset and limit query parameters for pagination. Returns token contract address, balance in token units, and token symbol for each ERC-20 token held by the address.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Maximum number of tokens to return per page. Allowed range is 1 to 200. |
| `offset` | integer | No | Number of items to skip from the start of the result set. Use 0 for the first page. |
| `address` | string | Yes | Ethereum account address to query. Provide a 0x-prefixed, 20-byte hex string (40 hexadecimal characters after 0x). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Execution Block

**Slug:** `BEACONCHAIN_GET_EXECUTION_BLOCK`

Retrieve one or more execution-layer blocks by block number from the Ethereum Beacon Chain. Use this tool to look up execution block details including block hash, timestamp, rewards, gas usage, transaction counts, and consensus information. Supports querying up to 100 blocks in a single request by providing block numbers as a comma-separated list. Returns an array of execution block data. If a requested block number is not found, it will be omitted from the results.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `block_number` | string | Yes | One or more execution block numbers as a comma-separated list (e.g., '17000000' or '17000000,17000001,17000002'). Each item must be a non-negative integer. A maximum of 100 block numbers is allowed per request. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Execution Produced Blocks

**Slug:** `BEACONCHAIN_GET_EXECUTION_PRODUCED_BLOCKS`

Retrieve execution-layer blocks attributed to one or more producers. Use this tool to query blocks produced by specific fee recipients, proposer indices, or validator public keys. Supports comma-separated lists to query multiple producers. Returns block details including gas usage, fees, transactions, and timestamps.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `sort` | string ("asc" | "desc") | No | Sort order for execution blocks. |
| `limit` | integer | No | Maximum number of blocks to return. Allowed range is 1 to 100. |
| `offset` | integer | No | Number of items to skip from the start of the merged result set. Use 0 for the first page. |
| `address_index_or_pubkey` | string | Yes | Comma-separated list of producers to query. Each item may be: (1) a fee recipient address (0x-prefixed, 20-byte hex, or a valid ENS name), (2) a proposer index (non-negative integer), or (3) a validator public key (0x-prefixed, 48-byte BLS pubkey: 96 hex characters). Provide multiple items by separating them with commas. A maximum of 20 addresses and 100 indices/pubkeys is accepted per request. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Latest State

**Slug:** `BEACONCHAIN_GET_LATEST_STATE`

Retrieve the latest known Ethereum Beacon Chain network state. Returns current slot, epoch numbers, finalized epoch, finality delay indicator, syncing status, and ETH/USD price along with multi-currency conversion rates. Use this to check current network status and get real-time ETH pricing data.

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Network Performance

**Slug:** `BEACONCHAIN_GET_NETWORK_PERFORMANCE`

Retrieve aggregated network performance metrics for the Ethereum Beacon Chain. Use this to analyze validator performance across attestations, proposals, and sync committee duties over a specified time window. Returns beacon scores, duty statistics, and finality information.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `chain` | string ("mainnet" | "hoodi") | No | The Ethereum chain to query. Defaults to 'mainnet'. Use 'hoodi' for Hoodi testnet. |
| `range` | object | Yes | Time range selector specifying the evaluation window for performance metrics. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Explorer Health

**Slug:** `BEACONCHAIN_GET_NODE_HEALTH`

Check the health status of the beaconcha.in explorer service. Returns status of monitoring modules including execution layer data, consensus layer data, services, Redis, app, and API modules. Use this to verify the beaconcha.in explorer is operational before making other API calls.

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Validator Queues

**Slug:** `BEACONCHAIN_GET_QUEUES`

Retrieve current queue metrics for Ethereum Beacon Chain validators. Use this tool to check activation queue status, exit queue status, withdrawal sweep progress, and chain finality. Returns deposit queue count and balance, exit queue count and balance, estimated processing times, and churn limits.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `chain` | string | No | Specifies the Ethereum network to query. Options: 'mainnet' or 'holesky'. Defaults to 'mainnet' if omitted. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Rocket Pool Validator

**Slug:** `BEACONCHAIN_GET_ROCKETPOOL_VALIDATOR`

Retrieve Rocket Pool-specific metadata for validators including minipool status, node fee, smoothing pool status, and RPL stake metrics. Use this to access Rocket Pool protocol data such as minipool addresses, node operator information, commission rates, and reward details. Returns empty data array if the validator is not a Rocket Pool validator.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `indexOrPubkey` | string | Yes | Comma-separated list (no spaces) of validator identifiers to query. Each identifier may be either: (1) A validator index as a base-10 integer (e.g., '652648'), or (2) A BLS public key as a 96-hex-character string with or without the 0x prefix (case-insensitive). The server resolves public keys to validator indices before querying data. Maximum 100 identifiers allowed. Public keys that cannot be resolved to an existing validator index cause the request to fail with HTTP 400. Duplicate identifiers are de-duplicated internally. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Slot

**Slug:** `BEACONCHAIN_GET_SLOT`

Retrieve detailed information about an Ethereum Beacon Chain slot. Use this tool to look up slot details including attestations, slashing counts, block roots, execution payload data, validator proposer, graffiti, and sync aggregate information. Supports lookup by slot number, 'latest'/'head' keywords, or block root hash. Returns comprehensive slot data including: attestation count, block roots, epoch info, execution layer details (gas, fees, transactions), proposer info, and withdrawal count.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `slot_or_hash` | string | Yes | The slot to fetch. Provide: (1) an integer slot number (>= 0, e.g., '1', '100'), (2) the special tags 'latest' or 'head' for the current slot, (3) or a 0x-prefixed 32-byte block root hash (64 hex characters after 0x, e.g., '0xa1b2c3...'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Slot Attestations

**Slug:** `BEACONCHAIN_GET_SLOT_ATTESTATIONS`

Retrieve all attestations included in the beacon block for a specific slot. Use this tool to get detailed attestation data including committee participation, checkpoint information, and validator indices for attestations in a given slot.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `slot` | string | Yes | The slot to fetch. Provide an integer slot number (>= 0) or the special tag 'latest' for the most recently processed slot. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Slot Attester Slashings

**Slug:** `BEACONCHAIN_GET_SLOT_ATTESTER_SLASHINGS`

Retrieve all attester slashing operations included in the beacon block for a specific slot. Use this tool to check for attester slashings at a given slot number or the latest processed slot.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `slot` | string | Yes | The slot to fetch. Provide an integer slot number (>= 0) or the special tag `latest` for the most recently processed slot. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Slot Proposer Slashings

**Slug:** `BEACONCHAIN_GET_SLOT_PROPOSER_SLASHINGS`

Retrieve all proposer slashing operations included in the beacon block for a specific slot. Use this tool to check for proposer slashings at a given slot number or the latest processed slot.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `slot` | string | Yes | The slot to fetch. Provide an integer slot number (>= 0) or the special tag `latest` for the most recently processed slot. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Slot Voluntary Exits

**Slug:** `BEACONCHAIN_GET_SLOT_VOLUNTARY_EXITS`

Retrieve all voluntary exit operations included in the beacon block for a specific slot. Use when you need to examine which validators submitted exit requests in a given slot. Returns an empty array if the slot has no voluntary exits.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `slot` | string | Yes | The slot to fetch. Provide an integer slot number (>= 0). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Sync Committee

**Slug:** `BEACONCHAIN_GET_SYNC_COMMITTEE`

Retrieve the sync committee membership for a given sync period. Returns a list of 512 validator indices that participate in light-client finality for the specified period. Each sync period spans 256 epochs. Use this to determine which validators have sync committee duties during a specific period.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `period` | string | Yes | The sync period to fetch. Provide a non-negative integer period index (e.g., '0', '500', '1000'), or use one of the special tags: 'latest' (current period) or 'next' (the upcoming period if available). Each period spans 256 consecutive epochs. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Validator

**Slug:** `BEACONCHAIN_GET_VALIDATOR`

Retrieve detailed information about an Ethereum Beacon Chain validator. Use this tool to look up validator status, balance, activation epochs, slashing status, and other details. Supports lookup by validator index or BLS public key. Returns validator data including: current status (active_online, active_offline, pending, exiting, slashed, exited), balance in Gwei, activation/exit epochs, and withdrawal credentials.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `validator_id` | string | Yes | Validator identifier. Accepts: (1) Validator index as a number string (e.g., '0', '1', '100'), or (2) BLS public key with 0x prefix (96 hex characters, e.g., '0xa1d1ad07143535...'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Validator Attestation Efficiency

**Slug:** `BEACONCHAIN_GET_VALIDATOR_ATTESTATION_EFFICIENCY`

Retrieve normalized attestation inclusion effectiveness for one or more validators. Use this tool to measure how effectively validators are getting their attestations included in the Beacon Chain. A score of 1.0 indicates perfect effectiveness (100% inclusion), while higher scores indicate lower effectiveness (max 2.0 for 0% inclusion). Supports lookup by validator index, BLS public key, or a mix of both (comma-separated, maximum 100 validators per request by default).

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `validator_id` | string | Yes | Comma-separated validator identifiers (maximum 100 items by default). Accepts: (1) Validator index as a number string (e.g., '1', '100', '1,2,3'), or (2) BLS public key with 0x prefix (96 hex characters), or (3) a mix of both. Example: '1,2,3' or '0xa1d1ad07143535...' or '1,0xa1d1ad07143535...,3'. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Validator Attestations

**Slug:** `BEACONCHAIN_GET_VALIDATOR_ATTESTATIONS`

Retrieve attestations observed for one or more validators within a bounded epoch window. By default, returns data for the last 100 epochs. Use when you need to check validator attestation history, verify attestation performance, or analyze missed attestations.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `slim` | boolean | No | When true, return a slimmed response that excludes `week`, `week_start`, `week_end`, and `committeeindex` fields from each item. |
| `endEpoch` | integer | No | End epoch for the query window. Defaults to `latest`. Must be within `[startEpoch, latest]` when provided. |
| `startEpoch` | integer | No | Start epoch for the query window. Defaults to `latest - 99`. Must be within `[latest-99, latest]` and less than or equal to `endEpoch` when provided. |
| `indexOrPubkey` | string | Yes | Comma-separated validator indices and/or public keys (maximum 100 items by default). Accepts validator index as number string (e.g., '1', '100') or BLS public key with 0x prefix (96 hex characters, e.g., '0xa1d1ad07143535...'). For multiple validators, use comma separation: '1,2,3'. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Validator Balance History

**Slug:** `BEACONCHAIN_GET_VALIDATOR_BALANCE_HISTORY`

Retrieve per-epoch balance history for one or more Ethereum Beacon Chain validators. Use optional query parameters to control the time window (latest_epoch, offset, limit). Returns an array of balance snapshots showing how validator balances changed over time, including both total balance and effective balance. Useful for tracking validator performance and generating historical balance charts.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Number of epochs to return in the window. Allowed range is 1 to 100. Defaults to 100. |
| `offset` | integer | No | Number of epochs to skip backwards from `latest_epoch` before starting the window. Must be non-negative and not exceed `latest_epoch`. Defaults to 0. |
| `latest_epoch` | integer | No | Most recent epoch to include (inclusive). Defaults to the latest processed epoch. Must be less than or equal to the latest processed epoch. |
| `index_or_pubkey` | string | Yes | Comma-separated validator indices and/or public keys (maximum 100 items by default). Accepts: (1) Validator index as a number string (e.g., '1', '2', '100'), (2) BLS public key with 0x prefix (96 hex characters), or (3) Comma-separated list of indices/pubkeys (e.g., '1,2,3' or 'pubkey1,pubkey2'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Validator BLS Changes

**Slug:** `BEACONCHAIN_GET_VALIDATOR_BLS_CHANGES`

Retrieve on-chain BLS-to-execution credential change messages (EIP-4881) for validators. Use this tool to check if validators have changed their withdrawal credentials from BLS (0x00) to execution-layer addresses (0x01).

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `index_or_pubkey` | string | Yes | Comma-separated validator indices and/or public keys (maximum 100 items by default). Accepts: (1) Validator index as a number string (e.g., '1', '2', '100'), or (2) BLS public key with 0x prefix (96 hex characters). Multiple identifiers can be combined (e.g., '1,2,3' or '1,0xa1d1ad0714...,100'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Validator Consensus Rewards

**Slug:** `BEACONCHAIN_GET_VALIDATOR_CONSENSUS_REWARDS`

Retrieve consensus-layer rewards for one or more validators over multiple lookback windows. Returns reward totals for the last 1, 7, 31, and 365 days, plus cumulative totals when available. All amounts are returned in gwei. Supports lookup by validator index or BLS public key.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `index_or_pubkey` | string | Yes | Comma-separated validator indices and/or public keys (maximum 100 items by default). Accepts: (1) Validator index as a number string (e.g., '1', '2', '3'), or (2) BLS public key with 0x prefix (96 hex characters). For multiple validators, use comma separation (e.g., '1,2,3'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Validator Daily Stats

**Slug:** `BEACONCHAIN_GET_VALIDATOR_DAILY_STATS`

Retrieve per-day statistics for a single Ethereum Beacon Chain validator by index. Returns daily balance snapshots (start/end/min/max), duty counts (proposed/missed blocks, attestations), and deposit/withdrawal activity. Use this tool to analyze validator performance over time, track balance changes, and identify issues like missed duties or slashing events. Supports filtering by day range using `start_day` and `end_day` parameters.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `index` | integer | Yes | Validator index to query. Must be a non-negative integer (>= 0). |
| `end_day` | integer | No | Last day index to include (inclusive). Defaults to the latest exported day when omitted. |
| `start_day` | integer | No | First day index to include (inclusive). Must be less than or equal to `end_day`. When omitted, the API returns all days up to `end_day`. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Validator Deposits

**Slug:** `BEACONCHAIN_GET_VALIDATOR_DEPOSITS`

Retrieve execution-layer deposit events for one or more validators. Use when you need to check deposit history, verify deposit amounts, or audit withdrawal credentials for validators.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `indexOrPubkey` | string | Yes | Comma-separated validator indices and/or public keys (maximum 100 items by default). Accepts validator index as number string (e.g., '1', '100') or BLS public key with 0x prefix (96 hex characters, e.g., '0xa1d1ad07143535...'). For multiple validators, use comma separation: '1,2,3'. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Validator Execution Rewards

**Slug:** `BEACONCHAIN_GET_VALIDATOR_EXECUTION_REWARDS`

Retrieve execution-layer rewards (priority fees and MEV payments) for one or more validators. Values are reported in wei and include reward totals for the last 1, 7, 31, and 365 days, plus cumulative rewards since genesis when available. Accepts up to 100 validator identifiers.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `validator_ids` | string | Yes | Comma-separated validator indices and/or public keys (maximum 100 items). Example: '1,2,3' or '0xa1d1ad07143535...,100,200'. Accepts validator index as a number string or BLS public key with 0x prefix (96 hex characters). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Validator Income History

**Slug:** `BEACONCHAIN_GET_VALIDATOR_INCOME_HISTORY`

Retrieve a per-epoch income breakdown for one or more validators. Returns consensus-layer rewards/penalties in gwei and execution-layer tips in wei. Use this to analyze validator earnings over time, including attestation rewards, proposer rewards, penalties, and MEV/tips.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Number of epochs to return in the window. Allowed range is 1 to 100. Defaults to 100. |
| `offset` | integer | No | Number of epochs to skip backwards from `latest_epoch` before starting the window. Must be non-negative and not exceed `latest_epoch`. Default is 0. |
| `latest_epoch` | integer | No | Most recent epoch to include (inclusive). Defaults to the latest finalized epoch. Must be less than or equal to the latest finalized epoch at request time. |
| `index_or_pubkey` | string | Yes | Comma-separated validator indices and/or public keys (maximum 100 items by default). Accepts: (1) Validator index as a number string (e.g., '1', '2', '100'), or (2) BLS public key with 0x prefix (96 hex characters), or (3) Multiple values comma-separated (e.g., '1,2,3' or '1,0xa1d1ad...,100'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Validator Leaderboard

**Slug:** `BEACONCHAIN_GET_VALIDATOR_LEADERBOARD`

Retrieve the current top 100 validators ranked by 7-day consensus-layer rewards. Returns performance metrics including 1-day, 7-day, 31-day, 365-day, and total rewards in Gwei for each validator. Use this to identify the highest-performing validators on the Ethereum Beacon Chain over the past week.

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Validator Proposals

**Slug:** `BEACONCHAIN_GET_VALIDATOR_PROPOSALS`

Retrieve beacon chain blocks proposed by one or more validators within a bounded epoch window. By default, returns proposals from the last 100 epochs. Use this to get proposal history for validators by their indices or public keys.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `epoch` | integer | No | Upper bound for the epoch window (inclusive). Results include proposals from epochs in the range [epoch-100, epoch]. Defaults to the latest processed epoch when omitted. Must be a non-negative integer. |
| `indexOrPubkey` | string | Yes | Comma-separated validator indices and/or public keys (maximum 100 items by default). Each identifier must be either a validator index (base-10 integer) or a 48-byte BLS public key as 0x-prefixed hex (96 hex characters after 0x) or without the 0x prefix. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Validators by Deposit Address

**Slug:** `BEACONCHAIN_GET_VALIDATORS_BY_DEPOSIT_ADDRESS`

Retrieve validators that have made deposits from a specific execution-layer address. Supports ENS names which are resolved server-side. Returns validator public keys, signature validity, and validator indices for all deposits from the address.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Maximum number of records to return. Allowed range is 1 to 2000. Defaults to 2000. |
| `offset` | integer | No | Number of items to skip from the start of the result set. Use 0 for the first page. |
| `eth1address` | string | Yes | Execution-layer address whose deposit transactions you want to inspect. Provide a 0x-prefixed, 20-byte hex string (40 hex characters after 0x). ENS names are also accepted and resolved server-side. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Validators by Withdrawal Credentials

**Slug:** `BEACONCHAIN_GET_VALIDATORS_BY_WITHDRAWAL_CREDENTIALS`

Retrieve validators whose withdrawal credentials match the provided value or execution-layer address. Use this tool to find all validators associated with a specific withdrawal credential (32-byte hex) or Ethereum address (20-byte hex). ENS names are supported for address lookups. Results are paginated using limit and offset parameters.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Maximum number of validators to return. Defaults to 10. Allowed range is 1 to 200 for standard users; higher limits may be available to premium accounts. |
| `offset` | integer | No | Number of items to skip from the start of the result set. Use 0 for the first page. |
| `withdrawal_credentials_or_eth1_address` | string | Yes | Withdrawal credentials (32 bytes; 0x-prefixed hex) or an execution-layer address (0x-prefixed, 20-byte hex). ENS names are accepted for the address form. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Validators Proposal Luck

**Slug:** `BEACONCHAIN_GET_VALIDATORS_PROPOSAL_LUCK`

Retrieve proposal luck statistics for one or more Ethereum Beacon Chain validators. Use this to analyze how lucky validators have been with block proposals compared to expected rates.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `validators` | string | Yes | Comma-separated list (no spaces) of validator identifiers. Each identifier must be either: (1) A validator index as a base-10 integer (e.g., '652648'), or (2) A BLS public key as a 96-hex-character string with or without the 0x prefix (case-insensitive). Maximum 100 identifiers allowed (server-enforced). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Validators Queue

**Slug:** `BEACONCHAIN_GET_VALIDATORS_QUEUE`

Retrieve current queue metrics for validators on the Ethereum Beacon Chain. Returns counts and total effective balances for validators awaiting activation and validators scheduled to exit. Use this to monitor validator queue status and network entry/exit activity.

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Validator Withdrawals

**Slug:** `BEACONCHAIN_GET_VALIDATOR_WITHDRAWALS`

Retrieve withdrawal operations attributed to one or more validators within a bounded epoch window. Use this tool to fetch historical withdrawal data for validators on the Ethereum Beacon Chain. The API returns withdrawals from up to 100 epochs (defaulting to the most recent 100 epochs if no epoch is specified).

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `epoch` | integer | No | Upper bound (inclusive) for the 100-epoch window used to fetch withdrawals. Defaults to the latest processed epoch when omitted. Must be a non-negative integer. The API will return withdrawals from (epoch - 99) to epoch (a 100-epoch window). |
| `index_or_pubkey` | string | Yes | Comma-separated validator indices and/or public keys (maximum 100 items by default). Accepts: (1) Validator index as a number string (e.g., '100', '1,2,3'), or (2) BLS public key with 0x prefix (96 hex characters), or (3) a mix of both separated by commas. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Post Validators

**Slug:** `BEACONCHAIN_POST_VALIDATORS`

Retrieve validator information using a JSON request body for multiple validators. Use this when the list of identifiers is too long for the GET path parameter (up to 100 identifiers). Supports lookup by validator indices or BLS public keys. Returns validator data including status, balance, activation/exit epochs, slashing status, and withdrawal credentials.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `indicesOrPubkey` | string | Yes | Comma-separated list (no spaces) of validator identifiers. Each identifier must be either: (1) A validator index as a base-10 integer (e.g., '652648'), or (2) A BLS public key as a 96-hex-character string with or without the 0x prefix (case-insensitive). The server resolves public keys to validator indices before querying data. Maximum 100 identifiers allowed. Identifiers that cannot be parsed or resolved result in HTTP 400. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Resolve ENS Name or Address

**Slug:** `BEACONCHAIN_RESOLVE_ENS`

Resolve ENS (Ethereum Name Service) names to addresses and vice versa. Use this tool to perform bidirectional lookups between ENS domain names and Ethereum addresses. Accepts either an ENS name (e.g., 'vitalik.eth') or an Ethereum address and returns the corresponding mapping.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `domain` | string | Yes | ENS domain name or Ethereum address to resolve. Accepts: (1) ENS name (e.g., 'vitalik.eth'), or (2) Ethereum address with 0x prefix (e.g., '0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045'). Provides bidirectional resolution between ENS names and Ethereum addresses. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |
