The easy thing would be to pass the merge2 and merge3 hooks the filename of the file they are merging, so they could choose to e.g. do something special if it ends in "ChangeLog".

It's not quite clear that this is the best way to do things, though, because filenames are not necessarily consistent forms of metadata. Cleaner, I think, would be to make it possible to add a line like
changelog true ChangeLog
to .mt-attrs, and have this somehow specify that ChangeLog should use the changelog merger. I'm not sure how to make this work, though.