Applied LLM Systems: RAG, Agents & MCP / MCP and Workflows
One protocol for tools, data, and prompts.
Reviewed by Yuvaraj
Once tool use is common, a new problem appears. Every application that wants to connect a model to a data source or a tool has to write custom glue for each one, a different integration for your files, your database, your ticketing system. The Model Context Protocol (MCP) is an open standard that replaces that N-by-M tangle with one common interface.
Without a standard, connecting M applications to N tools means writing up to M × N bespoke integrations. MCP turns it into M + N: each application speaks MCP once, each tool exposes MCP once, and any client can talk to any server.
The numbers bite quickly. Four applications each needing five tools is 4 × 5 = 20 custom integrations to build and maintain. Standardize on MCP and it becomes 4 + 5 = 9, each side implemented once. Add a fifth app and the custom approach needs five more integrations; MCP needs one. It is often described as "a standard port" for connecting AI applications to context.
MCP defines a small vocabulary:
A client connects to one or more servers, discovers what each exposes, and uses those tools, resources, and prompts through the same interface, regardless of what the server wraps behind it.
Answer from memory before revealing, retrieval practice is what builds durable recall.
What is the Model Context Protocol (MCP)?
Ask about this lesson, or about anything in AI. Answers cite the lessons they draw on.
Finished this lesson?
Mark it complete to earn XP, keep your streak, and schedule a review.
One interface, many back-ends
The point is decoupling. A server might wrap a local filesystem, a SaaS API, or a database; the client does not care. Swap the back-end and the client code is unchanged, because both sides only ever speak MCP.
MCP does not replace the agent loop or function calling, it feeds them. The agent still plans, acts, observes, and reflects; MCP is how "act" reaches a standardized, discoverable set of tools and how "observe" reads standardized resources. It is plumbing, and good plumbing is invisible.
A versioned, fast-moving specification
MCP is young and evolving. The specification is published as dated revisions, and details, transports, authorization, capability negotiation, change between them. Treat this lesson as the stable shape (client ↔ server exposing tools, resources, prompts) and always confirm specifics against the current published spec. Nothing here should be taken as a fixed, timeless API.
Security is not automatic
A protocol that lets a model reach tools and data is also an attack surface: a malicious or compromised server can expose harmful tools or feed poisoned resources into context. Vet servers, scope their permissions, and treat their output as untrusted, the same discipline as any tool use.