Skip to content

Commit 8a675ea

Browse files
committed
Update progress spec to reflect task semantics
1 parent 8169347 commit 8a675ea

File tree

2 files changed

+8
-0
lines changed

2 files changed

+8
-0
lines changed

docs/specification/draft/basic/utilities/progress.mdx

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,10 @@ The receiver **MAY** then send progress notifications containing:
6868
- Send notifications at whatever frequency they deem appropriate
6969
- Omit the total value if unknown
7070

71+
3. For task-augmented requests, the `progressToken` provided in the original request **MUST** continue to be used for progress notifications throughout the task's lifetime, even after the `CreateTaskResult` has been returned. The progress token remains valid and associated with the task until the task reaches a terminal status.
72+
- Progress notifications for tasks **MUST** use the same `progressToken` that was provided in the initial task-augmented request
73+
- Progress notifications for tasks **MUST** stop after the task reaches a terminal status (`completed`, `failed`, or `cancelled`)
74+
7175
```mermaid
7276
sequenceDiagram
7377
participant Sender

docs/specification/draft/basic/utilities/tasks.mdx

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -417,6 +417,10 @@ stateDiagram-v2
417417
1. For example, an elicitation that a task-augmented tool call depends on **MUST** share the same related task ID with that tool call's task.
418418
1. For the `tasks/get`, `tasks/list`, `tasks/result`, and `tasks/delete` operations, the `taskId` parameter in the request **MUST** be used as the source of truth for identifying the target task. Requestors **SHOULD NOT** include `modelcontextprotocol.io/related-task` metadata in these requests, and receivers **MUST** ignore such metadata if present in favor of the RPC method parameter.
419419

420+
### Task Progress Notifications
421+
422+
Task-augmented requests support progress notifications as defined in the progress notification specification. The `progressToken` provided in the initial request remains valid throughout the task's lifetime.
423+
420424
### Task Cancellation
421425

422426
1. Requestors **MAY** send `notifications/cancelled` at any time during task execution.

0 commit comments

Comments
 (0)