This repository contains the official Model Context Protocol Tasks extension (io.modelcontextprotocol/tasks), based on SEP-2663.
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.
Tasks are useful for:
- Representing expensive computations and batch processing requests
- Integrating seamlessly with external job/workflow APIs
- Enabling call-now, fetch-later execution patterns
Extension Identifier: io.modelcontextprotocol/tasks
The JSON Schema is auto-generated from the TypeScript type definitions using ts-to-zod and Zod's toJSONSchema(). Do not hand-edit schema.json or generated/schema.ts.
# Generate Zod schemas and JSON Schema from schema.ts
npm run generate:schemas
# Verify TypeScript compiles and generated files are up to date
npm run check:schema
This repository follows the Model Context Protocol Governance process. See MAINTAINERS.md for the list of maintainers specific to this repository.
This repository follows the Model Context Protocol project policies:
This project is licensed under the Apache License 2.0. See LICENSE for details.