> ## Documentation Index
> Fetch the complete documentation index at: https://rexrex.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Inspect Engine Capabilities

> Exchange and print the Engine API methods supported by the execution client.

Use `engine capabilities` to call `engine_exchangeCapabilities` on the authenticated Engine API.

This is the safest first Engine command because it only exchanges method names. It does not submit a payload, update forkchoice, or start payload building.

## Command

```sh theme={null}
rex engine \
  --jwt-secret ./jwt.hex \
  capabilities
```

## Example Output

```text theme={null}
ENGINE CAPABILITIES

Auth RPC:          http://127.0.0.1:8551
Requested methods: 16
Supported methods: 12

Supported by execution client:
  - engine_newPayloadV1
  - engine_newPayloadV2
  - engine_forkchoiceUpdatedV1
  - engine_forkchoiceUpdatedV2
  - engine_getPayloadV1
  - engine_getPayloadV2
  - engine_exchangeTransitionConfigurationV1
  - engine_getPayloadBodiesByHashV1
  - engine_getPayloadBodiesByRangeV1
```

## How It Works

Rex sends a conservative consensus-client capability list and prints the method list returned by the execution client.

The request is signed with a short-lived JWT built from the secret passed through `--jwt-secret`. The token is sent in the HTTP `Authorization: Bearer ...` header.

## Common Mistakes

* Use `http://127.0.0.1:8551`, not the public `:8545` RPC port.
* Use the same `jwt.hex` file that Reth received through `--authrpc.jwtsecret`.
* Keep the machine clock sane. Engine API JWT validation checks the issued-at timestamp.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.