  Maximally recoverable codes are a class of codes which recover from all
potentially recoverable erasure patterns given the locality constraints of the
code. In earlier works, these codes have been studied in the context of codes
with locality. The notion of locality has been extended to hierarchical
locality, which allows for locality to gradually increase in levels with the
increase in the number of erasures. We consider the locality constraints
imposed by codes with two-level hierarchical locality and define maximally
recoverable codes with data-local and local hierarchical locality. We derive
certain properties related to their punctured codes and minimum distance. We
give a procedure to construct hierarchical data-local MRCs from hierarchical
local MRCs. We provide a construction of hierarchical local MRCs for all
parameters. For the case of one global parity, we provide a different
construction of hierarchical local MRC over a lower field size.
