> So what exactly the miner_tx_hash field in the block, and what is its relation to the miner_tx and other transactions in the block?

`miner_tx_hash` is just that - the transaction *hash* of the miner transaction. The miner transaction is the transaction that pays out the reward for mining the block. It's type `gen` as it literally generates new Monero.

> If I use get_transactions() with the value of miner_tx_hash, it seems to find a transaction, but this transaction seems quite different from miner_tx embedded in the block. The one I get from get_transactions() has many more inputs and outputs etc.

Perhaps you are calling or parsing incorrectly. Here is a concrete example using testnet:

<pre>
curl -d '{"jsonrpc":"2.0","id":"0","method":"<b>get_block</b>","params":{"height":1234567}}' \
  http://localhost:28081/json_rpc \
  | <b>jq .result.block_header.miner_tx_hash</b>
</pre>

Extracts the miner tx hash: `c37d119798660baed9ee62b3fc7323f98487b2e9c6a155be843e238e31fdb415`


<pre>
curl -d '{"jsonrpc":"2.0","id":"0","method":"<b>get_block</b>","params":{"height":1234567}}' \
  http://localhost:28081/json_rpc \
  <b>| jq .result.json | jq -r | jq .miner_tx</b>
</pre>

Will extract the miner tx (form the same result, `get_block` with height `1234567`):
<pre>
{
  "version": 2,
  "unlock_time": 1234627,
  "vin": [
    {
      "gen": {
        "height": 1234567
      }
    }
  ],
  "vout": [
    {
      "amount": 6059550665332,
      "target": {
        "key": "81fb44f0bbd9e38e467461aed50ded48f2301ee0b0d553a1d0bc5a8a07cd0263"
      }
    }
  ],
  "extra": [
    1, ..., 78
  ],
  "rct_signatures": {
    "type": 0
  }
}
</pre>

New using `get_transactions` with the miner tx hash obtained above:

<pre>
curl -d '{"txs_hashes":["<b>c37d119798660baed9ee62b3fc7323f98487b2e9c6a155be843e238e31fdb415</b>"],"decode_as_json":true}' \
  http://localhost:28081/<b>get_transactions</b> \
  | <b>jq .txs[0].as_json | jq -r</b>
</pre>

<pre>
{
  "version": 2, 
  "unlock_time": 1234627, 
  "vin": [ {
      "gen": {
        "height": 1234567
      }
    }
  ], 
  "vout": [ {
      "amount": 6059550665332, 
      "target": {
        "key": "81fb44f0bbd9e38e467461aed50ded48f2301ee0b0d553a1d0bc5a8a07cd0263"
      }
    }
  ], 
  "extra": [ 1, ..., 78
  ], 
  "rct_signatures": {
    "type": 0
  }
}
</pre>

Identical.