how the GATT server be notified that a client made a read request?
I can't find event for that to handle this case.
In simple words, the GATT server is not notified of the read request. This is because the read request is handled completely by the BLE stack and needs no user intervention. What application has to do is to update the GATT database with updated value using API (GattsWriteAttributeValue) so that the read request is serviced with most updated value.