Create Project Confirm
create_project_confirmParameters
projectNamestringsectionsarraywidget_idstringworkspacestringTurn chats into actions
Asana provides 19 tools that can be used to interact with its services.
create_project_confirmprojectNamestringsectionsarraywidget_idstringworkspacestringcreate_project_confirm_populateprojectstringsectionsarraywidget_idstringworkspacestringcreate_project_previewGenerate a visual preview of a project structure before creation. Use anytime the user asks to create a project or draft a project. Use this when you want the user to review and confirm the project structure first.
project_namestringName of the project to create.
sectionsarrayUsers will give you a request to create a project with a certain purpose. Use your own knowledge of project management and the principles and guidance below to design the best project structure possible. JSON array of section objects. Each section must have: - sectionName (string): Name of the section. - tasks (array): Array of task objects. Each task object must have: - taskName (string): Name of the task. - description (string | null): Description of the task, or null if the task has no description. Defaults to null if not provided. - isComplete (boolean): Whether the task is completed. Defaults to false if not provided. - startDate (string | null): Start date of the task in YYYY-MM-DD format, or null if the task has no start date. If the start date is provided, the due date must also be provided. If both the start date and due date are provided, the due date must be greater than or equal to the start date. Defaults to null if not provided. - dueDate (string | null): Due date of the task in YYYY-MM-DD format, or null if the task has no due date. If both the start date and due date are provided, the due date must be greater than or equal to the start date. Defaults to null if not provided. - assignee (string | null): Assignee of the task, or null if the task is unassigned. This can be "me", an email, or a user GID chosen among those found using asana_get_workspace_users. Defaults to null if not provided. - priority ("low" | "medium" | "high" | null): Priority level of the task. Must be one of 'low', 'medium', 'high', or null. Defaults to null if not provided. This is general guidance for creating good project structures. Follow these principles and guidance as closely as possible unless the user specifically asks you to do otherwise: Create the project structure in the same language as the user's request. - Project should have >=4 sections. - Limit the number of tasks to no more than 5 tasks per section. - Limit sections up to 6. - Every section should have at least one task. - If the user does not specifically give you tasks they want to include in their project, make tasks for the project that are aligned with the project's purpose. - Only mark tasks as complete (isComplete: true) if the user specifically mentioned they already completed that work. Otherwise, all tasks should be incomplete (isComplete: false). - When adding dates to tasks, always provide BOTH startDate and dueDate together as a date range. Never provide only dueDate without startDate. Add date ranges to several tasks so they will be useful for timeline and calendar views when the project is created. - All dates must be in the future (today or later), never in the past. - Create logical, sequential timelines that make sense for the project's purpose. Tasks should progress in a meaningful order (e.g., beginner tasks before advanced tasks, setup tasks before execution tasks). - Dates should form a coherent timeline, not be randomly scattered. - Prefer including the 'priority' custom field for every task (one of 'low', 'medium', or 'high'), unless the user has specifically instructed you not to. This helps users organize their work by importance. Example: [ { "sectionName": "Backlog", "tasks": [ { "taskName": "Design homepage", "description": "Create a modern and responsive homepage design", "isComplete": false, "startDate": "2025-01-10", "dueDate": "2025-01-15", "assignee": "123456789", "priority": "high" }, { "taskName": "Write documentation", "description": null, "isComplete": false, "startDate": "2025-01-15", "dueDate": "2025-01-20", "assignee": "987654321", "priority": "medium" } ] }, { "sectionName": "In Progress", "tasks": [ { "taskName": "Implement API endpoints", "description": "Build RESTful API endpoints for user management", "isComplete": false, "startDate": "2025-01-10", "dueDate": "2025-01-25", "assignee": "123456789", "priority": "high" }, { "taskName": "Code review", "description": null, "isComplete": false, "startDate": "2025-01-25", "dueDate": "2025-01-30", "assignee": null, "priority": "medium" }, { "taskName": "Deploy to staging", "description": "Deploy the latest version to staging environment", "isComplete": false, "startDate": "2025-01-05", "dueDate": "2025-01-08", "assignee": "987654321", "priority": "high" } ] } ]
create_task_confirmassigneeobjectdescriptionstring/nulldueDatestring/nullisCompletebooleanstartDatestring/nulltaskNamestringwidget_idstringworkspacestringcreate_task_previewGenerate a visual preview of a task before creation. Use anytime the user asks to create a task or draft a task. Use this when you want the user to review and confirm the task details first.
taskNamestringName of the task.
assigneestring/nullAssignee of the task, or null if the task is unassigned. This can be "me", an email, or a user GID chosen among those found using asana_get_workspace_users. Defaults to null if not provided.
descriptionstring/nullDescription of the task, or null if the task has no description. Defaults to null if not provided.
dueDatestringDue date of the task in YYYY-MM-DD format, or null if the task has no due date. If both the start date and due date are provided, the due date must be greater than or equal to the start date. Defaults to null if not provided.
isCompletebooleanWhether the task is completed. Defaults to false if not provided.
startDatestringStart date of the task in YYYY-MM-DD format, or null if the task has no start date. If the start date is provided, the due date must also be provided. If both the start date and due date are provided, the due date must be greater than or equal to the start date. Defaults to null if not provided.
get_items_for_portfolioList projects, goals, and other items in a portfolio. Returns item names, IDs, and types. Use for portfolio content exploration and management. Supports pagination for portfolios with many items.
portfolio_gidstringGlobally unique identifier for the portfolio
limitnumberResults per page (1-100)
offsetstringPagination offset token
opt_fieldsstringComma-separated list of optional fields to include in the response
get_portfolioGet detailed portfolio data by ID including name, owner, and projects. Use after finding portfolio ID via typeahead. Returns complete portfolio configuration. Essential for understanding portfolio context and content.
portfolio_gidstringGlobally unique identifier for the portfolio
opt_fieldsstringComma-separated list of optional fields to include in the response
get_portfoliosList portfolios filtered by workspace and owner. REQUIRES workspace parameter. Owner defaults to "me" (current user) if not specified. Returns portfolio names and IDs. Use for portfolio discovery and management. Supports pagination for workspaces with many portfolios.
limitnumberResults per page (1-100)
offsetstringPagination offset token
opt_fieldsstringComma-separated list of optional fields to include in the response
get_projectGet detailed project data including name, description, owner, members, custom fields, and settings. Use after finding project ID via typeahead. Returns complete project configuration needed for task operations. Specify opt_fields for custom fields data.
project_idstringGlobally unique identifier for the project.
opt_fieldsstringComma-separated list of optional fields to include in the response.
get_projectsList projects filtered by workspace. Supports team, archived filters. Returns project names and IDs. Use for filtered project views and bulk operations.
archivedbooleanInclude archived projects.
FalselimitnumberNumber of projects to return per page (1-100).
offsetstringPagination offset token.
opt_fieldsstringComma-separated list of optional fields to include in the response.
teamstringFilter projects on team id
get_status_overviewGet status overview and progress reports for initiatives/projects. Use this tool as a standalone when users ask for: status updates, status reports, project status, work overview, progress overview, initiative status, identified blockers, or any status-related queries. This tool searches projects and portfolios, extracts tasks and status updates, and returns aggregated project details, tasks, and status information. IMPORTANT: Call this tool directly with keywords - do NOT call other search tools first. This tool handles all searching and aggregation internally.
keywordsstringKeywords to search for projects. Can be a single keyword (e.g., 'asana') or multiple comma-separated keywords (e.g., 'asana, chatgpt, integration'). The tool searches each keyword separately and combines results from all matching projects (OR logic - matches any keyword).
opt_fieldsstringComma-separated list of optional fields to include in task data (e.g., 'name,notes,assignee,due_on,completed').
get_taskGet full task details by ID. Returns name, description, assignee, due dates, custom fields, projects, dependencies. Essential before updating tasks. Use opt_fields for custom field values. Required for understanding task context.
task_idstringGlobally unique identifier for the task.
opt_fieldsstringComma-separated list of optional fields to include in the response.
get_tasksList tasks filtered by context (workspace/project/tag/section/user list). One context required. Supports assignee, date filters. Returns task names and IDs. Use for filtered task views and bulk operations.
assigneestringUser identifier to assign the task to. Can be "me", an email, or a user GID.
completed_sincestringFilter for tasks completed since this date in datetime format.
limitnumberNumber of sections to return per page (1-100).
modified_sincestringFilter for tasks modified since this date in datetime format.
offsetstringPagination offset token.
opt_fieldsstringComma-separated list of optional fields to include in the response.
projectstringGlobally unique identifier for the project.
sectionstringGlobally unique identifier for the section.
tagstringThe tag GID to retrieve tasks for
user_task_liststringGlobally unique identifier for the user task list.
get_userGet user details by ID, email, or "me". Returns name, email, workspaces. Use to find user IDs for task assignment. "me" returns authenticated user info. Essential before assigning tasks. When no user_id is provided, defaults to "me" (authenticated user) - equivalent to the former asana_get_user_info tool.
opt_fieldsstringComma-separated list of optional fields to include in the response.
user_idstringA string identifying a user. This can be 'me', an email, or the gid of a user. When omitted, defaults to 'me' (authenticated user).
get_workspace_usersGet all users in workspace. Returns compact users with names and IDs. Results are sorted alphabetically and limited to 2000. Prefer searching more narrowly, like by typeahead or team first instead of this.
offsetstringPagination offset token from a previous request.
opt_fieldsstringComma-separated list of optional fields to include in the response.
log_widget_eventactionstringwidget_idstringwidget_typestringextra_event_attributes_jsonstringsearch_objectsQuick search across Asana objects. ALWAYS use this FIRST before specialized search. Returns most relevant items based on recency and usage. Faster than dedicated search tools for finding specific items. If the user is not specific about which objects to search, use the following priority order: project + task > portfolio > goal + others (user, team, tag, custom_field).
resource_typestringThe type of resource to search for.
custom_fieldgoalprojectproject_templateportfoliotagtaskteamusercountnumberNumber of results to return. Default is 20 if parameter is empty. Minimum 1, maximum 100.
opt_fieldsstringComma-separated list of optional fields to include in the response.
querystringThe search query. Can be empty to get default results for the resource type.
search_tasks_previewSearch for tasks in the workspace and render a preview of the results. Use when the user wants to explore and search for tasks in the workspace, such as when the user asks to 'show me my tasks' or 'show me tasks for the week'. All search filters are optional, but use at least one search filter to limit the results to a specific set of tasks. For example, use the 'completed' filter to show only completed tasks, or the 'start_on_before' filter to show tasks that started before a certain date. Combine filters to find tasks that match multiple criteria, such as 'show me tasks assigned to Sarah that are due after next Monday'. Use the 'text' filter as a freeform search term to find tasks that match the specified text (exactly) in the task name or description.
assignee_anystringFilter to tasks with assignees matching any of the comma-separated list of user identifiers. User identifiers can be "me", an email, or a user GID chosen among those found using asana_get_workspace_users. Leave blank to show tasks assigned to any user.
completedbooleanFilter to either completed or incomplete tasks only. Leave blank to show both completed and incomplete tasks. Prefer filtering to incomplete tasks only, EXCEPT when the user specifically and EXPLICITLY asks for completed tasks only, or both completed and incomplete tasks.
completed_on_afterstringFilter to tasks completed after the specified date. Date must be in YYYY-MM-DD format. Leave blank to show tasks completed after any date, including incomplete tasks.
completed_on_beforestringFilter to tasks completed before the specified date. Date must be in YYYY-MM-DD format. Leave blank to show tasks completed before any date, including incomplete tasks.
created_by_anystringFilter to tasks created by a user matching any of the comma-separated list of user identifiers. User identifiers can be "me", an email, or a user GID chosen among those found using asana_get_workspace_users. Leave blank to show tasks created by any user.
created_on_afterstringFilter to tasks created after the specified date. Date must be in YYYY-MM-DD format. Leave blank to show tasks created after any date.
created_on_beforestringFilter to tasks created before the specified date. Date must be in YYYY-MM-DD format. Leave blank to show tasks created before any date.
due_on_afterstringFilter to tasks due after the specified date. Date must be in YYYY-MM-DD format. Leave blank to show tasks due after any date, including tasks with no due date.
due_on_beforestringFilter to tasks due before the specified date. Date must be in YYYY-MM-DD format. Leave blank to show tasks due before any date, including tasks with no due date.
followers_anystringFilter to tasks followed by any of the comma-separated list of user identifiers. User identifiers can be "me", an email, or a user GID chosen among those found using asana_get_workspace_users. Leave blank to show tasks followed by any user.
projects_anystringFilter to tasks in any of the comma-separated list of project IDs (GIDs). Project IDs can be chosen among those found using asana_get_projects. Leave blank to show tasks in any project.
start_on_afterstringFilter to tasks with a start date after the specified date. Date must be in YYYY-MM-DD format. Leave blank to show tasks with a start date after any date, including tasks with no start date.
start_on_beforestringFilter to tasks with a start date before the specified date. Date must be in YYYY-MM-DD format. Leave blank to show tasks with a start date before any date, including tasks with no start date.
textstringFreeform text to search for in task names and descriptions.
update_taskUpdate existing task properties. Change name, notes, assignee, completion status, due dates, custom fields. Requires task ID. Returns updated task data. Use asana_get_task first to understand current state.
task_idstringGlobally unique identifier for the task to update.
assigneestringUser identifier to assign the task to. Can be "me", an email, or a user GID.
completedbooleanMark the task as completed.
custom_fieldsstringJSON string of custom fields in format: {"field_gid": "value"}.
due_atstringDue date and time in ISO 8601 format.
due_onstringDue date in ISO 8601 format (YYYY-MM-DD).
namestringNew name for the task.
notesstringNew task description and details.