list_tasks
Retrieve tasks from ClickUp lists, folders, or spaces with filtering options for status, assignee, and closed tasks.
Instructions
List tasks in a list, folder, or space
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| list_id | No | List ID | |
| folder_id | No | Folder ID | |
| space_id | No | Space ID | |
| statuses | No | Filter by statuses | |
| assignees | No | Filter by assignee IDs | |
| include_closed | No | Include closed tasks |
Implementation Reference
- src/clickup_mcp/tools.py:730-762 (handler)The core handler function for theasync def list_tasks( self, list_id: Optional[str] = None, folder_id: Optional[str] = None, space_id: Optional[str] = None, statuses: Optional[List[str]] = None, assignees: Optional[List[int]] = None, include_closed: bool = False, **kwargs: Any, ) -> Dict[str, Any]: """List tasks with filters.""" tasks = await self.client.get_tasks( list_id=list_id, folder_id=folder_id, space_id=space_id, statuses=statuses, assignees=assignees, include_closed=include_closed, ) return { "tasks": [ { "id": task.id, "name": task.name, "status": task.status.status, "assignees": [u.username for u in task.assignees], "url": format_task_url(task.id), } for task in tasks ], "count": len(tasks), }
- src/clickup_mcp/tools.py:151-176 (schema)Input schema and description for the list_tasks tool used in MCP tool definitions.Tool( name="list_tasks", description="List tasks in a list, folder, or space", inputSchema={ "type": "object", "properties": { "list_id": {"type": "string", "description": "List ID"}, "folder_id": {"type": "string", "description": "Folder ID"}, "space_id": {"type": "string", "description": "Space ID"}, "statuses": { "type": "array", "items": {"type": "string"}, "description": "Filter by statuses", }, "assignees": { "type": "array", "items": {"type": "integer"}, "description": "Filter by assignee IDs", }, "include_closed": { "type": "boolean", "description": "Include closed tasks", }, }, }, ),
- src/clickup_mcp/tools.py:23-57 (registration)Internal registration of all tools including list_tasks in the ClickUpTools class _tools dictionary, used for dispatching tool calls.self._tools: Dict[str, Callable] = { "create_task": self.create_task, "get_task": self.get_task, "update_task": self.update_task, "delete_task": self.delete_task, "list_tasks": self.list_tasks, "search_tasks": self.search_tasks, "get_subtasks": self.get_subtasks, "get_task_comments": self.get_task_comments, "create_task_comment": self.create_task_comment, "get_task_status": self.get_task_status, "update_task_status": self.update_task_status, "get_assignees": self.get_assignees, "assign_task": self.assign_task, "list_spaces": self.list_spaces, "list_folders": self.list_folders, "list_lists": self.list_lists, "find_list_by_name": self.find_list_by_name, # Bulk operations "bulk_update_tasks": self.bulk_update_tasks, "bulk_move_tasks": self.bulk_move_tasks, # Time tracking "get_time_tracked": self.get_time_tracked, "log_time": self.log_time, # Templates "create_task_from_template": self.create_task_from_template, "create_task_chain": self.create_task_chain, # Analytics "get_team_workload": self.get_team_workload, "get_task_analytics": self.get_task_analytics, # User management "list_users": self.list_users, "get_current_user": self.get_current_user, "find_user_by_name": self.find_user_by_name, }
- src/clickup_mcp/server.py:41-45 (registration)MCP server handler for listing tools, which returns the tool definitions including list_tasks.@self.server.list_tools() async def list_tools() -> List[Tool]: """List all available tools.""" return self.tools.get_tool_definitions()