You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+14-15Lines changed: 14 additions & 15 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,24 +1,25 @@
1
1
# MCP Tasks Extension
2
-
This repository contains the official [Model Context Protocol](https://modelcontextprotocol.io) Tasks extension (`io.modelcontextprotocol/tasks`), based on [SEP-2663](https://github.com/modelcontextprotocol/modelcontextprotocol/pull/2663).
3
2
4
-
## Overview
3
+
This repository contains the official [Model Context Protocol](https://modelcontextprotocol.io) Tasks extension (`io.modelcontextprotocol/tasks`), based on [SEP-2663](https://github.com/modelcontextprotocol/modelcontextprotocol/pull/2663).
5
4
6
-
This extension defines the **Tasks** primitive for the Model Context Protocol (MCP). Tasks are durable state machines that carry information about the underlying execution state of a request, enabling requestor polling and deferred result retrieval. Each task is uniquely identifiable by a receiver-generated **task ID**.
5
+
## Why Tasks?
7
6
8
-
Tasks are useful for:
7
+
Some MCP requests finish quickly. Others run for minutes, wait for human input, or need to survive a disconnected client. The Tasks extension lets a receiver return a durable task handle so the requester can follow progress and retrieve the result later.
9
8
10
-
- Representing expensive computations and batch processing requests
11
-
- Integrating seamlessly with external job/workflow APIs
The `@modelcontextprotocol/ext-tasks` package provides generation-agnostic requester lifecycle APIs and 2025-11-25 Tasks receiver support. Start with the [TypeScript package guide](https://modelcontextprotocol.github.io/ext-tasks/typescript/) or [call your first task-enabled tool](https://modelcontextprotocol.github.io/ext-tasks/typescript/getting-started.html).
|`draft`| Development |[`schema.ts`](schema/draft/schema.ts)|[`schema.json`](schema/draft/schema.json)|
22
23
23
24
Released schema directories are immutable snapshots with version-specific JSON Schema identifiers. Development and schema generation target `schema/draft/` only. To create a release snapshot from the current draft:
24
25
@@ -30,8 +31,7 @@ npm run snapshot:schema -- YYYY-MM-DD
30
31
31
32
### SDK Package
32
33
33
-
The redistributable TypeScript package lives in `packages/ext-tasks`. It is an
34
-
npm workspace that publishes as `@modelcontextprotocol/ext-tasks`.
34
+
The redistributable package lives in `packages/ext-tasks` and publishes as `@modelcontextprotocol/ext-tasks`.
35
35
36
36
```bash
37
37
# Run schema, package, and packed-consumer checks
@@ -44,8 +44,7 @@ npm run test:watch
44
44
npm run pack:package
45
45
```
46
46
47
-
The package intentionally has no root export. Consumers import `/core`,
48
-
`/core/v1`, `/core/v2`, or `/client`.
47
+
The package intentionally has no root export. Consumers import `/client`, `/receiver`, `/core`, `/core/v1`, or `/core/v2`; the guide explains which entry point owns each workflow.
0 commit comments