Back

Model Context Protocol (MCP) for experienced software engineers

Technology

May 12, 2025

(*) Note, this was published in medium previously. Reuploaded here.

It took me a while to fully understand what the Model Context Protocol is really about in the world of LLMs (or AI agents), due to the marketing jargon, the hype, and the overused “game-changer” buzzwords that I’m genuinely tired of.

For you experienced software engineers currently exploring the world of LLMs, I’ll strip away the marketing jargons and explain the first principle concepts behind the Model Context Protocol and I’ll explain what problem does MCP solve.

If you have experience in software engineering, chances are you’re familiar with REST APIs. MCP is like the REST API for LLMs and tools. Just as REST APIs provide a standardized layer on top of HTTP to simplify communication between software systems (and HTTP does the same over TCP, and so on), MCP establishes a standard for LLMs and tools to communicate with each other in a similar way.

In the example above, let’s say the user says, “Book me a room for tomorrow night.” The LLM can then communicate with the necessary tools using a uniform standard. The official term for these tools is MCP Server. Essentially, an MCP Server is simply a tool provider that can be interacted with in a standardized way. This tool capabilities could be anything such as exposing resources (e.g gathering information of available rooms) and giving command capabilities (e.g booking a room).

Why is this important? Before MCP, integrating these tools was cumbersome because they didn’t follow a standard communication protocol. We had to read each tool’s API schema, implement our own local function calls to interact with them, and handle many other inconsistencies. The same for building the tool, we had to use our own standard which makes it difficult for clients to integrate with us.

With MCP, creating and integrating tools becomes much easier, thanks to a standardized approach similar to how back-end servers follow REST API conventions. In a sense, the first-principle idea of MCP is to standardize how LLMs can interact with external tools.

Well, that’s it for the core concepts. I hope you now have a first-principles understanding of the Model Context Protocol (MCP). This is a very simplified article to help you get the idea of the first-principles as an experienced software engineer. For more details, please deep-dive into the details on other articles and sources.