#1 What is MCP?

Model Context Protocol is a new protocol from Anthropic. It was released late last year, and it’s rapidly gaining widespread adoption. 

I think it should be on everyone's radar, because it has the potential to replace APIs as we currently know them. 

Ok, but what actually is it?

“MCP makes agentic tools composable and reusable by any agent.”

This is how I explain it to other devs, and while that might sound like hype, believe me when I say it blew my mind in a good way. 

If you’ve already had the pleasure of trying to develop “agentic tools” you probably already understand why this would be a big deal. If not, I’ll explain… 

The before times, all of 9 months ago

Before MCP, if I wanted an LLM to use structured data or interact with an API like say query Amazon’s Product API and lookup product details & images, I would need to write my own very specific tool for that.

Each tool would have to specify what API calls it can make and tell the LLM how to structure the expected responses. My tool would only work for my specific use case, and so would everyone else's. 

MCP solves this problem by turning tools, resources, and prompts into something modular and composable; thus making them portable and reusable. Think like npm packages or docker containers. 

The new future

With MCP instead of APIs, every agent that wants to take actions or retrieve structured data doesn't have to know about or worry about the API’s spec or response format. MCP can sit between the agents and the APIs.

MCP is how the LLM chat agents are going to “talk to our APIs”. 

Servers are going viral, but there’s more to MCP

The dev’s on discord talking about MCP are likely talking about “MCP Servers” because that’s what everyone is rushing to build, but it’s important to understand the full MCP ecosystem.

MCP Hosts are the LLM front ends like Claude Desktop, IDEs, or AI tools that want to access data through MCP

MCP Clients are how MCP Hosts connect 1:1 to MCP Servers

MCP Servers expose specific capabilities through the standardized Model Context Protocol, servers can be run locally or remotely hosted and may access local data sources or external APIs

To use MCP server tools, you will need a client. If your MCP client has first class support for remote MCP servers, the client will provide a way to accept the server URL directly within its interface. If not, you can use a remote client like: mcp-remote - npm

Remote vs Local vs Official MCP Servers

MCP servers come in a few different flavors, and like packages should be installed and used at your own risk. (MCP security vulnerabilities devs should know, is planned for later in this series)

Official MCP Servers

Big companies are already investing in MCP. Including GitHub who is one of several that have released “Official MCP Servers”.

GitHub's official MCP Server promises “seamless integration with GitHub APIs, enabling advanced automation and interaction capabilities for developers and tools”. 

Served Locally

Many of the “official” servers are designed to be installed and run locally, since they will require authentication or keys to access sensitive data. You launch local servers on localhost and there is a MCP Registry for finding and publishing servers at registry.modelcontextprotocol.io

Remote servers are communal

In addition to running servers locally, you can also host them remotely, making them publicly available or requiring authentication to access. Remote servers are not necessarily “official” depending on who is hosting and providing them. 

Developers can use a tool called modelcontextprotocol/inspector for testing and debugging MCP servers, which allows you to visually inspect an MCP server to see its tools, resources, and prompts. You can inspect a server before using it or connecting to your sensitive data.

Use Cases for MCP

My first introduction to what MCP can do came in the form of Cloudflare’s blog post: Thirteen new MCP servers from Cloudflare you can use today. These servers allow you to orchestrate Cloudflare products directly from your chat agent.

One of those examples is a remote documentation mcp server that publishes a `search_cloudflare_docs` tool. You might be wondering, why would I need a specific tool to query documentation when I can ask ChatGPT to perform web search? 

That’s the question that will be addressed in the next installment… 

#2 Remote MCP for Docs vs URL Search in prompt