create-task
Create a new task in a Dooray project by specifying required fields like project ID and subject, with options for assignees, tags, priority, and content formatting.
Instructions
Create a new task (업무) in a Dooray project. Required fields: projectId and subject.
RECOMMENDED INTERACTIVE WORKFLOW (ask user questions step by step):
Templates: Call get-project-template-list, ask user if they want to use a template
If yes: Call get-project-template to get full details, use as defaults for subject/body/tags/assignees/cc/priority
Extract tag IDs: template.tags.map(t => t.id)
Transform members: template.users.to/cc to {id, type} format
Title & Body: Ask for task title (subject) and content (body)
If template selected: Elaborate user's content to fit template structure
If no template and no body provided: Ask user for body content before creating task
Body format: {"mimeType": "text/x-markdown", "content": "..."}
Assignees & CC: Ask for "to" (담당자) and "cc" (참조)
Get options: get-my-member-info (current user), get-project-member-list (members), get-project-member-group-list (groups)
Member types: {"id": "...", "type": "member|group|email"}
"member": organizationMemberId, "group": group id, "email": email address
Tags: Call get-tag-list, ask which tags to register
CRITICAL: Check tagGroup.mandatory=true - MUST select from these groups or task creation fails (500 error)
tagGroup.selectOne=true: Select exactly ONE tag from group
tagGroup.selectOne=false: Select one or MORE tags from group
Key Settings:
Priority: Default "none" if not specified
Subtasks: Set parentPostId to create 하위업무
URL extraction: "https://nhnent.dooray.com/task/PROJECT_ID" → extract PROJECT_ID
Examples:
Simple: {"projectId": "123", "subject": "Fix bug", "tagIds": ["tag1"]}
With template: {"projectId": "123", "subject": "[SMS] Issue", "body": {...}, "assignees": [{...}], "tagIds": ["tag1", "tag2"]}
Full: {"projectId": "123", "subject": "Deploy", "assignees": [{"id": "user1", "type": "member"}], "cc": [{"id": "user2", "type": "member"}], "priority": "high", "tagIds": ["tag1"]}
Returns: Created task with ID and number.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| projectId | Yes | Project ID where the task will be created | |
| parentPostId | No | Parent task ID to create this as a subtask (하위업무). Omit to create a regular task. | |
| subject | Yes | Task subject/title (required) | |
| body | No | Task body with formatted content. IMPORTANT: If user has not provided body content and no template is selected, ask the user for task details/description before creating the task. | |
| assignees | No | List of assignees (담당자). To get assignee options: (1) use get-my-member-info for current user, (2) use get-project-member-list for project members, (3) use get-project-member-group-list for member groups. Each assignee object has {id: string, type: "member"|"group"|"email"}. | |
| cc | No | List of CC recipients (참조). To get CC options: (1) use get-my-member-info for current user, (2) use get-project-member-list for project members, (3) use get-project-member-group-list for member groups. Each CC object has {id: string, type: "member"|"group"|"email"}. | |
| dueDate | No | Due date in ISO 8601 format (YYYY-MM-DDTHH:mm:ssZ) | |
| milestoneId | No | Milestone ID to associate with this task | |
| tagIds | No | Array of tag IDs to apply to this task. IMPORTANT: Check for mandatory tag groups using get-tag-list tool. Projects may require specific tags from mandatory tag groups. | |
| priority | No | Task priority level (highest, high, normal, low, lowest, none). Default: "none" if not specified by user. |