Keyboard/Electric piano controlled by arduino

As first, I hope my thread is in right place.
So well... I want to make a robot, which will punch my keyboard's (that one to play music on) keys - so it would play music from MIDI files or just programmed keys sequences (for example: G E E C D). That robot would have 61 arms to punch all 61 buttons. Would it be possible, with Arduino, to create such a robot? My major problem is to play - if possible - MIDI files, like you have in synthesia. It'd be like Synthesia in real life - but without PC/laptop. So you transfer some MIDI files to robot, and he plays music from those files. If it's not possible - would be possible to make that robot punch just G E E C D files? I was thinking about using electromagnets on every arm to make robot punch every key on my keyboard.
Something like that: Arduino-powered grand piano - YouTube but with MIDI notes from SD card (or other source).

I don't know about the midi part, it's probably possible.
Maybe start with GrumpyMike's page here MIDI Shield
Having a bunch of drivers, either relays or transistors, to make arms move up & down under Arduino control is certainly achievable. For example, this card I offer has 32 current sinks to energize a motor that could press a key.
4 shift registers are sent 4 bytes of data from an Arduino, 1 for transistor on and 0 for transistor off.
Cross Roads Electronics