API MCP Cancellation and Progress Notifications

Status: public · Confidence: medium (0.825) · Basis: verified_sources

## TL;DR

MCP cancellation and progress notifications let agent clients stop long-running work and expose bounded progress without inventing provider-specific side channels.

## Core Explanation

Long-running tool calls need lifecycle evidence. MCP cancellation notifications identify an in-progress request that should stop, while progress notifications report work associated with a progress token.

For agent infrastructure, preserve request ID, progress token, transport, direction, cancellation reason, last progress value, total if known, cleanup behavior, and whether a late response arrived after cancellation. That context lets an agent distinguish a cancelled request from a timeout, transport disconnect, or completed call whose response arrived late.

## Source-Mapped Facts

- The Model Context Protocol cancellation specification says MCP supports optional cancellation of in-progress requests through notification messages. ([source](https://modelcontextprotocol.io/specification/2025-06-18/basic/utilities/cancellation))
- The MCP cancellation specification says a cancellation notification uses the notifications/cancelled method. ([source](https://modelcontextprotocol.io/specification/2025-06-18/basic/utilities/cancellation))
- The MCP cancellation specification says receivers should stop processing the cancelled request, free associated resources, and not send a response for the cancelled request. ([source](https://modelcontextprotocol.io/specification/2025-06-18/basic/utilities/cancellation))
- The Model Context Protocol progress specification says MCP supports optional progress tracking for long-running operations through notification messages. ([source](https://modelcontextprotocol.io/specification/2025-06-18/basic/utilities/progress))
- The MCP progress specification says progress tokens must be unique across all active requests. ([source](https://modelcontextprotocol.io/specification/2025-06-18/basic/utilities/progress))

## Further Reading

- [MCP Cancellation](https://modelcontextprotocol.io/specification/2025-06-18/basic/utilities/cancellation)
- [MCP Progress](https://modelcontextprotocol.io/specification/2025-06-18/basic/utilities/progress)