What Is MCP (Model Context Protocol)?

Short answer: MCP, the Model Context Protocol, is an open standard for connecting an AI application to outside systems. Through one JSON-RPC message format, the application can discover and call external tools, read external data, and load reusable prompts from independent servers. It replaces a separate custom integration per tool with one protocol any compliant application can speak.

The problem it solves is combinatorial. Without a standard, connecting five AI applications to twenty tools means a hundred integrations. With one, it means twenty servers that every application can use.

Quick Overview

PartWhat it is
HostThe user-facing AI application, such as a desktop assistant, an editor, or an agent
ClientThe connector inside the host that talks to one server and handles discovery and calls
ServerAn independent process that exposes capabilities to any client
ToolsActions the model can invoke, such as running a query or filing a ticket
ResourcesData the application can read, such as files or records
PromptsReusable prompt templates the server offers
Message formatJSON-RPC 2.0

The split matters. A server is written once by whoever owns the system being exposed, and it does not need to know which application will call it.

How a call actually flows

The host starts a client for each server it wants to use. The client asks the server what it offers, and the server returns its list of tools with names, descriptions, and parameter schemas.

Those descriptions are then given to the model. When the model decides to act, it names a tool and supplies arguments. The client sends that as a JSON-RPC request, the server runs it, and the result comes back into the model's context for the next step.

This is the same loop described in what is agentic system design. MCP standardizes the tool half of it.

Transports, and where each one fits

Local servers run over standard input and output, as a child process on the same machine. That suits developer tools and anything touching local files.

Remote servers run over streamable HTTP, with OAuth as the recommended way to obtain tokens. An older HTTP transport built on server-sent events has been deprecated.

The design decision worth knowing

The protocol is stateless at its core. There is no session handshake and no session identifier to track. Any request can be served by any server instance behind a plain round-robin load balancer.

That is a genuine system design consequence, and it is why this is worth discussing in an interview. A stateful protocol would force sticky sessions, a shared session store, and a gateway that inspects traffic to route it. A stateless one turns an MCP server into an ordinary horizontally scaled HTTP service. Clients can also cache the tool list for a period the server specifies, which removes a round trip from every conversation.

This is the familiar stateful versus stateless architecture trade-off applied to a new protocol, not a new idea.

What to be careful about

Tool descriptions are an attack surface. The model reads them and acts on them, so text that arrives from a server can influence behavior. Treat a third-party server with the caution you would apply to any untrusted input.

Permissions need a real boundary. A server that exposes a database and a server that exposes a calendar should not carry the same authority. Scope each connection, and require approval for actions that move money or delete data.

A protocol does not fix tool design. Badly named tools with vague descriptions make the model guess, whether or not they are served over MCP. The naming and granularity work still belongs to you.

How to Prepare

TAGS
AI
System Design Interview
CONTRIBUTOR
Arslan Ahmad
Arslan Ahmad
ex-FAANG engineering manager and author or Grokking series.

GET YOUR FREE

Coding Questions Catalog

Design Gurus Newsletter - Latest from our Blog
Boost your coding skills with our essential coding questions catalog.
Take a step towards a better tech career now!
Explore Answers
What is the best qualification for a software engineer?
Why should I join Apple?
What is multithreading in Java with example interview questions?
Which language is good for networking?
Which job best for future in 2026?
What is the system design interview for engineering managers?
The same design question as an IC round, scored differently: less depth in one component, more scope control, cost, team structure, and delivery planning.
Related Courses
New
Grokking the AI System Design Interview course cover
Grokking the AI System Design Interview
Learn to design AI systems the way interviewers expect: classic ML products, LLM and RAG architectures, and agentic systems, all through the lens of the system design interview.
4.6
(3,192 learners)
Discounted price for Your Region

$123

Grokking the Coding Interview: Patterns for Coding Questions course cover
Grokking the Coding Interview: Patterns for Coding Questions
The 24 essential patterns behind every coding interview question. Available in Java, Python, JavaScript, C++, C#, and Go. The most comprehensive coding interview course with 543 lessons. A smarter alternative to grinding LeetCode.
4.6
Discounted price for Your Region

$197

Grokking Modern AI Fundamentals course cover
Grokking Modern AI Fundamentals
Master the fundamentals of AI today to lead the tech revolution of tomorrow.
4.1
Discounted price for Your Region

$72

Design Gurus logo
One-Stop Portal For Tech Interviews.
Copyright © 2026 Design Gurus, LLC. All rights reserved.