---
title: "MCP Task"
description: "An MCP task is a durable handle for work started by a Model Context Protocol (MCP) tool call when the result will not be available in the initial response. The Tasks extension lets a server return resultType: \"task\" and a taskId instead of keeping the original tools/call request open until the work finishes."
canonical_url: "https://promptmetheus.com/resources/llm-knowledge-base/mcp-task"
---

> Index of every page on this site: [llms.txt](https://promptmetheus.com/llms.txt)

An MCP task is a durable handle for work started by a [Model Context Protocol (MCP)](https://promptmetheus.com/resources/llm-knowledge-base/model-context-protocol-mcp) tool call when the result will not be available in the initial response. The Tasks extension lets a server return `resultType: "task"` and a `taskId` instead of keeping the original `tools/call` request open until the work finishes.

The client uses `tasks/get` to poll for status and the eventual result. A task can be `working`, require additional input, or reach a terminal state such as `completed`, `failed`, or `cancelled`. The extension also defines `tasks/update` for supplying requested input and `tasks/cancel` for requesting cancellation. Cancellation is cooperative: an acknowledgement does not prove that the underlying operation stopped.

This is useful for operations such as a long-running analysis, a data export, or a deployment that may outlive a network request. A production client should persist the task ID, respect the server's polling interval, handle expiry, and check the final result rather than equating task creation with success. A server should restrict task lookup and updates to the authorized caller; a task ID is a reference, not permission to access someone else's work.

An MCP task describes the lifecycle of one server-side operation. It is narrower than a [resumable agent run](https://promptmetheus.com/resources/llm-knowledge-base/resumable-agent-run), which may span many model turns and tool calls, or an [agent session](https://promptmetheus.com/resources/llm-knowledge-base/agent-session), which can contain multiple runs. If the task needs a user answer while it is running, the client can supply that answer through the extension's input flow; for synchronous interactions, a [Multi Round-Trip Request](https://promptmetheus.com/resources/llm-knowledge-base/multi-round-trip-request) serves a different purpose.

See the [MCP Tasks extension specification](https://tasks.extensions.modelcontextprotocol.io/specification/draft/tasks) for the result shape, lifecycle methods, and security requirements.

## Sitemap

See the full [sitemap](https://promptmetheus.com/sitemap.md) for all pages.
