Chapter C60 · Interactive Course
Advanced MCP features and version changes
Progress, cancellation, input requests, interfaces, long tasks, eras.
Core Learning Concept
Read compatibility declarations for exact protocol versions and extensions carefully. Check support for progress reports, cancellation, and durable tasks, thoroughly verifying failure behaviors rather than assuming optional features always exist reliably.
What You’ll Learn in This Chapter
-
Progress is not completion
Distinguish progress messages from a final successful result.
A progress message reports an intermediate state, such as processing a portion of a document. It is not the final result. For a side-effecting operation, completion may also need confirmation in the destination system. Keep the progress indicator separate from the evidence used to mark the task finished.
-
Cancellation may leave partial work
Recognize that stopping delivery need not undo external effects.
Cancellation requests that work stop according to the protocol and implementation. It may arrive after some effects occurred or after completion. It does not automatically roll back earlier writes. Inspect the resulting state and use the operation’s recovery rules before restarting or assuming nothing happened.
-
Elicitation requests missing input
Identify a request for user information inside an integration flow.
Elicitation allows servers to request clarification or user inputs through host forms or secure authorization URLs. Forms must never collect confidential credentials, and hosts should let users inspect or decline requests.
-
MCP Apps can add an interface
Recognize an optional interactive UI extension.
MCP Apps is an extension for interactive interfaces associated with server capabilities. It requires compatible support and a defined security model in the host. A tool can still provide non-interactive content where designed to do so. Check the particular interface and fallback instead of assuming every host can display it.
-
Long-running tasks need lifecycle support
Distinguish an immediate result from an optional task handle.
Durable task extensions provide asynchronous handles for long-running jobs. Hosts use that handle to poll progress, cancel execution, and fetch completed outputs. Transient progress notifications alone do not constitute durable task persistence.
-
Skills over MCP is an evolving overlap
Explain that workflow instructions can be distributed through protocol extensions.
Guidance packages and MCP-delivered content can overlap, but transport and purpose remain separate questions. A server may deliver instructions or resources without every host treating them as an installed skill. Inspect the current extension or host convention, its version, and how the procedure is selected and executed.
-
Older tutorials can teach deprecated features
Recognize dated roots, sampling and logging examples.
A tutorial describes a particular version and setup, even when it omits the date. Compare its lifecycle, methods, and optional features with the versioned specification and implementation. Deprecation does not make every historical example meaningless; it means you must understand which rules apply before following it now.
-
Read a compatibility sheet
For a mock host and server, mark supported core features, optional extensions and older-version behavior, and explain one feature the setup cannot promise.
-
Inspect a complete integration
Review a supplied integration proposal, diagnose its failed test and decide which extensions it actually needs.