Model Context Protocol & MCP Servers Flashcards

(91 cards)

1
Q
A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What is the Model Context Protocol (MCP)?

A

An open standard for LLM apps to connect to external tools, data sources, and workflows

Originally open-sourced by Anthropic, it allows for consistent communication between clients and servers.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What does MCP function like in the context of AI apps?

A

USB-C for AI apps

It enables multiple integrations without the need for custom solutions each time.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What are the three core surfaces of MCP?

A
  • Tools
  • Resources
  • Prompts

These surfaces define the types of interactions and data exchanges possible within the protocol.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What type of messages does MCP use for communication?

A

JSON-RPC 2.0

Common transports include stdio for local tools and streamable HTTP for remote ones.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What is one of the key benefits of MCP?

A

Solves the N×M integration problem

It allows many models to communicate with many tools without needing custom integrations.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What does MCP enable in terms of data fetching?

A

Richer, cheaper context

Clients can fetch exactly what’s needed from MCP servers, reducing token load.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Name a few real use cases for MCP.

A
  • IDE assistants
  • Chat UIs with file systems/DBs
  • Design tools (e.g., Canva via MCP)
  • Multi-agent orchestration

These applications demonstrate the versatility of the protocol in various environments.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

True or false: MCP includes built-in security features for authentication and hardening.

A

FALSE

Authentication and hardening are the responsibility of the user; teams should implement security measures like least-privilege credentials.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Where can you find the spec & reference for MCP?

A

modelcontextprotocol.io + GitHub

This includes schemas and examples for implementation.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

What should you use to expose your own tools/resources/prompts in MCP?

A

stdio for local, streamable HTTP/SSE for remote

It’s important to secure these with API keys or OAuth.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What is an MCP server?

A

A program that implements the Model Context Protocol and exposes tools, resources, and prompts over a standard JSON-RPC interface

It allows MCP-capable clients to discover and call these surfaces.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

What does an MCP server do?

A
  • Advertises capabilities and schemas
  • Handles calls and streams results back to the client

It focuses on the protocol, not identity.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

What are the common transport methods for an MCP server?

A
  • stdio
  • HTTP/SSE
  • streamable HTTP

These methods are used for local or remote access.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

What is the role of auth/permissions in an MCP server?

A

Left to your deployment, focusing on least privilege and approvals

MCP does not handle identity.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

How do clients interact with an MCP server?

A

They connect to one or more servers and route model requests to them

This solves the N×M ‘every model to every tool’ problem.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

Name some examples of official/community servers for MCP.

A
  • Google Drive
  • Slack
  • GitHub
  • Git
  • Postgres
  • Puppeteer

These servers demonstrate safe brokering of systems to an AI app.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

What are the first two steps in building an MCP server?

A
  • Pick an SDK (Python or Node)
  • Define tools/resources/prompts with JSON schemas

These steps are crucial for setting up the server.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

Fill in the blank: An MCP server handles calls and streams results back to the _______.

A

client

This is a key function of the MCP server.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

What is the primary purpose of an MCP server?

A

Let AI clients call tools, read resources, and use prompts in a standardized way

MCP servers facilitate interaction between AI applications and various tools/resources.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

What are the three distinct branches of the United States government?

A
  • Legislative Branch
  • Executive Branch
  • Judicial Branch

Each branch has specific powers and responsibilities to check the powers of the others, ensuring a balance of power.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

What is the interface specification used by MCP servers?

A

Model Context Protocol (JSON-RPC 2.0 messages + MCP semantics for tools/resources/prompts)

This specification defines how AI clients communicate with MCP servers.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
23
Q

What type of operation model does an MCP server use?

A

Procedure calls (“run this tool with these params”) + streaming results/tokens

This model allows for dynamic interaction with tools and resources.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
24
Q

What are the transports used by MCP servers?

A
  • stdio (local)
  • HTTP/SSE
  • streamable HTTP

