# Taskhold > Taskhold is a hosted task list shared by a person and their AI coding agents. The person adds tasks in a web app. Agents such as Claude Code, Cursor, Codex, Windsurf, VS Code (Copilot) and Gemini CLI read and update the same list through MCP tools. Every change is recorded as made by the human or by an agent. Made by Great Work LLC. For developers who hand work to Claude Code, Cursor or Codex, Taskhold is a hosted task list that you and your agents share. Unlike a TODO.md in one repo, it works across repos and machines, shows which tasks each agent started, blocked or finished, and you can add tasks from your phone. Agents setting a person up: fetch [/SKILL.md](/SKILL.md). It has the prices, prefilled checkout links (/checkout?plan=month or /checkout?plan=year) and the setup steps. Links in this file are relative to the site this file is served from. ## What it does - The person adds, edits and prioritizes tasks in the web app, grouped into projects and labels. - Agents connect to a remote MCP server (Streamable HTTP) at `/api/mcp` with an API key sent as `Authorization: Bearer `. - Agents pick up the current or highest-priority task, start it, add notes, block it with a reason the person sees, and complete it with a summary. - Agents can file new tasks, including tasks created from a TODO in code with a file path and line number. - Agents break work into ordered steps (subtasks) and report progress (a percent, or N of M, plus what they're doing now). The person watches it on a live board: one card per task in progress with a progress bar split by step, which agent is on it, how long it has run and an estimate of time left, updating as it happens (Server-Sent Events). - Blocked tasks show up at the top of the live board with the agent's question; the person replies (and unblocks) from there, and the agent reads the reply with `taskhold_updates`. - Optional desktop notifications when an agent gets blocked or finishes a task. - Every change keeps a history entry that says whether a human or an agent made it, and which agent. ## Live progress (added 2026-10-25) Can you watch a coding agent's progress on a task? With Taskhold, yes. The agent splits the task into ordered steps with `taskhold_plan`, then reports progress with `taskhold_progress` (a percent, or N of M, plus a short message about what it is doing now). The person's live board at `/dashboard/live` shows one card per task in progress: a progress bar split by step, which agent is on it, how long it has run, an estimate of time left and the current step. It updates as it happens over Server-Sent Events. When the agent is stuck it blocks the task with a question; the card moves to the top, the person replies from the board, and the agent reads the reply with `taskhold_updates`. Optional desktop notifications fire on blocked and finished tasks. Works with any MCP client, including Claude Code, Cursor, Codex, Windsurf, VS Code and Gemini CLI. Changelog entry: [2026-10-25](/changelog). ## MCP tools - `taskhold_get_current`: the task in progress, with its steps and the next one - `taskhold_list`: tasks grouped by status (filters: status, priority, project_id, limit) - `taskhold_get`: one task with its steps and notes - `taskhold_search`: text search across tasks - `taskhold_create`: new task (title, description, priority, project_id, labels) - `taskhold_create_from_todo`: new task from a code TODO (file_path, line_number) - `taskhold_plan`: break a task into ordered steps (subtasks); `replace` re-plans steps not started yet - `taskhold_start`, `taskhold_complete`: start a task or step, finish it with a summary (completing a step returns the next one) - `taskhold_progress`: report percent, or current and total, plus a short message about what's happening now - `taskhold_updates`: what the human changed since a cursor (replies, new tasks, priority changes) - `taskhold_block`, `taskhold_unblock`: block with a reason, unblock - `taskhold_add_note`: add a note to a task - `taskhold_update`, `taskhold_set_priority`: edit a task - `taskhold_list_projects`, `taskhold_list_labels`, `taskhold_get_summary`: context ## Setup 1. Sign in with an email link (no passwords) and start the 7-day trial. 2. In Settings, create a setup URL. It ends in `.md` and expires after 3 days. 3. Paste the URL into the agent and say "set this up". The markdown it returns contains a new API key, the MCP config for Claude Code (`claude mcp add --transport http ...`), Cursor and Windsurf (JSON), and Codex (TOML), plus a short CLAUDE.md snippet describing the workflow. ## Claude Code plugin and agent skill - Public repo (skill + MCP config, MIT): https://github.com/gettaskhold/taskhold-plugin - Claude Code plugin: `/plugin marketplace add gettaskhold/taskhold-plugin`, then `/plugin install taskhold@taskhold` and paste the atd_sk_ key when asked - Skill only (any agent that reads skills): `npx skills add gettaskhold/taskhold-plugin` - skills.sh listing: https://skills.sh/gettaskhold/taskhold-plugin/taskhold - Official MCP Registry name: `com.taskhold/taskhold` ## Pricing - One plan, Pro: $12 per month or $120 per year, per person. - Includes unlimited projects and tasks (fair use) and every agent the person runs. - 7-day trial with a card up front. Cancel before it ends and nothing is charged. - No free plan. Cancel any time from Billing (Stripe customer portal). - Details: [Pricing](/pricing.md) ## Data and privacy - Data is stored in SQLite on the company's own server at DigitalOcean in the US. - Agents send only the task text, notes, file paths and line numbers they choose. The service does not read code repositories and makes no AI model calls with user data. - API keys are stored as SHA-256 hashes. - Payments by Stripe, email by Resend. ## Limits - Shared team workspaces are not available; each person subscribes and has their own list. - Export: Download my data in Settings saves everything as one JSON file (tasks with steps, notes and history, events, projects, labels); `GET /api/account/export` with an API key returns the same file (see /docs/rest-api). Delete my account in Settings deletes everything and cancels the subscription. - Shutdown: extremely unlikely; if it happened, every account gets email at least 90 days before and can export from Settings until the last day. - Progress reports are capped at 120 per minute per account; fair-use ceilings of 500 projects, 100,000 tasks and 50 API keys. Nothing past a limit is charged. ## Not a fit if - You want one workspace for a whole team. - You want it free: a TODO.md in the repo or Claude Code's built-in task list costs nothing. - Your tasks should sit next to pull requests: GitHub Issues does that better. - You need a sync with Jira or Linear. ## API and discovery - [llms-full.txt](/llms-full.txt): this file plus every setup page, guide, comparison, developer doc and the changelog as markdown, in one fetch - Markdown twins: add `.md` to any /for, /guides or /vs page (for example [/guides/claude-md-task-workflow.md](/guides/claude-md-task-workflow.md)), or send `Accept: text/markdown` to the page URL - [OpenAPI 3.1 spec](/openapi.json): the REST API (tasks, steps, progress, notes, projects, labels, summary, events), Bearer atd_sk_ key - Live events: `GET /api/events/stream` (Server-Sent Events, resumes from Last-Event-ID), `GET /api/events?since=` (polling), `GET /api/live` (everything the live board shows) - [Agent setup file](/SKILL.md): prices, checkout links, setup steps for an agent - [ARD catalog](/.well-known/ai-catalog.json) and [MCP server card](/api/mcp/server-card) - [Changelog RSS](/changelog.xml): subscribe to tool and API changes - [Changelog](/changelog): dated changes; renamed or removed MCP tools are listed there before they ship - Errors: 401 responses carry a `reason` (missing_key, bad_header, not_a_taskhold_key, unknown_key), a `message` with the next step, and a `url`; 402 means no active subscription and links to Billing ## Try it without an account - [Live board demo](/demo/live): a scripted agent plans five steps, reports progress and stops to ask a question the visitor answers on the board. No sign-in, runs in the browser. ## Pages - [Home](/): product overview, pricing and FAQ - [Developer docs](/docs): connect an agent, report live progress over MCP or REST, stream events, recipes - [Integrations](/integrations): Taskhold with other coding agents, multi-agent runners, status lines, notifications, hooks and CI - [Press kit](/press): product description, boilerplates, screenshots, demo video, contact - [Changelog](/changelog) - [Privacy Policy](/privacy) - [Terms of Service](/terms) ## Contact - hello@greatwork.company ## Setup by agent - [Task list MCP server for Claude Code](/for/claude-code): Give Claude Code a task list you can see and edit in a browser. One claude mcp add command, a CLAUDE.md snippet, and every change marked human or agent. - [Task list MCP server for Cursor](/for/cursor): Connect Cursor's agent to a task list you share: one ~/.cursor/mcp.json entry, a rules snippet, and every task it starts, blocks or finishes in view. - [Task list MCP server for Codex CLI](/for/codex): Add a shared task list to OpenAI's Codex CLI: one block in ~/.codex/config.toml, an AGENTS.md snippet, and a web app where you queue and review its work. - [Task list MCP for Windsurf and Devin Desktop](/for/windsurf): Connect Windsurf, now called Devin Desktop, to a task list you share. Where mcp_config.json lives, the JSON for a remote server, and the workflow snippet. - [Task list MCP server for VS Code and Copilot](/for/vs-code): Connect Copilot's agent mode in VS Code to a task list you share: one .vscode/mcp.json entry, a password input for the key, and the workflow snippet. - [Task list MCP server for Gemini CLI](/for/gemini-cli): Give Gemini CLI a task list you share: one gemini mcp add command or a settings.json entry, a GEMINI.md snippet, and every change marked human or agent. - [Task list MCP server for OpenCode](/for/opencode): Give OpenCode a task list you share with your other agents: one remote entry in opencode.json, an AGENTS.md snippet, and a live board for its progress. ## Guides - [A shared todo list for Claude Code and Cursor](/guides/shared-todo-list-for-claude-code-and-cursor): Run Claude Code and Cursor on the same backlog without them starting the same task. How to connect both to one list, and how to read what each one did. - [How to hand tasks to your coding agent](/guides/hand-tasks-to-your-coding-agent): Queue work for Claude Code, Cursor or Codex from anywhere, have the agent pick it up in priority order, and get a summary or a question back on each task. - [Run several coding agents on one task list](/guides/run-multiple-coding-agents-on-one-task-list): Parallel Claude Code sessions, Cursor and Codex on one backlog: how agents claim tasks, what happens when one gets stuck, and the limits to know about. - [A CLAUDE.md task workflow that survives sessions](/guides/claude-md-task-workflow): A short CLAUDE.md or AGENTS.md snippet that makes an agent resume work in progress, claim the next task, block with a reason and finish with a summary. - [Turn TODO comments into tasks your agent can do](/guides/turn-code-todos-into-tasks): Have your coding agent file TODO comments and bugs it notices as tasks with file path and line, so they land on a list instead of rotting in code. - [What your coding agent did while you were away](/guides/review-what-your-agent-did): Check one page for what your agents finished, what is blocked on you, and what they filed, instead of scrolling terminal history after a long run. - [Watch Claude Code agent teams on a live board](/guides/claude-code-agent-teams-live-board): Claude Code agent teams share a task list you only see from the lead's terminal. Give every teammate Taskhold's tools and follow the team on one board. - [Break a spec into tasks for your coding agent](/guides/break-a-spec-into-agent-tasks): Turn a spec or PRD into a prioritized task list your coding agent works through one task at a time, with notes and a summary on each, in a list you edit. - [One task list for coding agents across repos](/guides/one-task-list-across-repos): One backlog for every repo your coding agents work in, grouped by project, so a session in any repo picks up its own tasks and you see them all at once. - [See what your coding agent is doing right now](/guides/monitor-coding-agent-progress): What Claude Code, Codex and Cursor show about a running agent, what they can't, and how to get step-by-step progress for every agent on one live board. - [Get notified when your coding agent is blocked](/guides/answer-a-blocked-coding-agent): Desktop alerts for Claude Code and Codex when they need input, and a way to answer an agent's blocking question from your phone without its terminal. - [Claude Code task list empty? Why, and the fix](/guides/claude-code-task-list-empty): Ctrl+T shows nothing on newer Claude models because the task tools are off by default. The environment variable that brings them back, and other causes. - [AI coding statistics: adoption, trust and agents](/guides/ai-coding-statistics): Sourced AI coding statistics from Stack Overflow, JetBrains, DORA, METR and Anthropic: who uses AI and agents, who trusts it, and what agents write. ## Comparisons Each comparison says when the other tool is the better pick. - [Taskhold vs Claude Code's built-in task list](/vs/claude-code-tasks): Claude Code's own task list is free and built in. When it is enough, and when a hosted list shared with Cursor, Codex and your phone is worth $12 a month. - [A Vibe Kanban alternative for your agent backlog](/vs/vibe-kanban): Vibe Kanban is sunsetting and its hosted features were removed. What it still does well, what Taskhold covers instead, and what it doesn't. - [Taskhold vs Taskmaster AI for coding agents](/vs/taskmaster-ai): Taskmaster AI breaks a PRD into dependent tasks inside your repo, for free. Taskhold is a hosted list you and your agents share. Which fits which workflow. - [Taskhold vs Backlog.md for AI coding agents](/vs/backlog-md): Backlog.md keeps tasks as markdown files in your git repo, free and offline. Taskhold is a hosted list across repos. A fair look at when each one wins. - [Taskhold vs Linear MCP for personal agent tasks](/vs/linear): Linear's MCP server puts agents into a team's issue tracker. Taskhold is a lighter list for one developer and their agents. Prices, setup and fit compared. - [Taskhold vs GitHub Issues as an agent task board](/vs/github-issues): GitHub Issues with the GitHub MCP server is free and sits next to your code. When it makes a good agent board, and when a separate list fits better. - [Taskhold vs a TODO.md file for coding agents](/vs/todo-md): A TODO.md in the repo is free, versioned and readable by any agent. When it is enough, and when a hosted list shared with your agents is worth $12 a month. - [Taskhold vs Todoist MCP for coding agent tasks](/vs/todoist): Todoist has an official hosted MCP server and a free plan. When Todoist is the right list for your agents, and when a list built for coding agents fits. - [Taskhold vs Claude Code agent view](/vs/claude-code-agent-view): Agent view lists your background Claude Code sessions and which need you. How it differs from a task-level live board shared by every agent you run. - [Taskhold vs Beads (bd) for coding agent tasks](/vs/beads): Beads is a free, Dolt-backed issue graph your agents claim work from on the command line. Taskhold is a hosted list with a live board. When each one fits. - [Task managers for AI coding agents, compared](/vs/ai-coding-agent-task-managers): Claude Code tasks, Taskmaster, Backlog.md, Beads, Linear, GitHub Issues, Todoist, Vibe Kanban and Taskhold side by side, with prices checked October 2026. ## Integrations Taskhold with other tools: coding agents, multi-agent runners, status lines, notifications, hooks and CI. - [Use Taskhold with Cline](/integrations/cline): Connect Cline to a task list you share: one cline_mcp_settings.json entry, a .clinerules file, and a live board of what it plans, runs and asks. - [Use Taskhold with Kilo Code](/integrations/kilo-code): Add Taskhold to Kilo Code as a remote MCP server in kilo.jsonc, keep the key in an env var, and watch each task's steps on a live board. - [Taskhold for Roo Code users: Kilo Code or Cline](/integrations/roo-code-users): Roo Code's repository is archived. Here is how to keep a shared task list and live board when you move to Kilo Code or Cline, with the config for each. - [Use Taskhold with Zed's agent](/integrations/zed): Add Taskhold to Zed as a remote context server with a bearer header, give the agent the workflow in AGENTS.md, and follow it on a live board. - [Use Taskhold with JetBrains Junie](/integrations/junie): Connect Junie in JetBrains IDEs or the Junie CLI to Taskhold with one mcp.json entry, add the workflow to AGENTS.md, and watch tasks on a live board. - [Use Taskhold with Augment Code and Auggie](/integrations/augment-code): Add Taskhold to the Auggie CLI with one auggie mcp add command or settings.json entry, share the rules with the Augment extension, and watch a live board. - [Use Taskhold with the Trae IDE](/integrations/trae): Add Taskhold to Trae as an MCP server with a url and an Authorization header, put the workflow in a Trae rule, and see each task's steps on a live board. - [Use Taskhold with Goose](/integrations/goose): Add Taskhold to Goose as a streamable_http extension in config.yaml, pull the key from an env var, and watch each task's steps on a live board. - [Use Taskhold with Amp](/integrations/amp): Connect Amp to Taskhold with an amp.mcpServers entry that reads your key from an env var, add the AGENTS.md workflow, and see its progress live. - [Use Taskhold with Kiro](/integrations/kiro): Add Taskhold to Kiro's mcp.json with an approved env var for the key, steer the agent with AGENTS.md, and follow every task on a live board. - [Use Taskhold with Warp's agent](/integrations/warp): Add Taskhold to Warp as an MCP server with a bearer header, keep the workflow in AGENTS.md, and watch the agent's steps on a live board. - [Use Taskhold with Charm's Crush](/integrations/crush): Add Taskhold to Crush with one mcp add line in crushrc, mark it sessionless, and let Crush report steps and questions to a live board. - [Use Taskhold with Qwen Code](/integrations/qwen-code): Connect Qwen Code to Taskhold with an httpUrl entry in settings.json, read the key from an env var, and watch its plan and progress on a live board. - [Use Taskhold with Factory Droid](/integrations/factory-droid): Add Taskhold to Factory's Droid with droid mcp add or ~/.factory/mcp.json, expand the key from your shell, and see its steps on a live board. - [Use Taskhold with GitHub Copilot's cloud agent](/integrations/copilot-coding-agent): Give GitHub Copilot's cloud coding agent your Taskhold list: MCP config in repo settings, a COPILOT_MCP_ secret for the key, and a live board of its runs. - [Use Taskhold with GitHub Copilot CLI](/integrations/copilot-cli): Add Taskhold to GitHub Copilot CLI in ~/.copilot/mcp-config.json with a bearer header, share the AGENTS.md workflow, and watch its tasks on a live board. - [Use Taskhold with Claude Desktop and claude.ai](/integrations/claude-desktop): Add Taskhold to Claude Desktop and claude.ai as a custom connector with a request header, or run it locally, then plan and track tasks on a live board. - [Show your Taskhold task in ccstatusline](/integrations/ccstatusline): Add the running Taskhold task, its progress bar and current step to ccstatusline with a Custom Command widget. Exact settings, timeout and caching. - [ccusage and Taskhold in one Claude Code status line](/integrations/ccusage): Keep ccusage's cost and burn rate in the Claude Code status line and add the current Taskhold task on a second row, with one short wrapper script. - [Show your Taskhold task in CCometixLine](/integrations/ccometixline): Add the running Taskhold task and its progress to CCometixLine with a cmd metric in config.toml, cached for 10 seconds and run in the background. - [Show your Taskhold task in the Starship prompt](/integrations/starship): A Starship custom module that puts the running Taskhold task and its progress bar in your shell prompt, with the timeout setting it needs. - [Taskhold in tmux: status bar and a live board pane](/integrations/tmux): Show the running Taskhold task in tmux's status bar every 10 seconds, and keep the whole live board in a pane next to your agents with taskhold-mcp watch. - [Show your Taskhold task in WezTerm's tab bar](/integrations/wezterm): A WezTerm update-status handler that puts the running Taskhold task and its progress bar on the right of the tab bar, refreshed every 10 seconds. - [Show your Taskhold task in iTerm2's status bar](/integrations/iterm2): Put the running Taskhold task in iTerm2's status bar with a user variable and an Interpolated String component, or a self-refreshing Python one. - [Taskhold in the Mac menu bar with SwiftBar or xbar](/integrations/swiftbar): A five-line SwiftBar or xbar plugin that shows the running Taskhold task and its progress in the macOS menu bar, with a link to the live board. - [Show your Taskhold task in Raycast](/integrations/raycast): A Raycast inline Script Command that shows the running Taskhold task and its progress bar in Raycast's root search, refreshed every 10 seconds. - [Phone alerts from Taskhold with ntfy](/integrations/ntfy): Get an ntfy push on your phone when a coding agent blocks a Taskhold task or finishes one, with a tap-through to the live board. One bash script. - [Pushover alerts when a coding agent needs you](/integrations/pushover): A bash script that sends a Pushover notification when an agent blocks or finishes a Taskhold task, high priority for questions, linked to the live board. - [Discord alerts when a coding agent is blocked](/integrations/discord): Post to a Discord channel through a webhook when a coding agent blocks a Taskhold task or finishes one, with the question or summary and a board link. - [Telegram messages when a coding agent needs you](/integrations/telegram): A Telegram bot message when a coding agent blocks a Taskhold task or finishes one: a bash script on the events stream and the Bot API's sendMessage. - [Mac notifications when a coding agent is blocked](/integrations/macos-notifications): Native macOS notifications when a coding agent blocks or finishes a Taskhold task, even with the board closed, using terminal-notifier and one bash script. - [Microsoft Teams alerts for blocked coding agents](/integrations/microsoft-teams): Post an Adaptive Card to a Teams channel through a Workflows webhook when a coding agent blocks or finishes a Taskhold task. One bash script. - [File a Taskhold task when GitHub Actions fails](/integrations/github-actions): One GitHub Actions step that files a high-priority Taskhold task with the logs link when a workflow fails, so your coding agent picks up the fix. - [File a Taskhold task when a GitLab pipeline fails](/integrations/gitlab-ci): A GitLab CI job that runs only when the pipeline fails and files a high-priority Taskhold task with the pipeline link for your coding agent to pick up. - [Use Taskhold with Claude Squad](/integrations/claude-squad): Run several Claude Code or Codex sessions with Claude Squad and see what each is doing on one Taskhold board, labelled by branch, blocked ones first. - [Use Taskhold with Conductor](/integrations/conductor): Run Claude Code and Codex workspaces in Conductor and track every one on a Taskhold live board, labelled by workspace, with questions that need you first. - [Use Taskhold with ccmanager's status hooks](/integrations/ccmanager): Run agent sessions in ccmanager and use its status hooks to post "waiting for input" on the Taskhold task, so the live board shows which session needs you. - [Use Taskhold with Agent Deck](/integrations/agent-deck): Add Taskhold to Agent Deck's MCP catalog once, attach it to any session with one key, and follow every agent's plan and progress on a live board. - [Use Taskhold alongside container-use](/integrations/container-use): Agents that work in container-use environments can still plan and report to Taskhold: both are MCP servers on the same agent. The one permission to add. - [Cursor hook: show on the board when the agent stops](/integrations/cursor-hooks): A Cursor stop hook that marks the Taskhold task in progress when Cursor's agent finishes, aborts or errors, so the live board shows it stopped. - [Codex notify: show each turn's result on the board](/integrations/codex-hooks): Use Codex's notify setting to copy the agent's last message onto the Taskhold task in progress after each turn, so the live board shows what it just did. - [Gemini CLI hook: show each reply on the board](/integrations/gemini-cli-hooks): An AfterAgent hook for Gemini CLI that copies each reply onto the Taskhold task in progress, so the live board shows what the agent just did. - [Windsurf Cascade hook: show each reply on the board](/integrations/windsurf-hooks): A post_cascade_response hook for Windsurf (Devin Desktop) that copies Cascade's reply onto the Taskhold task in progress, so the live board stays current. ## Docs Add .md to any docs URL for markdown ([/docs.md](/docs.md) is the index). Start here: - [What Taskhold is: a task list your agents report into](/docs/overview): Taskhold in one page: a hosted task list you share with your coding agents, live progress per step, the MCP and REST surfaces, price, data handling. - [Quickstart: watch your agent's first plan in 5 minutes](/docs/quickstart): Connect Claude Code, Cursor or any MCP client to Taskhold and watch your agent plan steps and report progress on the live board, in about five minutes. - [Install the Taskhold CLI: terminal board and status line](/install): Most agents need nothing installed. One command adds the Taskhold terminal board and the Claude Code status line. How updates, pins and uninstall work. Live progress: - [How live progress works: steps, bars, ETA and liveness](/docs/live-progress): How Taskhold turns agent reports into a live board: steps as subtasks, progress rollup, the live and quiet markers, the time estimate, blocked questions. - [How agents should write progress notes and questions](/docs/agent-messages): Write progress messages and blocking questions a person can act on from the live board: headline first, one request, options with a recommendation. Recipes: - [Show the current task in the Claude Code status line](/docs/claude-code-status-line): A 24-line script that puts the Taskhold task in progress, its progress bar and the running step in the Claude Code status line. Uses curl and jq. - [Claude Code hook: start every session with your replies](/docs/claude-code-hooks): A SessionStart hook that tells Claude Code which Taskhold task is in progress and what you changed since, so a new session picks up your replies first. - [Report CI and deploy progress to Taskhold with curl](/docs/ci-progress): Have a GitHub Actions job open a Taskhold task, plan its stages as steps, tick them off and block with the logs link on failure. Plain curl and jq. - [Slack alerts for blocked tasks from the events stream](/docs/slack-alerts): A 53-line Bun script that follows the Taskhold event stream and posts to a Slack channel when an agent blocks with a question or finishes a task. - [Review what each coding agent did this week](/docs/agent-review): A Bun script that reads the Taskhold events API and prints a weekly scorecard per agent, with dated evidence and the CLAUDE.md lines to add. Reference: - [Taskhold MCP tools reference (taskhold_*)](/docs/mcp-tools): Every Taskhold MCP tool: what it does, its arguments, what it returns and when an agent should call it. Remote server at taskhold.com/api/mcp. - [Taskhold REST API: tasks, steps, progress, curl examples](/docs/rest-api): Taskhold REST API reference: authentication, tasks, steps, progress, notes, events and the live snapshot, with curl examples and real responses. - [Taskhold events API and Server-Sent Events stream](/docs/events): Follow every Taskhold change as it happens: the cursor feed at /api/events, the SSE stream at /api/events/stream, event types and a curl watcher. - [Troubleshooting Taskhold: errors, missing tools, no progress](/docs/troubleshooting): Fixes for the common Taskhold problems: no taskhold tools in the agent, 401 and 402 responses, a bar that won't move, stale cards and silent streams. - [Glossary: blocked, steps, progress reports, setup URLs](/docs/glossary): What Taskhold means by blocked, step, progress report, agent label, setup URL, API key and live board, so agents, docs and people mean the same thing. - [Security and buying questions](/docs/security): Where Taskhold stores data, what leaves your machine, subprocessors, auth, deletion, export, pricing and what isn't built: answers for a security review. ## Free tools - [Free tools hub](/tools): the three browser tools below on one page, grouped by job. No sign-up. - [Remote MCP server config generator](/tools/mcp-config): turns one remote MCP server URL and header into the config for Claude Code, Cursor, Codex, Windsurf, VS Code, Gemini CLI, Cline and OpenCode. Runs in the browser. - [Claude Code status line generator](/tools/claude-code-statusline): pick segments, copy a tested bash+jq script and the statusLine setting. Runs in the browser. - [Coding agent visibility check](/tools/agent-visibility-check): eight yes/no questions on how well you can see what your coding agents are doing, with the fix for each gap. No sign-up.