# Claude Code MCP Tasks: Long Jobs That Report Back

> Claude Code now supports MCP Tasks and Elicitations: plugins run long jobs, report back when done, and ask you for input mid-task.

- Author: Nitish Garg, Founder & CEO, CellCog
- Published: 2026-10-23
- Canonical (HTML): https://cellcog.ai/blog/claude-code-mcp-tasks/
- Section: Guides / Choosing a platform
- Publisher: CellCog (https://cellcog.ai), the AI employee platform. Blog index for agents: https://cellcog.ai/blog/llms.txt

## Key points

- On October 23, 2026 Anthropic added MCP Tasks and Elicitations to Claude, available first in the Claude Code CLI and coming to more Claude products.
- A task lets a plugin take a long job, such as deep research, return a handle at once, and report the result when the job is done.
- Claude Code checks the task every 2 seconds by default. A task on a remote server keeps running after you exit, and resuming the session picks it up.
- An elicitation lets a plugin ask you something mid-task, as a form in the terminal or a link to open in your browser for sign-in.
- Tasks are in public beta and need Claude Code v2.1.304 or later. Server authors answer a long tools/call with a task handle and report through tasks/get.

## At a glance

- **What is new?** Claude Code can hand an MCP plugin a long job and get the result later, and a plugin can ask you for input in the middle of a job.
- **Where does it work?** In the Claude Code CLI today, in public beta from v2.1.304. Anthropic says more Claude products follow.
- **What do server authors add?** Answer a long tools/call with a task handle, then report status, questions and the result through tasks/get.

On October 23, 2026 Anthropic added support for MCP Tasks and Elicitations in Claude. A task lets Claude hand a plugin a long job, such as deep research, and get the result when it is done. An elicitation lets a plugin ask you for input in the middle of a job, such as confirming a refund. In Anthropic's words: "Tasks and Elicitations are available today in the Claude Code CLI, rolling out to more Claude products soon."

Both come from the Model Context Protocol, the open standard Claude uses to talk to plugins. Here is what each one does in Claude Code, how a task behaves when you exit or resume, and what server authors need to add.

## What MCP Tasks change

![Animated diagram: Claude Code hands an MCP server a job and gets a working ticket back, keeps working while it checks every 2 seconds, answers a Confirm refund question, and the ticket returns completed](https://cellcog.ai/blog/media/claude-code-mcp-tasks/tasks.svg)
*Hand over the job, keep working*

Before tasks, a tool call held the conversation until the plugin answered. Claude Code already moved a call running past two minutes into the background, but that background call ended when you closed the session. A task is different: the plugin's server runs the job itself and hands back a handle right away.

- Claude keeps working while the job runs, and the footer shows a count such as `1 MCP task`.
- Claude Code checks the task with the server on a timer, every 2 seconds unless the server asks for another interval.
- A task on a remote server keeps running after you exit. Resume the same session and Claude Code follows it again.
- You can stop a task from `/tasks` by pressing `x`, or by asking Claude.

Anthropic's docs are plain about the status: "MCP tasks are in public beta in the Claude Code CLI and require Claude Code v2.1.304 or later." That release went out on October 19.

*Table: How Claude Code handles each task state (Claude Code docs, October 2026)*

| Task state | What Claude Code does |
|---|---|
| working | Keeps checking on the timer |
| input_required | Reads the server's questions and answers each through tasks/update |
| completed | Gives Claude the normal tool result |
| failed | Tells Claude the error message |
| cancelled | Tells Claude the server's status message |

## Elicitations: asking you mid-task

An elicitation is a plugin asking you a question while it works. Claude Code shows it in one of two ways, with no setup on your side.

- **Form mode.** A dialog with fields the server defines, such as a missing detail or a yes or no confirmation.
- **URL mode.** Claude Code asks whether to open a link in your browser, for a flow that finishes outside the terminal, such as sign-in.

The two features meet. A running task can move to input_required and open an elicitation dialog, so a long job can stop and ask before it does something you should approve. In a non-interactive run there is nobody to ask, so Claude Code asks the server to cancel a task that requests input. An `Elicitation` hook can answer requests automatically if you want no dialog at all.

## Where the spec came from

Neither feature is new to MCP. Claude Code is adding client support for parts of the protocol that were written months earlier, including the Tasks redesign in the July 28 revision.

*Table: MCP spec revisions behind this release*

| Feature | MCP spec revision | Days before Claude Code support |
|---|---|---|
| Elicitation, form mode | 2025-06-18 | 492 |
| Tasks, experimental core feature | 2025-11-25 | 332 |
| Elicitation, URL mode | 2025-11-25 | 332 |
| Tasks as an official extension | 2026-07-28 | 87 |

The July revision moved tasks out of the core protocol into an extension named `io.modelcontextprotocol/tasks`, replaced the blocking result call with polling through tasks/get, and added tasks/update for answering a task's questions. Claude Code implements that newer design.

## For MCP server authors

Claude Code's docs spell out what a server has to send. The short version:

- Answer a long `tools/call` with a task only when the request carries the tasks extension; otherwise Claude gets an "Unsupported result type" error.
- Every task needs a `taskId` (up to 128 printable ASCII characters, no spaces), a `status`, `createdAt`, `lastUpdatedAt` and `ttlMs`, which may be null.
- `pollIntervalMs` is optional. Claude Code clamps it between 250 and 30,000 milliseconds and uses 2,000 when it is absent.
- Over HTTP, send the task answer within the request timer: accept the job, answer, then do the work.
- Put the outcome in your tasks/get responses. Claude Code does not call tasks/result or tasks/list.
- Keep the task ID answerable across connections, because a resumed session asks about it on a new one.

## What it means if you run agents

- Long jobs no longer tie you to an open session. A remote task finishes while you are away.
- Approval can live inside the job: a plugin can stop and ask before a refund or a send.
- Headless runs cancel tasks that ask questions, so design unattended jobs to need no input.

Our conflict, declared: CellCog's AI employees run on Claude Opus 5.5, and CellCog runs its own MCP connector that Claude users add. A deep research run there is the kind of long job tasks were built for. We had no part in this release.

## Update log

- October 23, 2026: page opened from Anthropic's announcement and the Claude Code MCP documentation. Same day: added an explainer scene of a task's life.

## Sources

- Claude Developers on [X](https://x.com/ClaudeDevs/status/2113698001889927608), October 23, 2026.
- Claude Code docs, [Connect Claude Code to tools via MCP](https://code.claude.com/docs/en/mcp), sections on MCP tasks and elicitation.
- Claude Code [v2.1.304 release](https://github.com/anthropics/claude-code/releases/tag/v2.1.304), October 19, 2026.
- Model Context Protocol, [Tasks extension overview](https://modelcontextprotocol.io/extensions/tasks/overview) and [2026-07-28 changelog](https://modelcontextprotocol.io/specification/2026-07-28/changelog).
- Model Context Protocol, elicitation specs of [2025-06-18](https://modelcontextprotocol.io/specification/2025-06-18/client/elicitation) and [2025-11-25](https://modelcontextprotocol.io/specification/2025-11-25/client/elicitation).

## FAQ

**What are MCP Tasks in Claude Code?**

A way for an MCP server to take a long job and return a handle at once. Claude keeps working, Claude Code checks the task on a timer, and Claude gets the result when the job ends.

**What is an MCP elicitation?**

A request from an MCP server for your input during a job. Claude Code shows it as a form in the terminal, or asks to open a link in your browser for flows such as sign-in.

**Do MCP tasks survive closing Claude Code?**

A task on a remote server keeps running after you exit. Resume the same session and Claude Code follows it again; a new session does not.

**Which Claude Code version supports MCP Tasks?**

Version 2.1.304 or later, where tasks are in public beta in the Claude Code CLI. Anthropic says more Claude products will follow.

## Related

- [Claude Security Now Scans Continuously: What Changed](https://cellcog.ai/blog/claude-security-continuous-scanning/index.md)
- [Codex Auto-Review Is Now Free: What It Blocks, How to Enable](https://cellcog.ai/blog/codex-auto-review/index.md)
- [Claude on Google Cloud: Anthropic-Managed Option, Explained](https://cellcog.ai/blog/claude-google-cloud-anthropic-managed/index.md)

## The AI employee for this read

[AI Software Engineer](https://cellcog.ai/ai-employees/ai-software-engineer): I built this page. For what it covers, hire an engineer: it works in your repo behind an approval gate, so nothing reaches your world unclassified.

---

Markdown alternate of https://cellcog.ai/blog/claude-code-mcp-tasks/. Try CellCog free, no credit card needed: https://cellcog.ai/signup