These transports enable various methods of communication with the MCP server.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
True or false: An MCP server is primarily designed for **general-purpose services** used by browsers and mobile apps.
FALSE ## Footnote MCP servers are tailored for AI clients and provide structured calling and discoverability.
26
What is a key feature of the **schema & typing** in MCP servers?
Tool/resource params/results described with JSON Schema; discovery is **built-in** ## Footnote This allows clients to easily find and use available tools and resources.
27
What is the **auth model** typically used by MCP servers?
Not prescribed; tends to be **per-server** (API keys/OAuth inside the server) ## Footnote This model emphasizes least-privilege access to backing systems.
28
What is the **best use case** for an MCP server?
Connecting models to tools/data **without bespoke glue**; consistent UX for many tools across many LLMs ## Footnote This highlights the MCP server's efficiency in integrating various systems.
29
What is a **built-in feature** of MCP servers?
* Tool registry * Resource listing/reads * Prompt templates * Progress & partial outputs ## Footnote These features enhance the usability and functionality of MCP servers.
30
What is the **error semantics** used by MCP servers?
JSON-RPC error objects + MCP-specific error shapes ## Footnote This allows for structured error handling in communications.
31
What does **observability** in MCP servers rely on?
App-level logs/metrics you add; protocol supports progress/events ## Footnote This enables monitoring and debugging of interactions with the MCP server.
32
What is the **versioning** approach typically used in MCP servers?
Usually at the **tool/resource** level (schemas) and server capabilities ## Footnote This allows for flexibility and adaptability in tool usage.
33
What is a common **integration pattern** for agents using MCP servers?
Wrap your existing REST/GraphQL services behind an MCP server ## Footnote This allows models to access services with discovery and typed calls.
34
What is the **typical client** for an MCP server?
LLM chat UIs, IDE assistants, agent runtimes that “speak MCP” ## Footnote These clients benefit from the structured interaction provided by MCP servers.
35
What is the **best use case** for a standard HTTP server/API?
Building **general-purpose** services used by browsers, mobile apps, or third-party developers ## Footnote This highlights the versatility of HTTP servers in various applications.
36
What does **MCP** stand for?
Model Context Protocol ## Footnote MCP is an application protocol that standardizes AI-app capabilities over JSON-RPC 2.0.
37
What are the two layers of **MCP**?
* Data layer (messages & primitives) * Transport layer (stdio, streamable HTTP, SSE) ## Footnote These layers separate the message structure from the transport mechanism.
38
What type of protocol is **HTTP**?
General transfer protocol ## Footnote HTTP is stateless and application-level, defining requests/responses, methods, headers, URIs, and content negotiation.
39
What is the structure of an **MCP (JSON-RPC)** message?
* jsonrpc version * id * method * params ## Footnote Responses carry result or error and support batch arrays and notifications.
40
What does a **Green flag** indicate in beach safety?
Safe, open conditions for swimming ## Footnote Beach flags are a universal system to communicate water safety conditions.
41
What is the **start-line** in an **HTTP** message?
Method, target, version ## Footnote The start-line is followed by headers, an empty line, and an optional body.
42
How does **MCP** address procedures?
Clients call method with typed params ## Footnote Servers expose resource listings and prompt templates via standard methods.
43
What is the main purpose of **MCP**?
To give AI clients a uniform, discoverable way to invoke tools, read resources, and use prompts ## Footnote MCP often wraps existing HTTP/REST services.
44
What is the **error semantics** in **MCP/JSON-RPC**?
Structured error objects with code/message/data ## Footnote Batch semantics are also defined.
45
What is the transport mechanism for **HTTP**?
The transport itself ## Footnote Streaming or push is commonly via SSE over HTTP or other extensions.
46
What is the **session** handling in **MCP**?
Handled within the protocol/transport ## Footnote Examples include stateful streams on streamable HTTP and local state over stdio.
47
What is the **error handling** in **HTTP**?
Standardized status codes plus optional error bodies ## Footnote Status codes include 2xx, 4xx, and 5xx.
48
What does **MCP** support for discovery?
Clients can enumerate tools/resources/prompts from the server ## Footnote Capability advertisement is part of the protocol.
49
What is the **main difference** between **MCP** and **HTTP** regarding typing?
MCP uses JSON Schema for parameters/results; HTTP has no built-in typing ## Footnote Typing in HTTP is added by conventions and documentation.
50
What does a **Red flag** indicate in beach safety?
Unsafe conditions, closed for swimming ## Footnote Beach flags communicate water safety conditions.
51
What is the **addressing** method in **HTTP**?
Addresses resources via URIs ## Footnote Uses generic verbs like GET, POST, PUT, DELETE.
52
What layer of the **OSI model** does **HTTP** operate at?
Application-layer (L7) ## Footnote HTTP typically rides over **TLS** (L6), then **TCP** (L4), **IP** (L3), etc.
53
What does **MCP** stand for?
Model Context Protocol ## Footnote MCP defines AI-centric semantics and message shapes (JSON-RPC).
54
True or false: **MCP** can bypass networking entirely via **stdio**.
TRUE ## Footnote This means it doesn't map cleanly to OSI layers because it’s not on a network stack.
55
What are the components of the **MCP over HTTPS** stack?
* MCP (tools/resources/prompts) + JSON-RPC + JSON * TLS encryption (X.509 certs) * HTTP/1.1 or HTTP/2 * TCP * IP * Ethernet / Wi-Fi * Copper / Fiber / RF ## Footnote This stack is common when servers are remote.
56
What are the components of the **Plain HTTP API** stack?
* Application logic (REST/GraphQL) + JSON/Proto/etc. * TLS (optional) * HTTP/1.1 or HTTP/2 * TCP * IP * Ethernet / Wi-Fi * Physical medium ## Footnote This stack is used for standard web APIs.
57
What is the **MCP over stdio** stack?
* MCP (JSON-RPC, JSON) * Local process I/O (stdio/pipe) ## Footnote This setup skips L1–L4 because nothing is traversing a network.
58
What does **L7** define for **MCP**?
* Capabilities and semantics for AI apps * List tools * Run tool with typed params * Read resources * Use prompts * Stream progress/results ## Footnote MCP focuses on AI-specific functionalities.
59
What does **L7** define for **HTTP**?
* Transfer semantics * Methods (GET/POST) * URIs * Headers * Status codes ## Footnote Your app decides the resource model (REST) or query language (GraphQL).
60
What is the role of **L6** in both **MCP** and **HTTP**?
Both often use **TLS** for confidentiality/integrity ## Footnote Payloads are usually **JSON**.
61
What session management features does **HTTP** provide?
* HTTP/1.1 keep-alive * HTTP/2 multiplexing ## Footnote These maintain sessions/streams.
62
What is a key difference between **MCP** and **HTTP** regarding local access?
MCP can use **stdio** for local tool access ## Footnote This avoids network layers entirely.
63
What is the implication of **MCP** for security (L6)?
Use **TLS** either way ## Footnote MCP still needs authZ at L7 (scoped API keys/OAuth).
64
What is a key characteristic of **MCP payloads**?
Procedural and generally not cache-friendly ## Footnote This contrasts with HTTP APIs that support caching/CDNs.
65
What does **MCP** provide for discovery and typing?
Bakes in discovery (list tools/resources with JSON Schema) ## Footnote HTTP APIs rely on out-of-band specs (OpenAPI/GraphQL SDL).
66
How does **MCP** define streaming?
Defines *what* is streamed (tool progress, partial results) ## Footnote HTTP provides SSE/chunked transfer.
67
What is a one-liner to remember about **HTTP** and **MCP**?
**HTTP is L7 transport semantics; MCP is L7 application semantics for AI tools.** ## Footnote MCP can run *on* HTTP—or skip the network via stdio.
68
What connects to the **Agent runtime(s) / Orchestrator**?
* MCP clients * MCP servers * Back-end systems * Observability + policy ## Footnote These components work together to facilitate communication and functionality within the tech stack.
69
Name the **first wave** of servers in a minimal starter stack.
* Filesystem / Git / HTTP fetch * DB server (Postgres/SQLite) * Browser/automation server ## Footnote These servers are essential for basic operations and interactions within the MCP framework.
70
What is the purpose of **observability + policy** in the MCP architecture?
* Logging * Audit * Rate limits * Approvals ## Footnote These elements ensure that the system operates securely and efficiently.
71
Fill in the blank: **MCP** standardizes capability discovery and typed calls across many tools to avoid ______.
N×M custom integrations ## Footnote This standardization allows for scalability and cleaner integration of multiple servers and tools.
72
What are the **security & governance** must-haves in MCP?
* Least-privilege secrets * Allow-lists of tool names * Human-in-the-loop for state-changing tools * Data boundaries ## Footnote These practices are crucial for maintaining security and proper governance in the system.
73
What are the **deployment topologies** mentioned for MCP?
* Workstation cell (local stdio) * Team hub (remote HTTP/SSE) * Hybrid with gateways ## Footnote These topologies define how clients and servers interact in different environments.
74
What are some **tech choices** that fit well with MCP?
* SDKs & examples * Clients (Claude Desktop) * Hosting options (local stdio, serverless/containers) ## Footnote These choices help in the effective implementation and usage of the MCP framework.
75
What is the role of **MCP servers**?
* Expose tools (actions) * Expose resources (read-only data) * Expose prompts (templates) ## Footnote MCP servers facilitate interaction between clients and back-end systems by providing necessary functionalities.
76
True or false: The **MCP** allows for executing code and fetching just-in-time context across many servers.
TRUE ## Footnote This capability helps in reducing token bloat and enhances the efficiency of agent operations.
77
What is the **role** of a *host* in MCP?
* Runs a client connector * Opens a session to an MCP server ## Footnote The MCP server is the adapter exposing capabilities.
78
What protocol does MCP use for **session initiation**?
JSON-RPC 2.0 ## Footnote Sessions begin with JSON-RPC requests like `initialize`.
79
Name the **three JSON-RPC shapes** used in MCP.
* Request * Response * Notification ## Footnote MCP also allows batch arrays.
80
What is the purpose of the **tools/list** method in MCP?
Enumerate tools (name, description, JSON Schemas) ## Footnote Tools are uniquely named and carry metadata + schemas.
81
What does the **resources/get** method do in MCP?
Fetch content/slices/headers depending on server design ## Footnote It is part of the capability surface for readable data.
82
What is the typical **boot sequence** in MCP?
* `initialize` * `tools/list`, `resources/list`, `prompts/list` * `tools/call` (and resource reads) ## Footnote This sequence is planned by the host.
83
What does **built-in discovery** in MCP allow clients to do?
Dynamically enumerate capabilities at runtime ## Footnote No out-of-band OpenAPI needed.
84
What are the two types of **transport** in MCP?
* STDIO (local IPC) * Streamable HTTP (modern remote default) ## Footnote STDIO is great for local tools needing file/OS access.
85
True or false: **SSE** is the current standard for server-to-client streaming in MCP.
FALSE ## Footnote SSE is deprecated in favor of Streamable HTTP.
86
What is the purpose of **server-initiated messages** in Streamable HTTP?
Send JSON-RPC notifications or requests before the terminal response ## Footnote This enables rich, incremental tool execution.
87
Fill in the blank: The **MCP** separates **protocol** from **transport**.
protocol ## Footnote Protocol refers to JSON-RPC messages, while transport refers to how they are carried.
88
What is the **method shape** for listing tools in MCP?
{ "jsonrpc":"2.0", "id": 1, "method":"tools/list", "params":{} } ## Footnote This is an example of a JSON-RPC request.
89
What does the **tools/call** method do in MCP?
Invoke a tool with typed arguments ## Footnote Example: `tools/call` with parameters like `name` and `arguments`.
90
What is the **JSON Schema** used for in MCP?
Describe tool parameters/results for client-side validation ## Footnote This improves UI/planning.
91
What is the **final step** in the minimal flow of MCP?
Handle errors/batches via JSON-RPC semantics ## Footnote This ensures proper error management in communication.