I have no programming skills to start programming something around the MTP for Linux, but at the moment I have a device which uses it and I have found some interesting links about it.
First, an zip-exe file from Microsoft, describing the MTP very extensive: MTP Specs (you can unzip it).
The second is a Power Point Presentation, which contains detailed information about the structure, the ideas, has some graphics, and so on: Presentation.
The third thing I found was information about the error codes: Error Codes.
So if anyone is interested to build something about it, please drop a note. Maybe I can help organising something around it, or can test these things with my device.
If one of the links above does not work, I have local copies.
I want to add a last note: a development of an implementation of mtp is not only important for Linux, but also for BSD, MacOS and Windows 2000 and older Windows Systems. So there is maybe a possibility to exchange code and ideas between Possible projects 🙂