Model Context Protocol Advanced Topics
a self-paced course

Model Context Protocol Advanced Topics

8 lessons, each a self-contained pack — study notes, flashcards, and a spoken recap. Open offline; learn at your own pace.

// lessons
8
// Flashcards
63
// audio
8 recaps
01lessons

The course, lesson by lesson.

Each card opens a full lesson: notes to read, cards to drill, and a recap to listen to. Start anywhere; they stand alone.

02 Lesson
Sampling

Sampling:** A technique that shifts the responsibility of calling a Language Model (LLM, e.g., Claude) from the server to the client.

8 cards audio notes
Open lesson →
03 Lesson
Log and progress notifications

Purpose:** To enhance User Experience (UX) by providing real-time feedback to the user while long-running tool calls (e.g., research functions) are executing on the MCP server.

10 cards audio notes
Open lesson →
04 Lesson
Roots

I. Definition and Purpose of Roots

7 cards audio notes
Open lesson →
05 Lesson
JSON message types

Format:** All communication between clients and servers uses **JSON** messages.

7 cards audio notes
Open lesson →
06 Lesson
The STDIO transport

Messages:** Client and server communicate by exchanging structured data objects called JSON messages.

8 cards audio notes
Open lesson →
07 Lesson
The StreamableHTTP transport

Definition:** Streamable HTTP transport allows message exchange between a client and a server over standard HTTP connections.

6 cards audio notes
Open lesson →
08 Lesson
StreamableHTTP in depth

Challenge:** MCP functionality (e.g., sampling, notifications, logging) requires the server to initiate requests to the client. Standard HTTP protocols make this server-to-client communication difficult.

10 cards audio notes
Open lesson →
09 Lesson
State and the StreamableHTTP transport

These flags control how your server handles client connections and data transmission, particularly when scaling.

7 cards audio notes
Open lesson →