2025-12-22

Understanding MCP: Servers, Tools, and Why They Matter

Breaking down MCP (Model Context Protocol) through a simple analogy: tools are functions, MCP servers are toolboxes, and LLMs can invoke them through natural language without any UI interaction.

MCPLLMAI ToolsAPIsLearning In PublicSystem Design

Today I want to break down MCP (Model Context Protocol) in the simplest way possible, because once I understood the core analogy, everything clicked.

Think of it like this:

  • A tool = a function. It could be simple, complex, nested—doesn't matter. In the AI world, we call these functions "tools." Examples: get_current_weather(), search_web(), register_user().
  • An MCP server = a toolbox. It's a container that holds multiple tools. When you configure an MCP server, you're essentially giving an LLM access to that entire toolbox.

The magic happens when you connect your MCP server to an LLM. The LLM can see what tools are available and intelligently invoke them when needed—not always, just when it makes sense based on your natural language request.

Real Example: Building an MCP Server for My Web App

I started thinking about this in the context of my own web application. Instead of building a traditional REST API that users interact with through a UI, I could create an MCP server with tools like:

  • register_user
  • login_user
  • add_product
  • update_product
  • list_products

These tool names look similar to API routes, but the difference is huge: the LLM can call them directly through natural language.

Why This Changes Everything

Here's what hit me: users don't need to open my web app anymore.

Instead of:

  1. Opening the app
  2. Navigating to registration
  3. Filling out forms
  4. Adding products manually

They can just say:

"Hey LLM, I've connected my MCP server. Create a user with email X and password Y. Then add a product named ABC with this description, keywords, price, and image."

And it happens. No tab switching. No clicking through UI. If you're using voice mode, you don't even touch your phone. The LLM handles everything on your behalf.

Flexibility and Portability

The other thing I realized: MCP servers are LLM-agnostic.

If you don't like the LLM you're using, just disconnect your MCP server and connect it to a different one. You don't change anything on the MCP server itself—you just point a new LLM to it. The quality of the experience depends on how well that LLM can invoke tools, but the server stays the same.

There are already pre-built MCP servers from various providers—GitHub MCP server, local file system server, and more. But you can also build your own custom server for your specific product or workflow.

What I Learned

MCP isn't some revolutionary new concept—it's a straightforward convention with a clear configuration style. The breakthrough is in the standardization: once you build an MCP server, any capable LLM can work with it through natural language.

It's about aligning your custom functions with LLM capabilities in a way that feels natural. And honestly? It's pretty fantastic once you see it working.

Related Reading

Subscribe to my newsletter

No spam, promise. I only send curated blogs that match your interests — the stuff you'd actually want to read.

Interests (optional)

Unsubscribe anytime. Your email is safe with me.