You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
description: "Create and manage release plan work items for Azure SDK releases across languages. **UTILITY SKILL**. USE FOR: \"create release plan\", \"update release plan\", \"link SDK PR to plan\", \"namespace approval\", \"check release plan status\". DO NOT USE FOR: SDK code generation, pipeline troubleshooting, API review feedback. INVOKES: azure-sdk-mcp:azsdk_create_release_plan, azure-sdk-mcp:azsdk_get_release_plan, azure-sdk-mcp:azsdk_link_sdk_pull_request_to_release_plan."
8
-
compatibility: "azure-sdk-mcp server, API spec PR, or TypeSpec project path"
7
+
description: 'Create, get, update, abandon, and link SDK PRs to release plan work items for Azure SDK releases. **UTILITY SKILL**. USE FOR: "create release plan", "get release plan", "update release plan", "update API spec in release plan", "update SDK details in release plan", "abandon release plan", "link SDK PR to plan", "namespace approval", "check release plan status". DO NOT USE FOR: SDK code generation, pipeline troubleshooting, API review feedback. INVOKES: azure-sdk-mcp:azsdk_create_release_plan, azure-sdk-mcp:azsdk_get_release_plan, azure-sdk-mcp:azsdk_get_release_plan_for_spec_pr, azure-sdk-mcp:azsdk_update_release_plan, azure-sdk-mcp:azsdk_update_api_spec_pull_request_in_release_plan, azure-sdk-mcp:azsdk_update_sdk_details_in_release_plan, azure-sdk-mcp:azsdk_abandon_release_plan, azure-sdk-mcp:azsdk_link_sdk_pull_request_to_release_plan.'
8
+
compatibility:
9
+
requires: "azure-sdk-mcp server, API spec PR in Azure/azure-rest-api-specs"
9
10
---
10
11
11
12
# Prepare Release Plan
12
13
13
-
> Do not display Azure DevOps work item URLs. Only provide Release Plan Link and ID.
14
+
> **CRITICAL**: Do not display Azure DevOps work item URLs. Only provide Release Plan Link and Release Plan ID to the user.
14
15
15
16
## MCP Tools
16
17
17
-
| Tool | Purpose |
18
-
|------|---------|
19
-
|`azure-sdk-mcp:azsdk_create_release_plan`| Create plan |
20
-
|`azure-sdk-mcp:azsdk_get_release_plan`| Get details |
21
-
|`azure-sdk-mcp:azsdk_get_release_plan_for_spec_pr`| Find by spec PR |
22
-
|`azure-sdk-mcp:azsdk_update_release_plan`| Update plan fields |
23
-
|`azure-sdk-mcp:azsdk_update_sdk_details_in_release_plan`| Update SDK info |
24
-
|`azure-sdk-mcp:azsdk_link_sdk_pull_request_to_release_plan`| Link SDK PR |
25
-
|`azure-sdk-mcp:azsdk_link_namespace_approval_issue`| Link namespace |
1.**Prerequisites** — Check for API spec PR link or a TypeSpec project path; prompt if unavailable.
31
-
2.**Check Existing** — Query by release plan number or spec PR link (do not query by work item ID).
32
-
3.**Gather Info** — Collect Service Tree IDs, timeline, and API release type. See [details](references/release-plan-details.md).
33
-
4.**API Release Type** — Ask user for API release type: "Private Preview", "Public Preview", or "GA". This is required.
34
-
5.**Validate Spec PR** — If spec PR is provided, validate it matches the API release type:
35
-
- Private Preview → must be in `azure-rest-api-specs-pr`
36
-
- Public Preview / GA → must be in `azure-rest-api-specs`
37
-
6.**Create** — Run `azure-sdk-mcp:azsdk_create_release_plan` with `apiReleaseType` parameter. SDK release type defaults automatically (beta for preview, stable for GA).
38
-
7.**Namespace** — For mgmt plane first releases, link approval issue.
|`azure-sdk-mcp:azsdk_create_release_plan`| Create a new release plan |
21
+
|`azure-sdk-mcp:azsdk_get_release_plan`| Get release plan details by ID |
22
+
|`azure-sdk-mcp:azsdk_get_release_plan_for_spec_pr`| Find release plan by spec PR URL |
23
+
|`azure-sdk-mcp:azsdk_update_release_plan`| Update release plan metadata |
24
+
|`azure-sdk-mcp:azsdk_update_api_spec_pull_request_in_release_plan`| Update API spec PR URL in plan |
25
+
|`azure-sdk-mcp:azsdk_update_sdk_details_in_release_plan`| Update SDK/package details in plan |
26
+
|`azure-sdk-mcp:azsdk_abandon_release_plan`| Abandon a release plan |
27
+
|`azure-sdk-mcp:azsdk_link_sdk_pull_request_to_release_plan`| Link SDK PR to release plan |
28
+
|`azure-sdk-mcp:azsdk_link_namespace_approval_issue`| Link namespace approval issue |
29
+
30
+
---
31
+
32
+
## Use Cases
33
+
34
+
### 1. Create Release Plan
35
+
36
+
**When**: User wants to create a release plan for a TypeSpec project.
37
+
38
+
**Steps**:
39
+
40
+
1.**Get TypeSpec Project Path** — Ask the user for the relative TypeSpec project path (directory containing `tspconfig.yaml`, e.g. `specification/contosowidgetmanager/Contoso.WidgetManager`). Always use the relative path from the repo root, not an absolute path.
41
+
2.**Check Existing** — Run `azure-sdk-mcp:azsdk_get_release_plan` with the relative `typeSpecProjectPath` to check if a release plan already exists.
42
+
- If a release plan exists with the **same API release type** the user requested: inform the user that a release plan already exists, show the Release Plan ID, status, and API release type. Suggest the user use the existing release plan. Do NOT create a new one.
43
+
- If a release plan exists but for a **different API release type**: inform the user about the existing plan and its API release type, then proceed to create a new release plan using `forceCreateReleasePlan: true` for the user's requested API release type. Do NOT attempt to update the existing release plan's API release type.
44
+
- If no release plan exists, proceed to step 3.
45
+
3.**Gather Info** — Collect required details from the user. See [details](references/release-plan-details.md):
46
+
- Target release month/year (format: "Month YYYY", e.g. "June 2026"). Do NOT use formats like "2026-06" or "06/2026" — these are invalid.
47
+
- API release type: Value must be one of the following: "Private Preview", "Public Preview", or "GA"
48
+
- SDK release type: Value must be "beta" or "stable" — always ask the user explicitly
49
+
- Spec PR URL (optional)
50
+
- Service Tree ID (GUID) — optional if previously created
51
+
- Product Tree ID (GUID) — optional if previously created
52
+
4.**Create** — Run `azure-sdk-mcp:azsdk_create_release_plan` with the collected parameters including `sdkReleaseType`. Use `forceCreateReleasePlan: true` only if an existing release plan was found for a different API release type.
53
+
5.**Namespace** — For first management plane releases, link namespace approval issue using `azure-sdk-mcp:azsdk_link_namespace_approval_issue`.
54
+
55
+
> **IMPORTANT**: Do NOT default the API release type value as the SDK release type. These are separate fields — always ask the user explicitly for the SDK release type.
56
+
>
57
+
> **IMPORTANT**: Do NOT update an existing release plan to change its API release type. If a release plan exists for a different API release type, force-create a new one instead.
2.**Query** — Run `azure-sdk-mcp:azsdk_get_release_plan` with the provided identifier (always use relative path for `typeSpecProjectPath`), OR run `azure-sdk-mcp:azsdk_get_release_plan_for_spec_pr` if only a spec PR URL is available.
74
+
3.**Display** — Show the release plan ID, status, linked PRs, and SDK details.
### 3. Update Release Plan / Update API Spec in Release Plan
81
+
82
+
**When**: User needs to update release plan metadata (spec PR URL, TypeSpec project path, SDK release type, service/product IDs) or update the API spec PR link.
83
+
84
+
**Steps**:
85
+
86
+
1.**Identify Plan** — Get the work item ID or TypeSpec project path from the user.
87
+
2.**Update Metadata** — Run `azure-sdk-mcp:azsdk_update_release_plan` with:
88
+
-`typeSpecProjectPath` (required)
89
+
-`workItemId` (optional — resolved from TypeSpec path or spec PR if not provided)
90
+
-`specPullRequestUrl` (optional)
91
+
-`sdkReleaseType` (required — do NOT default this from API release type; always ask user explicitly)
92
+
-`serviceTreeId` (optional)
93
+
-`productTreeId` (optional)
94
+
3.**Update API Spec PR** — If only the spec PR URL needs updating, run `azure-sdk-mcp:azsdk_update_api_spec_pull_request_in_release_plan` with:
- Requires `azure-sdk-mcp` server; no CLI fallback.
52
-
- If creation fails, verify Service Tree IDs and the provided spec PR URL or TypeSpec project path.
53
-
- If spec PR validation fails, check that the spec PR repo matches the API release type (private repo for Private Preview, public repo for Public Preview/GA).
164
+
- Requires `azure-sdk-mcp` server; no CLI fallback — prompt user to configure MCP if unavailable.
165
+
- If creation fails, verify spec PR URL and Service Tree IDs.
166
+
- If update fails, ensure the work item ID or release plan ID is correct and the plan is not already abandoned.
167
+
- If linking fails, verify the SDK PR URL is valid and the language matches a supported value.
|`azure-sdk-mcp:azsdk_release_sdk`| Check release readiness and/or trigger the release pipeline |
18
18
19
19
## Steps
20
20
21
21
1.**Collect Info** — Get `packageName` and `language` from the user. Optionally get `branch` (defaults to main).
22
-
2.**Check Readiness** — Run `azure-sdk-mcp:azsdk_release_sdk` with `checkReady: true` to verify API review approval, changelog, package name approval, and release date.
23
-
- If APIView approval is pending display the link or guidance to find the link if not provided.
24
-
3.**Review Results** — If not ready, display failing checks and guide user to resolve.
25
-
4.**Trigger Release** — Once ready, run `azure-sdk-mcp:azsdk_release_sdk` with `checkReady: false`. Show pipeline link and inform user they must approve the release stage.
22
+
2.**Determine Intent** — If the user explicitly asks to "check readiness" or "check if ready", run `azure-sdk-mcp:azsdk_release_sdk` with `checkReady: true`. Otherwise, proceed to trigger the release directly.
23
+
3.**Trigger Release** — Run `azure-sdk-mcp:azsdk_release_sdk` with `checkReady: false` (the default). Show pipeline link and inform user they must approve the release stage.
24
+
4.**Review Results** — If the release fails due to readiness issues, display failing checks and guide user to resolve.
0 commit comments