MCP Tools in Drills: Drill Update - #3324
Conversation
|
Azure Pipelines: Successfully started running 1 pipeline(s). There may be pipelines that require an authorized user to comment /azp run to run. |
There was a problem hiding this comment.
Pull request overview
Adds a new Azure Resilience Management “drill update” command/tool to the ResilienceManagement toolset, wiring it through service-layer update logic and documenting it in the Azure MCP Server’s consolidated tooling and command docs.
Changes:
- Introduces
resilience_drill_updatecommand implementation, options model, and RBAC mode enum. - Implements
UpdateDrillAsyncinResilienceManagementServiceand exposes it viaIResilienceManagementService. - Adds unit + live/integration tests and updates server docs/metadata (commands doc, e2e prompts, consolidated tools, changelog, README prompt list).
Reviewed changes
Copilot reviewed 15 out of 15 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| tools/Azure.Mcp.Tools.ResilienceManagement/tests/Azure.Mcp.Tools.ResilienceManagement.Tests/ResilienceManagementCommandTests.cs | Adds a live/integration-style test invoking resilience_drill_update. |
| tools/Azure.Mcp.Tools.ResilienceManagement/tests/Azure.Mcp.Tools.ResilienceManagement.Tests/Drills/DrillUpdateCommandTests.cs | Adds unit tests for the new update command (includes a theory data issue). |
| tools/Azure.Mcp.Tools.ResilienceManagement/tests/Azure.Mcp.Tools.ResilienceManagement.Tests/assets.json | Updates recorded test assets tag. |
| tools/Azure.Mcp.Tools.ResilienceManagement/src/Services/ResilienceManagementService.cs | Implements drill update via ARM patch + LRO completion. |
| tools/Azure.Mcp.Tools.ResilienceManagement/src/Services/IResilienceManagementService.cs | Adds UpdateDrillAsync contract. |
| tools/Azure.Mcp.Tools.ResilienceManagement/src/ResilienceManagementSetup.cs | Registers DrillUpdateCommand in DI and command groups. |
| tools/Azure.Mcp.Tools.ResilienceManagement/src/Options/Drills/DrillUpdateOption.cs | Defines CLI/tool options for updating a drill. |
| tools/Azure.Mcp.Tools.ResilienceManagement/src/Models/DrillRbacSetupMode.cs | Adds RBAC setup mode enum used by options/service. |
| tools/Azure.Mcp.Tools.ResilienceManagement/src/Commands/ResilienceManagementJsonContext.cs | Registers the update command result type for STJ source-gen/AOT. |
| tools/Azure.Mcp.Tools.ResilienceManagement/src/Commands/Drills/DrillUpdateCommand.cs | Adds the MCP command implementation + validation + error mapping. |
| servers/Azure.Mcp.Server/src/Resources/consolidated-tools.json | Maps resilience_drill_update into the consolidated “create/update resilience management resources” tool and updates its description. |
| servers/Azure.Mcp.Server/README.md | Adds an example prompt for updating a resilience drill. |
| servers/Azure.Mcp.Server/docs/e2eTestPrompts.md | Adds e2e prompt entries for resilience_drill_update. |
| servers/Azure.Mcp.Server/docs/azmcp-commands.md | Documents the new azmcp resilience drill update command usage. |
| servers/Azure.Mcp.Server/changelog-entries/resilience-drill-update.yml | Adds changelog entry for the new tool. |
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
| { | ||
| "name": "create_azure_resilience_management_resources", | ||
| "description": "Create or update Azure Resilience Management resources, including usage plans and usage plan enrollments, for Azure service groups.", | ||
| "description": "Create or update Azure Resilience Management resources, including usage plans, usage plan enrollments, and drills, for Azure service groups.", |
| [InlineData("--service-group sg1 --rbac-setup-mode Manual", false)] | ||
| [InlineData("--service-group sg1 --drill drill1", false)] | ||
| [InlineData("--service-group sg1 --drill drill1 --subscription sub", false)] | ||
| [InlineData("")] |
Tool Description Evaluator ResultsTest 1Expected Tool: Results
Test 2Expected Tool: Results
|
What does this PR do?
[Provide a clear, concise description of the changes][Add additional context, screenshots, or information that helps reviewers]GitHub issue number?
[Link to the GitHub issue this PR addresses]Pre-merge Checklist
servers/Azure.Mcp.Server/README.mdand/orservers/Fabric.Mcp.Server/README.mddocumentationREADME.mdchanges running the script./eng/scripts/Process-PackageReadMe.ps1. See Package READMEToolDescriptionEvaluatorand obtained a score of0.4or more and a top 3 ranking for all related test promptsconsolidated-tools.jsonbreaking-changelabelservers/Azure.Mcp.Server/docs/azmcp-commands.md./eng/scripts/Update-AzCommandsMetadata.ps1to update tool metadata inazmcp-commands.md(required for CI)servers/Azure.Mcp.Server/docs/e2eTestPrompts.mdcrypto mining, spam, data exfiltration, etc.)/azp run mcp - pullrequest - liveto run Live Test Pipeline