{"version":"2.1.299","anchor":"mcp-tool-call-failures-from-malformed-task-handles-now-tell","canonical_anchor":"mcp-tool-call-failures-from-malformed-task-handles-now-tell","heading":"Clearer message and a cancel attempt when an MCP server returns a broken task","tier":"notice","area":"MCP","scope":"individual","heads_up":false,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.299\/e\/mcp-tool-call-failures-from-malformed-task-handles-now-tell","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.299","markdown":"### Clearer message and a cancel attempt when an MCP server returns a broken task\n\nWhen an MCP server returns a malformed task handle, Claude now hears that the task may still be running, and Claude Code tries to cancel it\n\n**What**\n\nMCP (Model Context Protocol) servers are outside programs that give Claude Code extra tools. Some can run a tool call as a background task and hand back a handle to track it. When that handle is malformed:\n\n- The message Claude receives now says Claude Code cannot track the task or get its result, and that the server may still be running it.\n\n- If a task ID can still be read from the handle, Claude Code now asks the server to cancel the task.\n\nThe same cancel step is also used when a task call is aborted.\n\n**Why**\n\nThis stops tasks being left running on the server with nobody watching them, and gives Claude clearer information when a server misbehaves.\n\n- Area: MCP\n- Tier: You'll notice\n- Useful: 1\/5\n- Signal: 1\/5\n- Scope: individual\n- Heads-up: no"}