Commit Graph
2600 Commits
Author SHA1 Message Date
Copilotandmitsha-microsoft 769327905e Add Playwright Cloud Browsers Remote MCP (#4034)
* Document Playwright Workspaces remote MCP

Co-authored-by: mitsha-microsoft <58204159+mitsha-microsoft@users.noreply.github.com>

* Update Playwright Cloud Browsers listing

Co-authored-by: mitsha-microsoft <58204159+mitsha-microsoft@users.noreply.github.com>

* Correct Playwright Cloud Browsers repository link

Co-authored-by: mitsha-microsoft <58204159+mitsha-microsoft@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: mitsha-microsoft <58204159+mitsha-microsoft@users.noreply.github.com>
2026-10-28 08:31:28 -04:00
Amishi-PanwarandCopilot 1d9f2a3030 Add Advisor servicegroupintelligence get command (#3952)
* Add Advisor servicegroupintelligence

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: adbcd085-bc05-4b4d-a3be-a785d755f9ee

* Advisor: query Status service group intelligence

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: adbcd085-bc05-4b4d-a3be-a785d755f9ee

---------

Copilot-Session: adbcd085-bc05-4b4d-a3be-a785d755f9ee
2026-10-27 23:05:39 -07:00
azure-sdk-automation[bot] 3f9f1899ec Sync eng/common directory with azure-sdk-tools for PR 17367 (#4042) 2026-10-27 16:52:09 -07:00
azure-sdk-automation[bot]andazure-sdk 4dfa37a1a9 Sync .github/workflows directory with azure-sdk-tools repository (#4048)
Co-authored-by: azure-sdk <azuresdk@microsoft.com>
2026-10-27 16:32:07 -07:00
82b76ba338 Sync eng/common directory with azure-sdk-tools for PR 17410 (#4046)
Allow callers to configure SBOM generation timeout

Preserve the 30-minute default and pass caller overrides to the 1ES artifact task.

Co-authored-by: jennypng <63012604+JennyPng@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: ef492680-d50c-4348-967b-88a98f5c04c1
2026-10-27 16:20:08 -07:00
azure-sdk-automation[bot]andhelen229 6147a8cb30 Sync eng/common directory with azure-sdk-tools for PR 17393 (#4043)
* Pass optional SDK PRs safely to shared release completion

* Address shared release completion review feedback

---------

Co-authored-by: helen229 <gaoh@microsoft.com>
2026-10-27 13:34:15 -07:00
Connie YauandCopilot Autofix powered by AI 3736f3e93e Export tool metadata after NuGet releases (#3867)
* Adds logic to fix JSON with control characters.

* - Update README.

* Add support for secrets.

* Add script for updating.

* Update README.md

* Update to publish metadata during release build.

* Add variables for ingestion

* Update README.

* Update exporter tool into a job file.

* Only create paths/directories when successful

* Accept whiteline characters within JSON string.

* Add query support for multiple servers.

* Update binary search to include file extension

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>

* Add support for Template.Mcp.Server as IsDryRun

* Update comments.

* Do not fail the release stage.

* Throw when more than one server or runtime is found.

* Remove overlapping.

* Make child directory if it does not exist.

* Add Kusto to networkpolicy isolation

* Make binary executable on linux.

* Add Kusto to common.yml

* Code review comments

* Adding fetchdepth: 1

---------

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
2026-10-27 11:11:30 -07:00
Shraddha JainandCopilot b17daebba6 [AzureBackup] Apply --storage-type when creating Recovery Services vaults (#4033)
* [AzureBackup] Apply --storage-type when creating RSV vaults

RsvBackupOperations.CreateVaultAsync accepted storageType but never used it, so Recovery Services vaults were always created with the default GeoRedundant storage. After the vault PUT completes, apply the requested redundancy through the backupstorageconfig/vaultstorageconfig API (same path used by 'vault update --redundancy'). Invalid values are rejected before any ARM call, and storage-config failures report that the vault was created plus the 'vault update --redundancy' remediation.

Fixes microsoft/mcp#3981

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* [AzureBackup] Preserve RSV storage redundancy partial-failure guidance

Throw a dedicated VaultStorageRedundancyException (a RequestFailedException that keeps status and error code) when redundancy cannot be applied after an RSV vault is created. VaultCreateCommand surfaces its message ahead of the generic 409/403 mappings, so a storage-config conflict no longer reads as an existing-vault conflict. The retry command now includes --subscription and, when supplied, --tenant so it targets the vault just created.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-10-27 17:06:20 +05:30
Karan SinghandCopilot 150473f1fc Allow Azure Resource Graph Kusto endpoints in Kusto cluster URI validation (#4029)
* Allow Azure Resource Graph Kusto endpoints in Kusto cluster URI validation

Add .arg.core.windows.net to KustoClient's domain suffix allow-list so the Kusto
tools can query Azure Resource Graph Kusto endpoints. The Kusto SDKs' well-known
endpoints already trust this suffix, and KustoClient already keeps the endpoint
path and requests the Kusto scope these endpoints use.

Fixes #4028

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: df5f4d96-6fea-431c-bc49-01af1461746b

* Make the KustoClient request test endpoint-agnostic

Rename the test and use neutral database and query arguments so it doesn't suggest
that Azure Resource Graph endpoints get special handling. Any cluster URI that
passes the allow-list works; this one includes a path to show it's preserved.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: df5f4d96-6fea-431c-bc49-01af1461746b

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: df5f4d96-6fea-431c-bc49-01af1461746b
2026-10-26 15:27:15 -07:00
Alan Zimmer c3e9ec1093 Add guidance to and standardize project reference patterns (#4036) 2026-10-26 17:07:32 -04:00
Alok Desai 8701f6f2b7 Add telemetry tags to Advisor tools (#3960)
* Add telemetry tags to Advisor tools

Emit subscription, service group, recommendation type ID, category and
sub-category values on the ToolExecuted activity from each Advisor command.
McpRuntime only captures a top-level `subscription` argument, so namespace
server mode (where arguments are nested in `parameters`) loses it today.
Null or blank values are skipped.

* Add impact, group-by and prioritized telemetry tags to Advisor tools

Tag `advisor/Impact` on recommendation list, summary and metadata list,
`advisor/Prioritized` on recommendation list and summary, and
`advisor/GroupBy` on recommendation summary. Null or blank values are skipped.

* Restrict Advisor telemetry tag values to known formats

Tag the subscription only when it is a GUID, the recommendation type ID only
when it is a GUID, and category, impact and group-by only when they match the
existing allow-lists, using their canonical casing. Sub-category is trimmed,
matching the existing filter normalization. Values that do not match are not
tagged.

* Hash the service group name in Advisor telemetry

Record a SHA-256 hash of the trimmed, lowercased service group name instead of
the raw name, following the Deploy project name pattern.

* Record the raw service group name in Advisor telemetry

Revert the SHA-256 hashing of `advisor/ServiceGroup`. The raw name is
recorded and will be classified in the GDPR inventory.
2026-10-26 13:04:49 -07:00
cd2556e5c6 Add monitor ingestion upload and validate tools (#3954)
* Add monitor ingestion upload and validate tools

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 83d3236e-c51b-4809-861f-a45a9a63ae7c

* Address review feedback on monitor ingestion tools

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 83d3236e-c51b-4809-861f-a45a9a63ae7c

* Use standard exception handling in ingestion commands

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 83d3236e-c51b-4809-861f-a45a9a63ae7c

* added recorded tests

* added recorded tests

* fix formatting

* fixed recorded test assets

* update readme

* Apply suggestion from @alzimmermsft

Co-authored-by: Alan Zimmer <48699787+alzimmermsft@users.noreply.github.com>

---------

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Alan Zimmer <48699787+alzimmermsft@users.noreply.github.com>
Copilot-Session: 83d3236e-c51b-4809-861f-a45a9a63ae7c
2026-10-23 16:52:44 +00:00
azure-sdk-automation[bot]andTravis Prescott d98fe6ebca Sync eng/common directory with azure-sdk-tools for PR 17391 (#4026)
* Remove ios repo references.

* Remove android and C rep references.

---------

Co-authored-by: Travis Prescott <trpresco@microsoft.com>
2026-10-23 10:51:46 -06:00
azure-sdk-automation[bot]andazure-sdk c4341c2d2c Increment version after release (#4025)
Increment package version after release

Co-authored-by: azure-sdk <azuresdk@microsoft.com>
2026-10-23 09:22:58 -05:00
Shraddha Jain 6ee4162735 Add azurebackup operation get tool (#3839)
* Add azurebackup operation get tool

Adds the azurebackup operation get command to read asynchronous RSV backup operation status at vault scope or protected-item scope. Returns timestamps, sanitized errors, and actual job IDs when present, without treating operation IDs as job IDs. Includes unit tests, a recorded integration test, docs, changelog, and consolidated-tools registration.

* Map OperationCanceledException to 504 in operation get command

Override GetStatusCode so all cancellations (including TaskCanceledException) return GatewayTimeout, matching the canceled GetErrorMessage instead of falling through to 500. Adds unit coverage for both exception types.

* Wait for operation-get live update LRO to complete before final assertions

The re-submitted protected-item update now awaits WaitForCompletionResponseAsync so the final-state checks observe the settled write and no operation lingers into later tests or cleanup. Re-recorded (assets tag 59d31d946a).

* Address operation get review feedback and refresh recording
2026-10-23 14:52:43 +05:30
KarishmaGhiya 130fc0f2f0 docs: clarify Tool Description Evaluator embeddings endpoint setup (#4024) 2026-10-23 00:45:21 +00:00
Chidozie Ononiwu f1a5b8dfe1 Enable CFSClean on the MCP pipeline (#4023) 2026-10-22 17:31:18 -07:00
Steven Vukelich d14e1e8051 Prepare for 4.0.0-beta.3 release (#4021) Azure.Mcp.Server-4.0.0-beta.3 2026-10-22 15:50:37 -07:00
fdacd17ae1 Sync eng/common directory with azure-sdk-tools for PR 17350 (#4019)
* Upgrade Vally to 0.19.0 for App-token MCP evaluations

* Restore public npm metadata in Vally locks

Co-authored-by: helen229 <19517014+helen229@users.noreply.github.com>

* Sync eng/common directory with azure-sdk-tools repository for Tools PR 17350

* Keep eval transitive dependencies available in CI mirror

* Align eval tooling with Node 24 requirements

---------

Co-authored-by: helen229 <gaoh@microsoft.com>
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: helen229 <19517014+helen229@users.noreply.github.com>
Co-authored-by: azure-sdk <azuresdk@microsoft.com>
Template.Mcp.Server-0.0.12-alpha.6990318
2026-10-22 13:35:29 -07:00
azure-sdk-automation[bot]andTravis Prescott 154e3a1dda Sync eng/common directory with azure-sdk-tools for PR 17383 (#4020)
* Add package name and package version to logs.

* Pass dummy hash when no hash is provided.

* Revert "Pass dummy hash when no hash is provided."

This reverts commit 3449133ed429c799db553ea5e2a96a69aa7cc5ed.

---------

Co-authored-by: Travis Prescott <trpresco@microsoft.com>
2026-10-22 14:35:07 -06:00
Saswata PanditandCopilot b3f862be67 Add Azure Resiliency Agent tools (#3845)
* Add the Azure Resiliency Agent tool area

Exposes the Azure Resiliency Agent through a single conversation-level tool,
resiliencyagent_conversation_ask. A developer describes an application in their
own words and receives a zonal resilience assessment, or asks for zone-resilient
Bicep, ARM or Terraform templates for new resources.

The area holds no agent logic. It is a thin client over the agent's existing A2A
surface, so the backend keeps ownership of what a turn does, including which
scenario handles it and when to stop and ask the user something. That is why one
conversation-level tool covers both assessment and template generation rather
than one tool per Azure operation.

The agent is multi-turn: it asks its own clarifying questions before it can act.
A single tool call therefore carries an entire conversation. The command polls
the agent, raises an elicitation when the agent needs input, feeds the answer
back, and returns once. The host model issues one call and never sees the
polling, so clarifying questions reach the user exactly as the agent wrote them
rather than depending on a model to follow instructions about how to poll.

While a turn is running the agent publishes short reasoning steps. Those are
forwarded as progress notifications, which also resets client inactivity timers
on a call that can run for minutes.

Templates and reports are written to the caller's working directory and returned
as paths, following the pattern the Azure Migrate platform landing zone tool
uses. A generated template is more useful as a file that can be opened and
deployed than as text in a chat reply, and a long report does not have to travel
through the model's context. Artifact names arrive from a remote service and are
treated as untrusted input when used as file names.

The tool is marked LocalRequired because it asks the user questions over the
client connection, which is not available in HTTP mode.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 974958dc-ded9-4351-bed3-07227e1bce92

* Add Start Resilient Azure MCP tool surface

Add five architecture and IaC scenario tools, local file attachment with explicit consent and bounded in-memory caching, A2A FilePart forwarding, public data-boundary routing, MCP artifact content blocks, evaluations, documentation, and tests.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 974958dc-ded9-4351-bed3-07227e1bce92

* Clean up Resiliency Agent README entry

Remove stale POC prompts and use customer-facing service-area language.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 974958dc-ded9-4351-bed3-07227e1bce92

* Use generated Resiliency Agent evaluations

Remove the checked-in Vally specification and rely on the repository evaluator to generate unattended routing evaluations from the E2E prompt inventory. Normalize interactive scenarios to the supported context-required classification.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 974958dc-ded9-4351-bed3-07227e1bce92

* Evaluate inline resiliency IaC reviews

Add generated Vally coverage for inline ARM, Bicep, and Terraform reviews. Clarify that review commands accept source directly in the request while local files use attachment IDs.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 974958dc-ded9-4351-bed3-07227e1bce92

* Prefer attachments for IaC reviews

Guide complete and multi-file templates through the attachment flow while retaining direct support for templates pasted inline. Reserve existing IaC resiliency review for the format-specific Resiliency Agent commands instead of generic guidance tools.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 974958dc-ded9-4351-bed3-07227e1bce92

* Fix A2A inline file discriminator

Include the nested FileContent kind discriminator required by the A2A polymorphic contract so uploaded bytes, filename, and MIME type survive backend deserialization and blob offload.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 974958dc-ded9-4351-bed3-07227e1bce92

* Add general Resiliency Agent guidance

Add a conceptual guidance command and routing prompts, and make the public A2A endpoint plus delegated scope fixed production constants with no runtime environment overrides or auth bypass.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 974958dc-ded9-4351-bed3-07227e1bce92

* Add Resiliency Agent service owner

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 974958dc-ded9-4351-bed3-07227e1bce92

* Fix Resiliency Agent PR checks

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 974958dc-ded9-4351-bed3-07227e1bce92

* Handle canonical macOS temp paths in artifact tests

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 974958dc-ded9-4351-bed3-07227e1bce92

* Address Resiliency Agent review feedback

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 974958dc-ded9-4351-bed3-07227e1bce92

* Improve Resiliency Agent tool routing

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 974958dc-ded9-4351-bed3-07227e1bce92

* Improve Resiliency Agent artifact presentation

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 974958dc-ded9-4351-bed3-07227e1bce92

* Materialize resiliency reports in workspaces

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 974958dc-ded9-4351-bed3-07227e1bce92

* Add clickable links for resiliency artifacts

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 974958dc-ded9-4351-bed3-07227e1bce92

* Retrigger PR checks

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 974958dc-ded9-4351-bed3-07227e1bce92

* Harden Resiliency Agent conversation handling

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 974958dc-ded9-4351-bed3-07227e1bce92

* Address Resiliency Agent artifact and test review

Preserve backend artifacts when workspace writes fail, harden metadata bounds, use factory-managed HTTP clients, and add recorded ARM/A2A playback coverage.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 974958dc-ded9-4351-bed3-07227e1bce92

* Fix Resiliency Agent cross-platform CI tests

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 974958dc-ded9-4351-bed3-07227e1bce92

* Clarify Resiliency Agent attachment evaluation prompt

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 974958dc-ded9-4351-bed3-07227e1bce92

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 974958dc-ded9-4351-bed3-07227e1bce92
2026-10-22 13:04:20 -07:00
Connie Yau f7ab24de64 Added documentation for 401 missing auth config (#4009) 2026-10-22 12:45:13 -07:00
2d6ad88ed2 Drill report tools + few minor fixes on existing tools (#4018)
* Add six resiliency Goals tools for GA 2026-10-01

Integrate the supplied GA SDK, typed tool contracts, lifecycle coverage, and published ECY recordings. Keep known CI readiness blockers explicit in the draft PR.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Fix Goals documentation links and trim investigation notes

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Trim Goals delivery documentation and consolidate regression tests

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Use released Resilience Management SDK 1.0.0

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Resolve Goals metadata tests through the command factory

Use the stable command lookup API so the new tests remain compatible with upstream CommandRegistration wrappers.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Update existing Resiliency MCP Tools for GA Release

Migrate the Resiliency SDK integration and existing Drills API surfaces to GA. Add request validation, isolated fixtures, recording scenarios, HTTP contract tests, and documentation.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Add SDK GA upgrade usage recovery plan

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* up

* up

* up

* up

* up

* up

* up

* up

* up

* up

* up

* up

* up

* Resilience drills: keep integrated fixture plan Ready; align drill tools with GA SDK

- Drills fixture brings the recovery plan back to Ready (exclude new service-group members, finalize, checkReadiness) before and after the full failover/reprotect cycle; RO rejects failover unless the plan is Ready.
- Remove --recoveryplan from drill create/update: recoveryPlanId is read-only in the GA SDK and never serialized; the service links the service group's plan.
- Return the drill managed identity in drill get/create/update output.
- Always emit hasCompleted for drill resync, validation, add-or-update, and mark-complete results.
- Update docs, e2e prompts, skill reference, changelog, and tests.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Resilience: expose remaining GA SDK request fields and re-record live tests

- Drill create/update: --identity, --chaos-resource-properties, --recovery-plan-properties, --monitoring-properties; update --resource-group.
- Drill run failover: --user-consent (Unspecified/Allowed).
- Recovery plan create: None identity, --default-group-unique-id, CustomRunbook action associatedIdentity (Zonal only).
- Recovery plan resource update: CrossZoneVMRecovery protection; rejected long-running updates now return 400 with the service error code.
- Usage plan create: --tags.
- Re-recorded affected live tests against GA 2026-10-01 (assets tag Azure.Mcp.Tools.ResilienceManagement.Tests_9f4bd3a70d), added a CrossZoneVMRecovery rejection test, removed orphan preview recordings.
- Tuned drill update and drill run failover descriptions (ToolDescriptionEvaluator: changed tools' non-clarification prompts min 0.618).

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Resilience: document drill update resource group as immutable after creation

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Resilience: consolidate test fixtures and record Goals tests on canary

Inline the drills post script into test-resources-post.ps1, remove the PR 3921 goal fixture scripts, add a dedicated goals service group to the main fixture, and record the Goals GA tests on canary until the service reaches production.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* up

* up

* up

* up

* Resilience: record drill run report tests and publish assets.json

- Read the report download URL and expiry from the raw operation response; the
  service returns downloadUrl/expiryTimestamp, which the SDK model does not map.
- Sanitize the signed downloadUrl in recordings.
- Make the download URL test retry only on a 409 from a prior run operation and
  stop generating a second report.
- Point assets.json at Azure.Mcp.Tools.ResilienceManagement.Tests_fe97a70f15
  (79 recordings, including the three drill run report tests and a re-recorded
  Should_create_usage_plan).

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Fix cspell failure in drill run report eval doc

Remove the personal branch name that cspell flagged as unknown words.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Fix broken evaluator link in drill run report eval doc

Use the absolute GitHub URL, matching CONTRIBUTING.md, so the link check passes.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* up

* up

* Resilience: read generate-report summary from the DrillRun envelope

generateReport returns 202 with the DrillRun resource, so the SDK model has no
value and the summary was always null. Read it from properties.report in the raw
operation response (same approach as the download URL), keep using the SDK
value when present, and assert the returned report in the recorded test. The
existing recording replays unchanged.

Also update the tool count in the Resilience skill tools reference to 49.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

---------

Co-authored-by: Dhruv Bharuka <dhruvbharuka@microsoft.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-10-22 11:58:24 -07:00
9a2bd1a5ce Resilience: Goal tools + few minor updates to other tools (#4014)
* Add six resiliency Goals tools for GA 2026-10-01

Integrate the supplied GA SDK, typed tool contracts, lifecycle coverage, and published ECY recordings. Keep known CI readiness blockers explicit in the draft PR.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Fix Goals documentation links and trim investigation notes

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Trim Goals delivery documentation and consolidate regression tests

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Use released Resilience Management SDK 1.0.0

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Resolve Goals metadata tests through the command factory

Use the stable command lookup API so the new tests remain compatible with upstream CommandRegistration wrappers.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Update existing Resiliency MCP Tools for GA Release

Migrate the Resiliency SDK integration and existing Drills API surfaces to GA. Add request validation, isolated fixtures, recording scenarios, HTTP contract tests, and documentation.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Add SDK GA upgrade usage recovery plan

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* up

* up

* up

* up

* up

* up

* up

* up

* up

* up

* up

* up

* up

* Resilience drills: keep integrated fixture plan Ready; align drill tools with GA SDK

- Drills fixture brings the recovery plan back to Ready (exclude new service-group members, finalize, checkReadiness) before and after the full failover/reprotect cycle; RO rejects failover unless the plan is Ready.
- Remove --recoveryplan from drill create/update: recoveryPlanId is read-only in the GA SDK and never serialized; the service links the service group's plan.
- Return the drill managed identity in drill get/create/update output.
- Always emit hasCompleted for drill resync, validation, add-or-update, and mark-complete results.
- Update docs, e2e prompts, skill reference, changelog, and tests.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Resilience: expose remaining GA SDK request fields and re-record live tests

- Drill create/update: --identity, --chaos-resource-properties, --recovery-plan-properties, --monitoring-properties; update --resource-group.
- Drill run failover: --user-consent (Unspecified/Allowed).
- Recovery plan create: None identity, --default-group-unique-id, CustomRunbook action associatedIdentity (Zonal only).
- Recovery plan resource update: CrossZoneVMRecovery protection; rejected long-running updates now return 400 with the service error code.
- Usage plan create: --tags.
- Re-recorded affected live tests against GA 2026-10-01 (assets tag Azure.Mcp.Tools.ResilienceManagement.Tests_9f4bd3a70d), added a CrossZoneVMRecovery rejection test, removed orphan preview recordings.
- Tuned drill update and drill run failover descriptions (ToolDescriptionEvaluator: changed tools' non-clarification prompts min 0.618).

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Resilience: document drill update resource group as immutable after creation

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Resilience: consolidate test fixtures and record Goals tests on canary

Inline the drills post script into test-resources-post.ps1, remove the PR 3921 goal fixture scripts, add a dedicated goals service group to the main fixture, and record the Goals GA tests on canary until the service reaches production.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* up

* up

---------

Co-authored-by: Dhruv Bharuka <dhruvbharuka@microsoft.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-10-22 08:20:19 -07:00
ghcp4a-bot[bot]andgithub-actions[bot] 04741f47cf Sync skill references from GitHub-Copilot-for-Azure (#4017)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-10-22 08:58:10 -04:00
pranjal-abhyankarandPranjal Abhyankar b5ac4b8a37 Add Storage Intelligence disk performance diagnostics (#3580)
* Add Storage Intelligence disk diagnostics

* Support prefix-free application scopes

* Add host latency to disk diagnostics

* Remove Storage disk latency flag

* Improve storage disk diagnose tool description

* Support VMSS instances in disk diagnostics

* Add recorded live test for disk diagnostics

* Update disk resolver for Azure service API

* Default Storage Intelligence configuration

* Restore recorded endpoint for playback

* Address storage disk diagnostics review feedback

* Align disk diagnostics with latest command contract

* Fix disk diagnostics spelling checks

* Secure disk diagnostics endpoints and support tenant selection

* Adapt disk endpoint validation to the shared validator service

* Use Azure service facade for disk endpoint validation

---------

Co-authored-by: Pranjal Abhyankar <pabhyankar@microsoft.com>
2026-10-21 14:18:23 -05:00
azure-sdk-automation[bot]andazure-sdk 4f5e2e354c Sync eng/common directory with azure-sdk-tools for PR 17315 (#4015)
* Sync eng/common directory with azure-sdk-tools repository for Tools PR 17315

* Sync eng/common directory with azure-sdk-tools repository for Tools PR 17315

* Sync eng/common directory with azure-sdk-tools repository for Tools PR 17315

---------

Co-authored-by: azure-sdk <azuresdk@microsoft.com>
2026-10-21 10:50:03 -07:00
JasonYeMSFT 3b2d6b12b4 chore: stop changelog scripts from accumulating newlines (#4011) 2026-10-21 09:34:42 -07:00
kun654andkun654 3e9b504b19 docs: move Azure Device Provisioning Service sections into alphabetical order (#4001)
docs: move Device Provisioning Service sections into alphabetical order

The sections added by #3898 were inserted between Insights and IoT Hub in all
three docs. Relocate them to their alphabetical position next to the other
Device services: between Deploy and Device Registry in azmcp-commands.md and
e2eTestPrompts.md, and between Database for PostgreSQL and Event Grid in the
README prompt list.

Pure block moves, no content changes; moved blocks contain no annotation
comments.

Fixes #3970

Co-authored-by: kun654 <273006726+kun654@users.noreply.github.com>
2026-10-21 10:55:43 -04:00
Aya Zaki IsmailandCopilot 9372a0549a Fix release tags to target built commit (#4012)
Ensure GitHub release tags created by the publishing pipeline point to the exact source commit built by Azure DevOps.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 844d677d-8613-46c9-8988-ae14b2e4c208
2026-10-21 09:36:39 -04:00
azure-sdk-automation[bot]andazure-sdk 299f6325d8 Increment version after release (#4013)
Increment package version after release

Co-authored-by: azure-sdk <azuresdk@microsoft.com>
2026-10-21 08:11:11 -04:00
Steven Vukelich 99cdb36ec5 Prepare for 4.0.0-beta.2 release (#4010) Azure.Mcp.Server-4.0.0-beta.2 2026-10-20 22:33:33 +00:00
azure-sdk-automation[bot]andazure-sdk c17559c057 Increment version after release (#3980)
Increment package version after release

Co-authored-by: azure-sdk <azuresdk@microsoft.com>
2026-10-20 14:45:00 -07:00
Connie YauandCopilot 351ba4f64b Fix several live test failures (#3742)
* Test infrastructure: cache live settings across tests

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 176ac409-5580-4f14-befe-11a738a40cd8

* VM-backed tests: select available SKUs and fix provisioning and assertions

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 176ac409-5580-4f14-befe-11a738a40cd8

* Live tests: improve Azure ISV, Communication, and Function App coverage

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 176ac409-5580-4f14-befe-11a738a40cd8

* Cosmos: restore seed data and fix deployment authentication

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 176ac409-5580-4f14-befe-11a738a40cd8

* Foundry Extensions: discover available regions and model quota for tests

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 176ac409-5580-4f14-befe-11a738a40cd8

* IoT: fix test setup and extension installation diagnostics

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 176ac409-5580-4f14-befe-11a738a40cd8

* Monitor: fix test resource naming and deployment output lookup

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 176ac409-5580-4f14-befe-11a738a40cd8

* Marketplace: improve service errors and fix test deployment

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 176ac409-5580-4f14-befe-11a738a40cd8

* Speech: split recorded test cases and guard local-only tools

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 176ac409-5580-4f14-befe-11a738a40cd8

* Check multiple regions.

* Add comment in FunctionApp

* Add more words.

* Update PS versions

* Retry live test settings initialization after failure

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Update recordings

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 176ac409-5580-4f14-befe-11a738a40cd8
2026-10-20 15:32:01 -04:00
adishiritwick 412e187cbe Update Resilience tools to GA SDK (#3968) 2026-10-20 10:10:54 -07:00
azure-sdk-automation[bot]andazure-sdk a70f67e85e Increment version after release (#4002)
Increment package version after release

Co-authored-by: azure-sdk <azuresdk@microsoft.com>
2026-10-20 12:05:08 -04:00
azure-sdk-automation[bot]andhelen229 5e5841070d Sync eng/common directory with azure-sdk-tools for PR 17238 (#3973)
* Use scoped Copilot App token for hermetic Vally evals

* Reuse shared GitHub login for Copilot eval authentication

* Replace all Vally eval PATs with shared GitHub App authentication

* Remove PR guards from shared Copilot authentication

* Use one tested Copilot token environment variable

* Use default Azure owner for Copilot login

---------

Co-authored-by: helen229 <gaoh@microsoft.com>
Template.Mcp.Server-0.0.12-alpha.6975422 Azure.Mcp.Server-4.0.0-beta.1
2026-10-19 14:33:22 -07:00
azure-sdk-automation[bot]andhelen229 0c730bc27b Sync eng/common directory with azure-sdk-tools for PR 17084 (#3903)
* Publish complete eval build results directly to Blob

* Report sanitized Blob publication failure diagnostics

* Opt eval publishing into the AzureStorage network policy

* Publish real skill and live eval results to Blob

* Enable scoped automatic publication for tools main evals

* Remove dedicated synthetic storage smoke mode

* Restrict refresh token destinations and make publisher lock portable

* Reject noncanonical archive identities and clarify publisher boundaries

* Document the production-only dashboard boundary

* Convert Blob publisher scripts to TypeScript

* Notify the dashboard after publishing evaluation results

* Centralize eval publication configuration and simplify pipeline IDs

* Simplify eval publication and close validation gaps

* Simplify eval result publication and strengthen failure recovery

* Use one eval publication opt-in for upload and storage egress

* Keep one main-only eval publication switch

* Use pipeline configuration and Azure CLI for eval publication

* Fix eval publication edge cases and run regressions in PR CI

* Configure eval dashboard endpoints through pipeline variables

* Remove optional eval publication receipts

* Simplify eval bundling and support Node 24 with pnpm

---------

Co-authored-by: helen229 <gaoh@microsoft.com>
2026-10-19 14:01:47 -07:00
KarishmaGhiyaandCopilot 606a2ca6ab Refresh 4.0.0-beta.1 release changelogs with merged fixes (#3997)
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: e3b2c75e-eb91-431b-a13e-04be09f78868
2026-10-19 20:56:22 +00:00
Chidozie Ononiwu e5c5bfb553 Allow blobAzureStorage in net Isolation (#4000)
Allow blocAzureStorage in net Isolation
2026-10-19 13:46:41 -07:00
azure-sdk-automation[bot] 1c3bdb70d4 Sync eng/common directory with azure-sdk-tools for PR 17189 (#3994)
* Forward release-plan correlation through shared completion adapters
2026-10-19 15:54:50 -04:00
097c47d622 Fix invalid PyPI package versions after shared-script sync (#3985)
* Fix PyPI version conversion output

Discard the regex returned by SetupPythonConventions so package versions remain scalar strings. Add regression coverage for stable, prerelease, build-number, and invalid versions, including generated project metadata.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 8dc224e5-c470-4102-83cc-c5b85948aaf5

* Remove changelog entry for internal packaging fix

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 8dc224e5-c470-4102-83cc-c5b85948aaf5

* Remove generated Pester test report

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 8dc224e5-c470-4102-83cc-c5b85948aaf5

* Explain why Python version conversion discards regex output

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 8dc224e5-c470-4102-83cc-c5b85948aaf5

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: msalaman <28122166+msalaman@users.noreply.github.com>
Copilot-Session: 8dc224e5-c470-4102-83cc-c5b85948aaf5
2026-10-19 19:18:21 +00:00
azure-sdk-automation[bot]andTravis Prescott 2d31822ce1 Sync eng/common directory with azure-sdk-tools for PR 17316 (#3996)
* Update pipelines.

* Updates for new approach in companion PR

---------

Co-authored-by: Travis Prescott <trpresco@microsoft.com>
2026-10-19 11:17:07 -06:00
Alan Zimmer 5ecde31916 Update PyPi packaging (#3984)
* Update PyProject TOML template handling

* Small cleanup on dev status

* Support dev zero versioning

* Also support other MCP servers in Pack-PyPi
2026-10-19 12:34:06 -04:00
adb9de1074 Add monitor traces commands for Azure Monitor toolset (#3922)
* Add `monitor traces` commands for Azure Monitor Trace Store

Adds four commands for querying distributed traces stored in an Azure
Monitor Workspace: listing trace-enabled workspaces, listing queryable
trace/span fields, running a KQL trace query, and cancelling a running
query.

Trace query uses a hand-built data-plane pipeline rather than a generated
SDK because no Azure SDK client exists for the Trace Store data plane; the
service validates the workspace host suffix and parses the AMW ARM ID
before issuing requests.

These commands are intended for private preview only. Registration is
unconditional, so exclusion from a GA release is a release-branch
coordination decision and is not enforced in code.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

* Fix Monitor traces review findings

Carry Resource Graph truncation through trace account responses instead of reporting incomplete discovery as complete. Align required account prompts and query option guidance, and split wire models into one-class files.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

* Align Monitor traces targeting and validation

Resolve workspaces by subscription, resource group, and name; validate query options and endpoints before execution. Separate query submission from resumption and pin refreshed recordings for the new lookup sequence and compatible workspace preview API.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

* Separate Monitor trace query resume tool

Expose operation-id polling through query resume with its own paging options, leaving query run submission-only. Reuse the existing polling service and pin the recorded resume coverage.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

* Drain trace query pages within bounded budgets

Preserve consumed rows and metadata across continuation, timeouts, and failures. Deserialize a typed page envelope and use the endpoint top parameter so requested page sizes are honored.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

* Fix consolidated metadata for trace query resume

Expose resume under its own non-idempotent consolidated tool so advancing result reads retain correct retry hints and consolidated startup passes metadata validation.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

* Address follow-up Traces review comments

Remove the tool-specific consolidated assertion while keeping generic metadata coverage. Clarify public-cloud support and existing bounded pagination in the command documentation.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

---------

Co-authored-by: Grace Wehner <grwehner@microsoft.com>
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
2026-10-19 10:53:54 -04:00
Amos HerschandCopilot App bc89c9e5e2 Prepare for Fabric MCP Server 1.6.0 release (#3979)
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Fabric.Mcp.Server-1.6.0
2026-10-18 11:24:33 +03:00
Amos HerschandCopilot App c3489533c6 Refresh Fabric REST API specification resources (#3978)
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
2026-10-18 10:41:21 +03:00
azure-sdk-automation[bot]andCopilot App 30fe5e44b7 Increment version after release (#3948)
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
2026-10-18 09:23:04 +03:00
KarishmaGhiya b2404c9475 Exclude 3.x release entries from 4.0.0-beta.1 changelogs (#3972) 2026-10-16 13:31:17 -07:00
KarishmaGhiya 0a22800aea Prepare changelog for 4.0.0-beta.1 release (#3971) 2026-10-16 19:19:51 +00:00