manus_website_list_checkpoints
List all checkpoints for a website (newest first) and identify the live checkpoint by matching published_version_id with data[].version_id.
Instructions
List all checkpoints of a website (newest first). Match published_version_id against data[].version_id to find the live checkpoint.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| task_id | No | ||
| website_id | No |
Implementation Reference
- manus_mcp/tools/website.py:35-53 (handler)The handler function for manus_website_list_checkpoints, decorated with @manus_tool. It calls the Manus API endpoint /v2/website.listCheckpoints via GET, passing the query params and returning WebsiteListCheckpointsResponse.
@manus_tool( name="manus_website_list_checkpoints", description=( "List all checkpoints of a website (newest first). Match published_version_id against " "data[].version_id to find the live checkpoint." ), input_schema=WebsiteListCheckpointsQuery, output_schema=WebsiteListCheckpointsResponse, ) async def website_list_checkpoints( q: WebsiteListCheckpointsQuery, ctx: ToolCtx ) -> WebsiteListCheckpointsResponse: return await ctx.client.call( "GET", "/v2/website.listCheckpoints", params=q.model_dump(exclude_none=True), response_model=WebsiteListCheckpointsResponse, rate_limit_key="website.listCheckpoints", ) - manus_mcp/schemas/website.py:50-51 (schema)Input schema: extends _WebsiteTarget (requires exactly one of task_id or website_id). Validates the query parameters for listing website checkpoints.
class WebsiteListCheckpointsQuery(_WebsiteTarget): pass - manus_mcp/schemas/website.py:54-57 (schema)Output schema: contains website_id, a list of Checkpoint objects, and optional published_version_id to identify the live checkpoint.
class WebsiteListCheckpointsResponse(ResponseEnvelope): website_id: str data: list[Checkpoint] = [] published_version_id: str | None = None - manus_mcp/schemas/website.py:42-47 (schema)Schema for individual checkpoint records returned in the response data array.
class Checkpoint(ManusModel): model_config = ConfigDict(extra="allow") version_id: str message: str | None = None status: CheckpointStatus | None = None created_at: UnixSeconds | None = None - manus_mcp/tools/registry.py:54-69 (registration)The @manus_tool decorator registers the handler in _REGISTRY when the module is imported (via load_all_tool_modules).
def wrap( handler: Callable[[TIn, ToolCtx], Awaitable[TOut]], ) -> Callable[[TIn, ToolCtx], Awaitable[TOut]]: if name in _REGISTRY: raise RuntimeError(f"Duplicate tool name: {name}") _REGISTRY[name] = ToolDef( name=name, description=description, input_schema=input_schema, output_schema=output_schema, handler=handler, rate_limit_key=rate_limit_key, ) return handler return wrap