> Why did these 2000s era interoperability protocols fail?

They didn't. SOAP is still widely used. COM and CORBA and similar IPC were mostly replaced by HTTP-based protocols (which would have seemed as a wasteful overkill for a few decades ago, now nobody bats an eye) like REST or GraphQL.

> what does MCP do different?

Nothing, it reinvents the wheel. To be charitable, let's call it starting from a clean slate :)

> Was it a matter of security issues in a newly networked world?

Lol, no. As we all know, "S" in "MCP" stands for "security". These older geezers like SOAP can be secure when properly implemented.

> A matter of bad design?

They are definitely much more complex then some of the newer stuff, mostly because they grew to support more complex use cases that newer protocols can avoid or simplify. And yeah as commented on other comments, heavy "oop" influence which new stuff has rolled back considerably.

> A matter of being too calcified

More a matter of not being in vogue and not supported out of the box in languages such as JS or Python.

> They didn't. SOAP is still widely used. COM and CORBA and similar IPC were mostly replaced by HTTP-based protocols (which would have seemed as a wasteful overkill for a few decades ago, now nobody bats an eye) like REST or GraphQL.

You have to consider how much REST gives you for "free": encryption, compression, authentication, partial content, retransmission, congestion control, etc.

Huh, I guess I take being on top of HTTP(s) for granted. Looks like DCOM was on top of TCP, but I'm guessing it had to implement everything else in its own bespoke format...

Yeah, REST, gives you none of that. Thats all done by HTTPS. Using that logic XML (ergo SOAP) has all that for free as well.

Of course HTTPS only applies to transport, not storage...