work-iterations
Installation
SKILL.md
Skill Instructions
This skill always works in the context of a project. A team is optional and only required when assigning iterations or listing iterations for a specific team.
Project selection
- If the user provides a project name in their request (for example, "for Contoso"), use that project directly and do not call
core_list_projects. - If the user does not provide a project name, first ask the user once to provide the project name.
- If the project name is still not provided after asking once, call
core_list_projectsto return a list of projects the user can choose from.
Team selection
- If the team is not provided, only perform actions that require project-only context (list or create project-level iterations). Do not attempt to assign iterations.
- If the user asks to assign iterations and no team is provided, ask once for the team name.
- If the team name is still not provided after asking once, call
core_list_project_teamsfor the selected project so the user can pick a team.
Tools
Use Azure DevOps MCP Server tools for all interactions with Azure DevOps.
core_list_projects: Get a list of projects in the organization.core_list_project_teams: Get a list of teams for a project.work_create_iterations: Create iterations in the project.work_assign_iterations: Assign iterations to a team.work_list_team_iterations: List iterations currently assigned to a team.work_list_iterations: List iterations for the project.
Rules
1. List iterations for a project
- When the user asks only to list iterations for a project, call
work_list_iterationsfor that project. - Do not call
work_create_iterationsorwork_assign_iterationsin this case. - Show the results in a list, including iteration name and dates.
- If there are no iterations, explicitly state that there are no iterations for this project.
Example
- "list iterations for project Contoso"
2. List iterations for a project and team
- When the user asks to list iterations for a specific project and team, call
work_list_team_iterationsfor the given project and team. - Do not call
work_create_iterationsorwork_assign_iterationsin this case. - Show the results in a list, including iteration name and dates.
- If there are no iterations, explicitly state that there are no iterations for this team.
Example
- "list iterations for project Contoso and team Contoso"
3. Create iterations for a project
- When the user asks to create iterations for a project, use the tool
work_create_iterations. - First, call
work_list_iterationsto get the full list of current iterations and determine the existing date cadence (start and finish dates, and iteration length). - Using that cadence, create new iterations and pass them to
work_create_iterations. - After creation, show the new iterations in a list, including iteration name and dates.
- If no iterations are created, explicitly state that no iterations were created for this project.
Example 1
-
"create iterations after the last available iteration, using the same cadence, through 2026"
- Call
work_list_iterationsto get the full list of current iterations and determine the existing date cadence. - Using that date cadence, create new iterations and pass them to
work_create_iterations.
- Call
Example 2
-
"create iterations after the last available iteration, using the same cadence, through 2026. Then assign all of those new iterations to team 'Contoso Team'"
- Call
work_list_iterationsto get the full list of current iterations and determine the existing date cadence. - Using that date cadence, create new iterations and pass them to
work_create_iterations. - Take the iterations created and assign them to the team "Contoso Team" using
work_assign_iterations. - Show the created iterations (and, if helpful, note that they are assigned to the specified team).
- Call
4. Assign iterations to a team
- When the user asks to assign iterations to a team, use
work_assign_iterations. - Make sure the project and team are selected using the rules above.
- Show the iterations that were assigned in a list, including iteration name and dates.
- If no iterations are assigned, explicitly state that there are no iterations assigned for this team.
Example 1
-
"assign iterations 'Iteration 1', 'Iteration 2', and 'Iteration 3' to team 'Contoso Team'"
- Call
work_assign_iterationswith the list of iterations and team name to assign those iterations to the team.
- Call
Example 2
-
"assign all iterations in 2025 and 2026 to team 'Contoso Team'"
- Call
work_list_iterationsto get the full list of iterations. - From the list, find the iterations that fall within 2025 and 2026.
- Take the iterations that fall within 2025 and 2026 and assign them to the team "Contoso Team" using the tool
work_assign_iterations. - Show the assigned iterations in a list.
- Call