Comment by losvedir

8 days ago

No, that's not MCP. That's a pleasant idea that MCP has been shoehorned into trying to solve. But MCP the spec is far more complicated than it needs to be to support that story. Streamable HTTP transport makes it much more workable, and I imagine was designed by real people rather than the version prior to that, but it's still much more than it needs.

Ultimately, 90% of use cases would be solved by a dramatically simpler spec which was simply an API discovery mechanism, maybe an OpenAPI spec at a .well-known location, and a simple public-client based OAuth approach for authentication and authorization. The full-on DCR approach and stateful connections specified in the spec is dramatically harder to implement.

More than it needs? Buddy, HTTP is more than any web app needs. It has a lot of stuff in it because it's intended to solve a lot of problems. The fact that there is a bidirectional stateful mode for HTTP is horrifying, but it's there now, and it solves problems. MCP is here, it solves problems we have now, it's supported by industry. If there are pain points, we can fix them in the standard without throwing the baby out with the bathwater.

  • > The fact that there is a bidirectional stateful mode for HTTP is horrifying,

    Oh no, really? So why didn't the new vibe-coded hotness use WebSockets for bidirectional communication?

    > MCP is here, it solves problems we have now,

    Many other protocols save the exact same problem of client-server communication with well-defined ways of discovering available API calls.

    > it's supported by industry.

    It's supported by hype and people who have very little knowledge of what existis in the world.

    Also, industry is notorious for supporting a lot of crazy and bad shit. Doesn't make it good.

    > If there are pain points, we can fix them in the standard without throwing the baby out with the bathwater.

    You have already thrown out a lot of babies by deciding that the vibe-coded MCP protocol is the only true way to set up two-way communication between a server and a client, and refuse to even entertain the thought that it might not be a good protocol to begin with.