> For the complete documentation index, see [llms.txt](/llms.txt).

# Sign messages and transactions

Sign plaintext messages, EIP-712 typed data, or submit raw EVM transactions.

## Ask your agent[​](#ask-your-agent "Direct link to Ask your agent")

```
You (to your agent): "Sign this message on Ethereum: Hello, world"

```

```
You (to your agent): "Sign this EIP-712 typed data: <paste JSON payload>"

```

Your agent shows the exact payload and asks you to confirm before signing.

## Prerequisites[​](#prerequisites "Direct link to Prerequisites")

- [Quickstart](/agent-wallet/quickstart/) completed
- Understanding of what you are signing. Review payloads before confirming.

## Sign a plaintext message[​](#sign-a-plaintext-message "Direct link to Sign a plaintext message")

```
mm wallet sign-message --message "<TEXT>" --chain-id <CHAIN_ID> [--wait]

```

## Sign EIP-712 typed data[​](#sign-eip-712-typed-data "Direct link to Sign EIP-712 typed data")

```
mm wallet sign-typed-data --chain-id <CHAIN_ID> --payload '<JSON>' [--wait]

```

The payload must be valid JSON with `domain`, `types`, `primaryType`, and `message` fields.

## Send a raw transaction[​](#send-a-raw-transaction "Direct link to Send a raw transaction")

If the calldata is unfamiliar, decode it first:

```
mm decode --payload <0x-calldata>

```

Then submit the transaction:

```
mm wallet send-transaction --chain-id <CHAIN_ID> --payload '<JSON>' [--wait]

```

The payload must include at least a `to` address. See the commands reference for the full schema. If `mm decode` returns `Call unknown function`, treat the transaction as higher risk and confirm the payload before signing.

## Server-wallet polling[​](#server-wallet-polling "Direct link to Server-wallet polling")

In server-wallet mode, signing commands may return a `pollingId` when `--wait` is omitted. Track pending requests:

```
mm wallet requests list
mm wallet requests watch --polling-id <POLLING_ID>

```

In bring your own wallet mode, results return immediately when the mnemonic is unlocked.

## Related commands[​](#related-commands "Direct link to Related commands")

See [mm wallet](/agent-wallet/reference/commands/#mm-wallet) and [mm decode](/agent-wallet/reference/commands/#mm-decode)in the commands reference.
