Back to Fastmcp

subscriptions

docs/python-sdk/fastmcp-server-tasks-subscriptions.mdx

3.2.41.3 KB
Original Source

fastmcp.server.tasks.subscriptions

Task subscription helpers for sending MCP notifications (SEP-1686).

Subscribes to Docket execution state changes and sends notifications/tasks/status to clients when their tasks change state.

This module requires fastmcp[tasks] (pydocket). It is only imported when docket is available.

Functions

subscribe_to_task_updates <sup><a href="https://github.com/PrefectHQ/fastmcp/blob/main/src/fastmcp/server/tasks/subscriptions.py#L31" target="_blank"><Icon icon="github" style="width: 14px; height: 14px;" /></a></sup>

python
subscribe_to_task_updates(task_id: str, task_key: str, session: ServerSession, docket: Docket, poll_interval_ms: int = 5000) -> None

Subscribe to Docket execution events and send MCP notifications.

Per SEP-1686 lines 436-444, servers MAY send notifications/tasks/status when task state changes. This is an optional optimization that reduces client polling frequency.

Args:

  • task_id: Client-visible task ID (server-generated UUID)
  • task_key: Internal Docket execution key (includes session, type, component)
  • session: MCP ServerSession for sending notifications
  • docket: Docket instance for subscribing to execution events
  • poll_interval_ms: Poll interval in milliseconds to include in notifications