Skip to main content
HomeAI

Free Course

Model Context Protocol: Advanced Topics

IntermediateSkill Level
Updated 06/2026
Go beyond MCP basics with sampling, notifications, roots, and the STDIO and StreamableHTTP transports in Python.
Start Free Course

Included for Free

ClaudeArtificial Intelligence
3 hr
10 videos
32 Exercises
2,000 XP
Statement of Accomplishment

Create Your Free Account

Continue with GoogleShow more options

or


By continuing, you accept our Terms of Use, our Privacy Policy and that your data is stored in the USA.

Loved by learners at thousands of companies

Group

Training a Team?

Try for Business

Course Description

You've built an MCP server that exposes a few tools - now it's time to make it behave like the ones running in production. Advanced MCP is where servers delegate work to clients, report on what they're doing, respect filesystem boundaries, and talk to clients across very different transports.

Master Core MCP Features

Start with sampling, which lets a server hand a prompt back to the client's language model instead of holding its own API key. Then stream log and progress notifications so learners watching a 30-second tool call can see it working, and use roots to define exactly which files and folders a server is allowed to touch - a boundary the SDK leaves you to enforce yourself.

Understand How Clients and Servers Talk

Go to the wire level and see what actually crosses the connection. You'll hand-write JSON-RPC requests and notifications, tell the two apart by their id field, and follow the initialization handshake message by message.

Compare the STDIO and StreamableHTTP Transports

Learn why a STDIO server only works on one machine, how the StreamableHTTP transport uses a long-lived Server-Sent Events stream to push messages back to the client, and what the stateless_http and json_response flags trade away. By the end, you'll know which transport fits a local tool versus a remote, load-balanced deployment - and why.

What you'll learn

  • Determine how to use sampling so an MCP server can delegate language-model calls to the connected client instead of holding its own API key.
  • Differentiate log notifications from progress notifications, and recognize when a long-running tool should send each.
  • Identify how roots define the filesystem boundaries a server may access, and why the server must enforce them itself.
  • Differentiate MCP requests from one-way notifications by their JSON-RPC structure, and order the messages of the initialization handshake.
  • Assess when to use the STDIO versus the StreamableHTTP transport, and evaluate how the stateless_http and json_response flags affect server-to-client features.

Feels like what you want to learn?

Start Course for Free

Prerequisites

Introduction to Model Context Protocol (MCP)
1

Core MCP features

Discover the advanced features that separate a toy MCP server from a production one. You'll use sampling to borrow the client's language model, stream log and progress notifications from a slow tool so users see it working, and enforce roots so a server only ever touches the files it was granted.
Start Chapter
2

Transports and communication

Go to the wire level and see how MCP clients and servers actually talk. You'll hand-write JSON-RPC requests and notifications, trace the initialization handshake, and compare the STDIO transport for local servers with the StreamableHTTP transport for remote ones, including how Server-Sent Events and statelessness shape what each can do.
Start Chapter
Model Context Protocol: Advanced Topics
Course
Complete

Earn Statement of Accomplishment

Add this credential to your LinkedIn profile, resume, or CV
Share it on social media and in your performance review
Enroll Now

FAQs

Is this course suitable for beginners?

No, this is an advanced course. You should first be comfortable building a basic MCP server with tools and resources, which the Introduction to Model Context Protocol (MCP) course covers.

What will I be able to do after this course?

You will be able to add sampling, progress and log notifications, and roots to an MCP server, and choose between the STDIO and StreamableHTTP transports for local or remote deployments.

Which tools and technologies does this course use?

You will work in Python with the FastMCP framework and the MCP SDK, writing real client-server sessions, JSON-RPC messages, and Server-Sent Events streams.

Where would I use these advanced MCP features?

Production MCP servers rely on them: sampling reuses the client's model without a server-side API key, notifications keep long-running tools transparent, and the right transport lets you deploy remotely behind a load balancer.

Will I receive a certificate at the end of the course?

Yes, you will receive a certificate of completion once you finish all the chapters and exercises.

Join over 19 million learners and start Model Context Protocol: Advanced Topics today!

Create Your Free Account

Continue with GoogleShow more options

or


By continuing, you accept our Terms of Use, our Privacy Policy and that your data is stored in the USA.

Grow your data skills with DataCamp for Mobile

Make progress on the go with our mobile courses and daily 5-minute coding challenges.