I don't think you can use AND inside the InStr formula.
I tried this one and it works:
Mid([Message Body], InStr([Message Body], ""Engagement Name:"") + 17, InStr([Message Body], ""Version:"") - InStr([Message Body], ""Engagement Name:"") - 20 )
Please note:
The +17 is because ""Engagement Name:"" has 17 characters, so adding those characters to the formula tells BP that you want the text after the end of that string.
Similar with the -20 at the end of the formula, the InStr will find ""Version:"" but you don't want to extract that word nor the spaces before it.
You might need to adjust the 17 and the -20 depending on the actual format of the email; if you have a HTML email for example, you might get tags like "", but if you adjust the 17 and 20 you should be ok.