Task Checkpoint
PYPI · TASK-CHECKPOINT-MCP
MCP server that checkpoints long agent tasks: roll back to any step, resume in a new session.
Available components
Last scanned (1 day ago)
Scores higher than 82% of PyPI servers
Category Developer Tools
How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score → Why this is hard to score →
Supply Chain Security100
- No malware found by supply-chain analysis.Pass
- No known CVEs affecting this package version or its production dependencies.Pass
- Runs setuptools.build_meta at install time, a recognised build step with no custom scripting around it. View diagnostics → Pass
- No production dependencies, so there is no dependency health to assess. View diagnostics → Pass
Provenance & Transparency45
- Source repository is publicly reachable at the declared URL. View diagnostics → Pass
- Provenance check failed: no build-provenance attestation is published. See how to fix → View diagnostics → Fail
- Clear OSI-approved license (MIT).Pass
- Actively maintained (last published 37 days ago).Pass
- Disclosure check failed: no security disclosure policy was found in the source repository. See how to fix → Fail
Schema Quality & AI Usability68
- AI-judged instruction clarity (good).Pass
- Tool/resource definitions use about 847 tokens (~84/item across 10 items; 10 tools + 0 resources), lean.Pass
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management100
- No destabilizing schema changes in the last 30 days.Pass
Tool Coverage95
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 82% of tool parameters carry a description.Partial
- Structured output schemas are declared (100% of tools); any adoption earns full credit.Pass
Tool Safety100
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- We read all 10 captured tool definition(s), and no name or description among them implies an irreversible operation.Pass
- An AI judge read all 10 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities60
- Spec-recency check failed: implements MCP spec 2025-06-18; the latest is 2026-07-28. See how to fix → Fail
Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 3 Nov 26 0
- Stability: 0.97 → pass security
- 2 Nov 26 0
- Stability: pass → 0.97 functional
- 31 Oct 26 +15
- Malware scan: unverified → pass ▲ security
- 26 Oct 26 −15
- Malware scan: pass → unverified ▼ security
- Stability: 0.97 → pass security
- 25 Oct 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 93 to 97. That category is still filling its 30-day observation window: 28 days of observed history at the previous scan, 29 at this one. The score rises as the window fills, whether or not the server changes.
- 23 Oct 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 87 to 90. That category is still filling its 30-day observation window: 26 days of observed history at the previous scan, 27 at this one. The score rises as the window fills, whether or not the server changes.
- 21 Oct 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 80 to 83. That category is still filling its 30-day observation window: 24 days of observed history at the previous scan, 25 at this one. The score rises as the window fills, whether or not the server changes.
- 19 Oct 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 73 to 77. That category is still filling its 30-day observation window: 22 days of observed history at the previous scan, 23 at this one. The score rises as the window fills, whether or not the server changes.
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 4 Nov 2026 · Analysed pypi/task-checkpoint-mcp@0.1.7
Provenance No attestation
The registry publishes no build provenance for this version, so there is nothing to verify.
| Result | No attestation |
|---|---|
| Ecosystem | pypi |
| Reason | No attestation published |
Background: How many MCP packages publish verified provenance →
Install scripts 1 script
| Hook | Tier | Command |
|---|---|---|
| build_backend | allowlisted | setuptools.build_meta |
Background: Why install scripts are a supply-chain risk →
Dependencies 0 packages
| Packages resolved | 0 |
|---|---|
| Tree resolution | Complete |
Background: SBOMs and build attestations, explained →
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →
tc_capture ~31
立即记录当前文件变化,不等静默期。
| Name | Type | Req | Description |
|---|---|---|---|
| root | string | yes | 工作区根目录 |
| Name | Type | Req | Description |
|---|---|---|---|
| captured | boolean | yes | – |
| drift_id | string|null | yes | – |
| partial | boolean | yes | – |
| reads | integer | yes | – |
| skipped_paths | array | yes | skipped paths (e.g. symlinks pointing outside the workspace) |
| waiting | boolean | yes | – |
No examples provided.
tc_compress ~126
回收存档空间:删掉超过保留期的变更层内容。被回收的变更层不能再 restore,步骤基线不受影响。
| Name | Type | Req | Description |
|---|---|---|---|
| keep_seconds | integer | – | 保留最近多少秒内的变更层,默认 7 天 |
| maximum | integer | – | 每条路径最多保留几份变更层,默认 50 |
| minimum | integer | – | 每条路径至少保留几份较旧的变更层,默认 20 |
| root | string | yes | 工作区根目录 |
| Name | Type | Req | Description |
|---|---|---|---|
| already_gone | integer | yes | 已标为不可回退但 payload 本来就不在的数量 |
| bytes_freed | integer | yes | 释放的字节数 |
| converted | integer | yes | 本次真的删掉的 payload 数 |
| eligible | integer | yes | 通过了保护检查、可以考虑回收的数量 |
| keep_seconds | integer | yes | – |
| maximum | integer | yes | – |
| minimum | integer | yes | – |
No examples provided.
tc_export ~53
导出交接包到一个已存在的目录。敏感文件内容不会导出。
| Name | Type | Req | Description |
|---|---|---|---|
| root | string | yes | 工作区根目录 |
| to | string | yes | 已存在的导出父目录 |
| Name | Type | Req | Description |
|---|---|---|---|
| files | array | – | – |
| filtered | array | yes | – |
| path | string | yes | 交接包目录 |
No examples provided.
tc_import ~93
导入 tc_export 生成的交接包,在另一个目录或机器上接续任务。会校验任务 id 与工作区路径,拒绝重复任务、.. 穿越与符号链接目标;失败时撤销已写入的文件。
| Name | Type | Req | Description |
|---|---|---|---|
| package | string | yes | 交接包目录,即 tc_export 返回的 path |
| root | string | yes | 工作区根目录 |
| Name | Type | Req | Description |
|---|---|---|---|
| task_id | string | yes | 导入后的任务 id |
No examples provided.
tc_init ~120
创建任务。已有活动任务会挂起而不是关闭。
| Name | Type | Req | Description |
|---|---|---|---|
| constraints | string | – | 约束 |
| exclude | array | – | 额外的排除模式,按单个名字段匹配(目录名或路径第一段),如 ["config", "*.local"] |
| goal | string | – | 任务目标 |
| name | string | yes | 任务名 |
| root | string | yes | 工作区根目录 |
| store | string | – | 存档目录;省略时用工作区内 .checkpoints |
| Name | Type | Req | Description |
|---|---|---|---|
| exclude | array | – | – |
| name | string | yes | 任务名 |
| note | string | yes | 存档位置提示 |
| prev_suspended | string|null | – | – |
| store | string | yes | 存档目录 |
| store_is_external | boolean | yes | – |
| task_id | string | yes | 新任务 id |
No examples provided.
tc_restore ~89
按任务层序号或变更层编号恢复。index 与 drift_id 二选一;apply=false 只预览。
| Name | Type | Req | Description |
|---|---|---|---|
| apply | boolean | – | true 才写工作区 |
| drift_id | string | – | 变更层编号,例如 d0001 |
| index | integer | – | 任务层序号 |
| root | string | yes | 工作区根目录 |
| Name | Type | Req | Description |
|---|---|---|---|
| applied | boolean | yes | – |
| plan | object | yes | – |
| recovered | string|null | yes | 本次自动保全的变更层编号 |
| skipped_paths | array | yes | skipped paths (e.g. symlinks pointing outside the workspace) |
No examples provided.
tc_resume ~55
只读返回目标、当前步骤、未落档路径和下一步。
| Name | Type | Req | Description |
|---|---|---|---|
| root | string | yes | 工作区根目录 |
| task_id | string | – | 任务 id。省略时使用当前活动任务 |
| Name | Type | Req | Description |
|---|---|---|---|
| active_task | string | yes | 活动任务 |
| constraints | string | – | 约束 |
| drift_paths | array | yes | – |
| goal | string | yes | 任务目标 |
| handoff | string | yes | 可粘贴给新会话的文本 |
| head | integer | yes | – |
| health | object | yes | – |
| last | object | – | – |
| next | string | – | 下一步 |
| open_questions | array | – | – |
| skipped | array | – | – |
| store | string | – | 存档目录 |
No examples provided.
tc_save ~138
保存一个任务层步骤。close=true 时关闭任务且不再接受保存。
| Name | Type | Req | Description |
|---|---|---|---|
| close | boolean | – | – |
| conclusion | string | – | 这一步的结论 |
| description | string | – | 为什么这么做 |
| next | string | – | 下一步 |
| open_questions | array | – | – |
| paths | array | – | 预留路径范围参数;当前必须为空数组 |
| root | string | yes | 工作区根目录 |
| task_id | string | – | 任务 id。省略时使用当前活动任务 |
| title | string | yes | 步骤标题 |
| verified | array | – | – |
| Name | Type | Req | Description |
|---|---|---|---|
| active_task_changed | boolean | yes | 本次调用是否把活动任务切走了(传了 task_id 且不是当前活动任务时会发生) |
| closed | boolean | yes | – |
| git | object | yes | 这一步的 git 指针。git 是增强:ok 为 false 或 reason 说明没建 ref(不是仓库、TC_GIT=off、ref 重名等)时存档仍然有效 |
| groups | array | yes | – |
| idempotent | boolean | yes | – |
| index | integer | yes | – |
| skipped_paths | array | yes | skipped paths (e.g. symlinks pointing outside the workspace) |
| status | string | yes | open / suspended / closed |
| task_id | string | yes | 任务 id。省略时使用当前活动任务 |
| title | string | yes | 步骤标题 |
No examples provided.
tc_show ~95
列出任务层步骤;include_drift=true 时同时列出变更层。index 可精确查看单步。
| Name | Type | Req | Description |
|---|---|---|---|
| cursor | integer | – | – |
| include_drift | boolean | – | – |
| index | integer | – | – |
| limit | integer | – | – |
| root | string | yes | 工作区根目录 |
| task_id | string | – | 任务 id。省略时使用当前活动任务 |
| Name | Type | Req | Description |
|---|---|---|---|
| drifts | array | – | – |
| head | integer | yes | – |
| next_cursor | integer|null | – | – |
| steps | array | yes | – |
No examples provided.
tc_switch ~47
切换活动任务。closed 任务会被拒绝。
| Name | Type | Req | Description |
|---|---|---|---|
| root | string | yes | 工作区根目录 |
| task_id | string | yes | 要激活的任务 id |
| Name | Type | Req | Description |
|---|---|---|---|
| status | string | yes | open |
| task_id | string | yes | 任务 id。省略时使用当前活动任务 |
No examples provided.
How do I install the Task Checkpoint MCP server?
Task Checkpoint runs locally as a PyPI package, launched with uvx task-checkpoint-mcp. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.
pypi · task-checkpoint-mcp
claude mcp add qddfxp-task-checkpoint-mcp -- uvx task-checkpoint-mcp
What is the Task Checkpoint MCP server?
Task Checkpoint is an MCP server listed in the public MCP registry as io.github.qddfxp/task-checkpoint-mcp. MCP server that checkpoints long agent tasks: roll back to any step, resume in a new session. This page covers its PyPI package (task-checkpoint-mcp).
Is the Task Checkpoint MCP server safe to use?
Task Checkpoint scores 81 out of 100 on VerifyMCP. We found no known CVEs affecting it as of 4 November 2026. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.
What tools does the Task Checkpoint MCP server expose?
Task Checkpoint exposes 10 tools: tc_init, tc_switch, tc_save, tc_capture, tc_show, and 5 more. Their descriptions and schemas cost roughly 847 tokens of context every time the server is loaded.
Is the Task Checkpoint MCP server still maintained?
Task Checkpoint is still listed as active in the MCP registry. We last reached this channel on 4 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.
What licence is the Task Checkpoint MCP server under?
Task Checkpoint declares the MIT licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.