Skip to content

Implement SEP-2663: Tasks Extension #2189

Open

Description

@felixweinberger

This is a tracking issue for implementation of SEP-2663.

Activity

  1. mattzcarey commented on May 29, 2026

    @mattzcarey
    Member

    Status — SEP-2663 (Tasks Extension)

    Track: B — last in the dependency chain: needs #2188 (Extensions framework) and #2187 (MRTR) before this can really land.
    Spec: seps/2663-tasks-extension.md · merged spec#2663 2026-05-15

    What's done

    Open PR

    Outstanding (acceptance criteria, summary)

    • New extension id io.modelcontextprotocol/tasks; capability negotiation via Implement SEP-2133: Extensions framework for MCP #2188
    • resultType: "task" on CreateTaskResult; server MUST NOT return it without the capability
    • Methods: tasks/get, tasks/update, tasks/cancel (poll-based; tasks/result removed → -32601; tasks/list removed)
    • Per-status response shapes: working / input_required / completed / cancelled / failed field requirements
    • Durable creation: tasks/get(id) resolves immediately after CreateTaskResult returned
    • notifications/cancelled MUST NOT cancel tasks; only tasks/cancel does (eventually-consistent, cooperative)
    • Tool-result isError: true → status completed (not failed); failed is for JSON-RPC errors
    • Legacy task param on CallToolRequest → silently ignored (not treated as opt-in)
    • tasks/get with invalid/unknown taskId → -32602
    • subscriptions/listen with taskIds filter without ext-tasks → -32003 with requiredCapabilities
    • Mcp-Name: <taskId> header on tasks/get/update/cancel over HTTP (overlap with SEP-2243 Implement SEP-2243: HTTP Standardization #2190)
    • Auth-binding evaluated per task request
    • Task IDs: 128-bit entropy / UUIDv4 default TaskStore
    • Client SHOULD deduplicate inputRequests keys across consecutive polls
    • Progress / log messages NOT delivered via subscriptions/listen for tasks

    Post-85ec3771 clarifications to fold in

    • spec#2756 (open) — specify -32003 error for missing client capability

    Related spec / open PRs to monitor

    • spec#2694 — Resumable Task Event Streams (post-release-1)
    • spec#2679 — Task streaming partial results (post-release-1)
    • spec#2669 — Task Interaction Methods (steer/pause/resume) (post-release-1)

    Coordination

  2. norika1207-lab commented on Jun 2, 2026

    @norika1207-lab
  3. added
    triageQueued for automated analysis — bot will process and remove this label
    on Jul 9, 2026
  4. ghost added
    enhancementRequest for a new feature that's not currently supported
    on Jul 9, 2026
  5. ghost added
    needs decisionIssue is actionable, needs maintainer decision on whether to implement
    on Jul 9, 2026
  6. ghost added
    P2Moderate issues affecting some users, edge cases, potentially valuable feature
    on Jul 9, 2026
  7. ghost added
    v2Ideas, requests and plans for v2 of the SDK which will incorporate major changes and fixes
    on Jul 9, 2026
  8. ghost removed
    triageQueued for automated analysis — bot will process and remove this label
    on Jul 9, 2026
  9. added a commit that references this issue on Jul 29, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

P2Moderate issues affecting some users, edge cases, potentially valuable featureenhancementRequest for a new feature that's not currently supportedneeds decisionIssue is actionable, needs maintainer decision on whether to implementv2Ideas, requests and plans for v2 of the SDK which will incorporate major changes and fixes

Type

No type

Projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions