Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

No client-suite scenarios for the tasks extension (io.modelcontextprotocol/tasks)

Open
#374 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
68/100
Issue type
Feature
Clarity
Mostly clear
Activity status
Quiet
Tech stack
typescript
Domain
api, testing-qa

Research direction

Start by reading SEP-2663 and the existing server-suite tasks-* scenarios, then locate the client-suite scenario definitions and harness flow. Add coverage for CreateTaskResult handling, pollIntervalMs, Mcp-Name routing, and failed or cancelled terminal tasks; done means the client suite exercises all four behaviors.

Written by the indexing model from the issue text.

Description

The server suite has 10 tasks-* scenarios, but the client suite has none. SEP-2663 places normative requirements on clients too — most importantly:

A client that has negotiated this extension MUST be prepared to handle either CallToolResult or CreateTaskResult in response to any supported request it issues.

plus the tasks/get polling flow (pollIntervalMs handling), issuing tasks/update / tasks/cancel, and the Mcp-Name: <taskId> routing header on tasks/* requests.

python-sdk is landing a client-side transparent polling driver (modelcontextprotocol/python-sdk#3005) and currently has no way to verify it against the harness — client conformance can't observe any of the above.

Suggested client-suite scenarios:

  • tasks-client-create-handling — the harness server task-augments a tools/call; the client must handle the CreateTaskResult and fetch the result via tasks/get.
  • tasks-client-poll-interval — the client honors pollIntervalMs between polls.
  • tasks-client-routing-headers — the client stamps Mcp-Name: <taskId> on tasks/* POSTs.
  • tasks-client-terminal-handlingfailed / cancelled tasks are surfaced rather than polled forever.

AI Disclaimer

Dominant language
TypeScript
Stars
127
Forks
101
Avg merge
4d 7h
Merged PRs (30d)
6

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from modelcontextprotocol/conformance

All issues in modelcontextprotocol/conformance

Similar issues

More TypeScript issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.