This comes from [1] which is an interesting page.
It's a de facto standard though. And now specified in the USB standard. Android devices expose themselves using MTP when connected with USB for instance. I think the goal was to allow devices to expose their media data / receive media stuff from the computer while still being able to be used. Exposing as a mass storage device was problematic because conflict could happen when both the device and the computer tried to access the drive, so at the time, most mp3 players just couldn't be used both as a mass storage devices and as an mp3 player at the same time. You can still use your Android phone while it is plugged as an MTP device (fortunately).
Though it seems something like Samba, NTP or sshfs could have been possible. I don't know what is the full rationale behind the choice of developing a custom protocol. MTP probably provides some features that makes it easier to manage media stuff. I've not looked into it much. It does extend the Picture Transfer Protocol (PTP) (used in digital cameras) which is an ISO standard so it's not completely custom neither.
Apple went with their custom iTunes-related protocol with the iPod, the iPhone and the iPad, because why not.
You can mount an iPhone as MTP. But only for pictures, not for music.
I kinda get why, but blah. It’s a bit of a weird distinction to me.
This is almost like saying that devices don't need to support dealing with USB sticks formatted with FAT32 because the file system originates with DOS.
MTP today is one of the more prevalent protocols that many devices (including most if not all Android phones made in past decade) use by default.
That said https://en.wikipedia.org/wiki/Media_Transfer_Protocol#macOS claims that this is supported natively…
[1] https://www.usb.org/document-library/media-transfer-protocol...
I wonder, can Windows natively work with APFS volumes..? I know with extra software it can, but then with extra software macOS can do all the things in the blog post too.
There is at least one thing I can do on macOS though that I can't on Ubuntu: run the latest version of Photoshop in a stable manner.