Skip to main content
Module 5: The Fable 5 Era 8 / 8
Advanced S32 Artifacts Tasks Tools Fable 5

The New Tool Belt: Artifacts, Tasks & Typed Outputs

A verified tour of Claude Code's current output and coordination tools, including live MCP-backed artifacts, task output files, LSP, and recent Week 28–29 changes.

July 8, 2026 16 min read
Verified Curriculum reviewed: Jul 20, 2026

What You’ll Learn

The current Claude Code tool belt goes beyond reading and editing files. It can publish interactive output, coordinate durable tasks, render typed review findings, navigate code through a language server, and keep long-running work visible without blocking the session.

This session covers:

  • Artifacts as private, update-in-place pages on claude.ai
  • The precise boundary between live MCP connector calls and blocked external fetches
  • The Task tools and the replacement for deprecated TaskOutput
  • AskUserQuestion, ReportFindings, LSP, worktrees, and resumable agents
  • Relevant changes from Weeks 28 and 29 of 2026

Artifacts: Output as a Live Page

An artifact is a single HTML or Markdown page published from Claude Code to a private URL on claude.ai. It can present annotated diffs, dashboards, design comparisons, timelines, or other output that is easier to inspect visually than in terminal prose.

The basic lifecycle is:

session data → .html/.htm/.md file → private artifact URL

                                      ├─ update in place
                                      └─ share when appropriate

Claude Code asks before the first publish. Later revisions to the same artifact update its URL in place, and each publish becomes a version. A different session can update it when given the artifact URL.

Artifacts require Claude Code 2.1.183 or later (or a supported Desktop app), an eligible Pro, Max, Team, or Enterprise plan, and a session authenticated with /login rather than an API key or cloud-provider credential.

Static External Fetches vs Live MCP Connectors

An artifact is still one self-contained page with no backend. Its Content Security Policy blocks ordinary outbound networking:

  • remote scripts, stylesheets, fonts, and images;
  • fetch and XHR; and
  • WebSocket connections.

CSS and JavaScript must be inline, and images must be embedded as data URIs. The rendered page must stay within the documented 16 MiB limit.

MCP connector calls are the explicit exception. From Claude Code 2.1.209, an artifact can declare claude.ai MCP connectors at publish time and ask claude.ai to call them whenever a viewer opens or refreshes the page. This makes a dashboard show current data or expose connector actions without granting the page general internet access.

The trust boundary is important:

PathPublished artifact behavior
Ordinary external API / fetch / XHR / WebSocketBlocked by CSP
claude.ai MCP connector declared at publish timeAllowed through claude.ai after viewer approval
Local .mcp.json serverCan help while building; cannot be called live by the published page

Every viewer uses their own connector account and approves the first call. Two viewers can therefore see different data. Connector-backed artifacts cannot be shared publicly; on Team and Enterprise they can be private or organization-shared, while on Pro and Max they remain private.

Build a dashboard artifact of open pull requests that pulls the live list
through my GitHub connector when the page loads. Include a fallback message
for viewers who have not connected GitHub.

Tasks: The Session’s Operational View

TodoWrite is disabled by default in favor of the Task tools:

TaskCreate ──► create a task
TaskUpdate ──► change state, details, dependencies, or owner
TaskList   ──► see the operational queue
TaskGet    ──► inspect one task

background task ──► TaskStop
                └─► Read(output file path)

Tasks can be pending, in progress, or completed and can block or depend on other tasks.

TaskOutput is deprecated

TaskOutput still appears in the reference, but it is deprecated. Read a background task’s output file path with Read instead. Claude Code includes the output path in background-task details and completion/move-to-background messages, so that file is the durable inspection surface.

Use TaskStop only to stop a running background task. It does not replace TaskUpdate, which manages task-list state and dependencies.

Structured Interaction and Output

AskUserQuestion

AskUserQuestion presents multiple-choice questions for requirements or ambiguity. Questions remain open by default; an optional askUserQuestionTimeout can auto-continue after 60s, 5m, or 10m. That timeout applies only to the question dialog, never to permission prompts or plan approval.

ReportFindings

From 2.1.196, active code-review instructions can use ReportFindings to return a rendered list with a file, summary, and failure scenario. From 2.1.199, a finding can also carry a category such as correctness or test-coverage. Structured presentation helps; it does not make an unverified claim true.

LSP

The LSP tool asks a running language server for definitions, references, type errors, and warnings. After edits, diagnostics can surface automatically, reducing reliance on text search alone. Builds and tests still remain the final behavioral check.

Isolation, Agents, and Delivery

  • EnterWorktree / ExitWorktree let the main session use an isolated git worktree.
  • Subagents run in the background by default when independent work is appropriate; the caller receives their final result.
  • SendMessage can resume a completed subagent by ID or name. A stopped subagent is not resumed this way.
  • SendUserFile can deliver a generated file to a connected Remote Control client or managed cloud environment.
  • ShareOnboardingGuide uploads ONBOARDING.md from /team-onboarding for eligible claude.ai plans.

These features have different plan, authentication, and provider boundaries. The Tools Reference should be checked before treating any one of them as universally available.

Week 28: Safer Surfaces and Better Diagnostics

Releases 2.1.202–2.1.206 added several relevant upgrades:

  • The Desktop app gained a sandboxed, configurable browser for external sites.
  • /doctor became an actionable setup checkup: it diagnoses installation health, unused skills/MCP/plugins, duplicated or oversized CLAUDE.md content, and slow hooks, then asks before making changes.
  • EnterWorktree now confirms before entering a path outside .claude/worktrees/.
  • Background-task notifications explicitly state that no human input occurred, preventing transcript text from being mistaken for user approval.
  • /code-review finding quality improved on Opus 4.8 across effort levels.

Week 29: Live Artifacts and Long-Running Work

Releases 2.1.207–2.1.212 extended the belt again:

  • Published artifacts gained live MCP connector data and actions.
  • claude --ax-screen-reader gained a linear, screen-reader-friendly terminal mode.
  • /fork now copies the conversation into a new background session; the former in-session behavior is /subtask.
  • MCP calls lasting more than two minutes move to the background automatically, with a configurable threshold.
  • Web searches and subagent spawns gained default per-session caps of 200, each tunable through documented environment variables.

Build a Shareable Review Artifact

1. Run review workers in the background and track them as tasks.
2. Collect ReportFindings records; keep unverified items visibly separate.
3. Build one self-contained HTML page with inline CSS and JavaScript.
4. Add declared MCP connectors only if viewers need fresh data.
5. Publish privately, review it, and choose an allowed sharing audience.
6. Republish later versions to the same artifact URL.

If the page only needs data collected during the session, keep it static and shareable. If it needs live connector data, accept the stricter private/organization sharing boundary and provide a clear fallback for viewers without the connector.

Key Insight

The tool belt now separates work, evidence, presentation, and delivery. Tasks track execution, typed tools structure results, Artifacts present them, and MCP connectors can refresh approved live data. The boundaries matter as much as the features: a live connector is not general network access, and a deprecated task-output tool should not remain in new workflows.

Module 5 Conclusion

Module 5 ends with a system that can choose model and effort, script multi-agent work, preserve memory, defer tools, schedule work, and present results beyond the terminal. The durable lesson is not to use every feature at once. Choose the smallest mechanism that preserves evidence, permissions, and a clear path for the user to inspect the result.

Official Sources