- name
- get-migration-assessment
- description
- Use when retrieving existing SQL Server migration assessment data from Azure Resource Graph with the required instance-level and database-level queries.
- allowed-tools
- Bash(az:*, curl:*) PowerShell Grep View
# Get Migration Assessment
These claims were checked on 2026-09-15 against the bundled `skill-contract.yml`, Azure Resource
Graph query contract, response schema, and assessment output contract.
## When to Use
Use for existing Azure SQL Server assessment, readiness, blocker, SKU, and
cost data. This skill does not trigger a new assessment.
## Workflow
### Step 1: Resolve Inputs
Use [ARM resource identification](references/arm-resource-identification.md) when inputs are missing. Reuse identifiers
already in context. Confirm a defaulted subscription by display name and ID.
### Step 2: Query Instance Data
Build and execute the instance query from `references/arg-queries.md` when retrieving server-level data.
### Step 3: Query Database Data
When retrieving database-level data, build and execute the database query from `references/arg-queries.md` for every
returned instance.
### Step 4: Interpret Results
Use `references/response-schema.md` when interpreting results. For every `NotReady` target, identify the
server or database blocker. If blocker details are unavailable, report a data gap.
If assessment data or `assessmentUploadTime` is missing, state that no migration
assessment data is available and identify likely causes: it has not been enabled
or run, results have not uploaded, the agent is not configured, or permissions are
insufficient.
### Step 5: Render Results
Use [assessment output](references/assessment-output.md) when rendering the combined
readiness and SKU recommendation.
- Multiple instances -> show a summary table, then render each instance.
For multiple instances, include aggregate readiness, cost, and common blocker
insights when the returned data supports them.
## Check it worked
- Both query phases completed for every instance.
- Pagination completed.
- Every `NotReady` result has a cause or data-gap note.
- Missing settings or readiness are stated explicitly.
- **Cleanup verification:** Clear the in-memory ARM token and confirm no temporary request body or
response file remains unless the user asked to retain it.
## Notes
- Use ARG as the assessment read transport.
- Execute queries through the `curl` adapter in
`references/arg-queries.md` whenever requesting ARG data.
- Exclude `master`, `model`, `msdb`, and `tempdb`.
- Show subscription display name with its ID.
- Follow the output template exactly.
## Error Handling
- 401/403 -> verify Azure CLI login and read permission on the target scope.
- 429 -> honor `Retry-After`; report persistent throttling.
- Invalid resource URI -> show the expected Azure SQL Server instance
resource-ID format.
- Empty result -> show the subscription display name/ID and resource group that
were searched.
## References
- Open `references/arg-queries.md` before executing instance or database queries.
- Open `references/response-schema.md` when interpreting ARG results.
- [ARM resource identification](references/arm-resource-identification.md)
- [Assessment output](references/assessment-output.md)
Auf GitHub ansehen