Now there are CLI tools which can invoke MCP endpoints, since agents in general fare better with CLI tools.
Now there are CLI tools which can invoke MCP endpoints, since agents in general fare better with CLI tools.
By providing an MCP endpoint you signify "we made the API self-describing enough to be usable by AI agents". Most existing OpenAPI specs out there don't clear that bar, as endpoint/parameter descriptions are underdocumented and are unusable without supplementary documentation that is external to the OpenAPI spec.
MCP is a lot of duplicate engineering effort for seemingly no gain.
The apples to apples comparison would be this:
A:
- Assume that AWS exposes an LLM-oriented OpenAPI spec.
- Take a preexisting OpenAPI client with support for reflection.
- Write the plumbing to go between agent tool calls and OpenAPI calls. Schema from OpenAPI becomes schema for tool calls.
- You use a preexisting OpenAPI client library, AWS can use a preexisting OpenAPI server library.
B:
- Assume that AWS exposes an MCP server.
- Program an MCP client.
- Write the plumbing to go between agent tool calls and MCP calls. Schema from MCP becomes schema for tool calls.
- You had to program an MCP client, AWS had to program an MCP server. Where as OpenAPI existed before the concept of agent tool calls, MCP did not.
That's why I said MCP is a lot of duplicate engineering effort for seemingly no gain. Preexisting API mechanisms can be used to provide LLM-oriented APIs, that's orthogonal to MCP-as-a-protocol. MCP is quite ugly as a protocol, and has very little reason to exist.
All of this is http based and could be implemented on a bespoke API but the challenge is cross-API standardization so that agents can be trained on representative data. The value of MCP is that it creates a common behavioral contract, not just a transport or schema.