Skip to content

Add 'Azure Well-Architected Framework' tool#1964

Open
sriramkakara wants to merge 6 commits intomainfrom
users/skakara/well-architected-framework
Open

Add 'Azure Well-Architected Framework' tool#1964
sriramkakara wants to merge 6 commits intomainfrom
users/skakara/well-architected-framework

Conversation

@sriramkakara
Copy link
Member

@sriramkakara sriramkakara commented Mar 7, 2026

What does this PR do?

Adds a new Azure.Mcp.Tools.WellArchitectedFramework tool

This tool provides quick and efficient access to any skill that needs to refer to the 'Azure Well-Architected Framework' for architecture guidelines.
Ex: We have an Azure infrastructure planning skill which needs to refer to WAF to come up with the best possible architecture.

GitHub issue number?

Issue 1927

Pre-merge Checklist

  • Required for All PRs
    • Read contribution guidelines
    • PR title clearly describes the change
    • Commit history is clean with descriptive messages (cleanup guide)
    • Added comprehensive tests for new/modified functionality
    • Updated servers/Azure.Mcp.Server/CHANGELOG.md and/or servers/Fabric.Mcp.Server/CHANGELOG.md for product changes (features, bug fixes, UI/UX, updated dependencies)
  • For MCP tool changes:
    • One tool per PR: This PR adds or modifies only one MCP tool for faster review cycles
    • Updated servers/Azure.Mcp.Server/README.md and/or servers/Fabric.Mcp.Server/README.md documentation
    • Validate README.md changes using script at eng/scripts/Process-PackageReadMe.ps1. See Package README
    • Updated command list in /servers/Azure.Mcp.Server/docs/azmcp-commands.md and/or /docs/fabric-commands.md
    • Run .\eng\scripts\Update-AzCommandsMetadata.ps1 to update tool metadata in azmcp-commands.md (required for CI)
    • For new or modified tool descriptions, ran ToolDescriptionEvaluator and obtained a score of 0.4 or more and a top 3 ranking for all related test prompts
    • For tools with new names, including new tools or renamed tools, update consolidated-tools.json
    • For new tools associated with Azure services or publicly available tools/APIs/products, add URL to documentation in the PR description
  • Extra steps for Azure MCP Server tool changes:
    • Updated test prompts in /servers/Azure.Mcp.Server/docs/e2eTestPrompts.md
    • 👉 For Community (non-Microsoft team member) PRs:
      • Security review: Reviewed code for security vulnerabilities, malicious code, or suspicious activities before running tests (crypto mining, spam, data exfiltration, etc.)
      • Manual tests run: added comment /azp run mcp - pullrequest - live to run Live Test Pipeline

@sriramkakara sriramkakara requested a review from a team as a code owner March 7, 2026 02:56
Copilot AI review requested due to automatic review settings March 7, 2026 02:56
@sriramkakara sriramkakara requested review from a team as code owners March 7, 2026 02:56
@github-project-automation github-project-automation bot moved this to Untriaged in Azure MCP Server Mar 7, 2026
@sriramkakara sriramkakara changed the title Add a new 'Azure Well-Architected Framework' tool Add 'Azure Well-Architected Framework' tool Mar 7, 2026
@sriramkakara
Copy link
Member Author

/azp run mcp - pullrequest - live

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds a new Azure Well-Architected Framework MCP tool/area to the Azure MCP Server, enabling clients/skills to retrieve service-specific WAF guidance via a dedicated command and embedded service-guide mappings.

Changes:

  • Introduces Azure.Mcp.Tools.WellArchitectedFramework with serviceguide get command backed by an embedded service-guides.json mapping.
  • Wires the new area into Azure MCP Server registration and updates command docs, prompts, README, and consolidated tool mappings.
  • Adds unit tests validating both the embedded JSON schema and the command behavior.

Reviewed changes

Copilot reviewed 19 out of 19 changed files in this pull request and generated 6 comments.

Show a summary per file
File Description
tools/Azure.Mcp.Tools.WellArchitectedFramework/tests/Azure.Mcp.Tools.WellArchitectedFramework.UnitTests/ServiceGuidesJsonSchemaTests.cs Adds schema/content validation for the embedded service-guides.json.
tools/Azure.Mcp.Tools.WellArchitectedFramework/tests/Azure.Mcp.Tools.WellArchitectedFramework.UnitTests/ServiceGuideGetCommandTests.cs Adds unit tests for serviceguide get behavior and option binding.
tools/Azure.Mcp.Tools.WellArchitectedFramework/tests/Azure.Mcp.Tools.WellArchitectedFramework.UnitTests/Azure.Mcp.Tools.WellArchitectedFramework.UnitTests.csproj Adds the unit test project for the new tool.
tools/Azure.Mcp.Tools.WellArchitectedFramework/src/WellArchitectedFrameworkSetup.cs Registers the new area and serviceguide get command group.
tools/Azure.Mcp.Tools.WellArchitectedFramework/src/Resources/ServiceGuides/service-guides.json Adds the service-to-guide URL mapping and variations list used for lookups.
tools/Azure.Mcp.Tools.WellArchitectedFramework/src/Resources/ServiceGuides/service-guides-generation-prompt.md Adds a prompt to regenerate the JSON mapping from WAF TOC.
tools/Azure.Mcp.Tools.WellArchitectedFramework/src/Options/WellArchitectedFrameworkOptionDefinitions.cs Defines --service option for the new command.
tools/Azure.Mcp.Tools.WellArchitectedFramework/src/Options/ServiceGuide/ServiceGuideGetOptions.cs Adds options model for the serviceguide get command.
tools/Azure.Mcp.Tools.WellArchitectedFramework/src/GlobalUsings.cs Introduces global using for System.CommandLine.
tools/Azure.Mcp.Tools.WellArchitectedFramework/src/Commands/WellArchitectedFrameworkJsonContext.cs Adds STJ source-gen context for command responses.
tools/Azure.Mcp.Tools.WellArchitectedFramework/src/Commands/ServiceGuide/ServiceGuideGetCommand.cs Implements the serviceguide get command and embedded JSON loading + lookup logic.
tools/Azure.Mcp.Tools.WellArchitectedFramework/src/Azure.Mcp.Tools.WellArchitectedFramework.csproj Adds the new tool project and embeds JSON/text resources.
tools/Azure.Mcp.Tools.WellArchitectedFramework/src/AssemblyInfo.cs Exposes internals to unit/live test assemblies.
servers/Azure.Mcp.Server/src/Resources/consolidated-tools.json Adds the new tool into the consolidated “get_azure_best_practices” grouping/description.
servers/Azure.Mcp.Server/src/Program.cs Registers the new Well-Architected Framework area setup.
servers/Azure.Mcp.Server/docs/e2eTestPrompts.md Adds E2E prompts for the new tool.
servers/Azure.Mcp.Server/docs/azmcp-commands.md Documents the new azmcp wellarchitectedframework serviceguide get command.
servers/Azure.Mcp.Server/README.md Adds user-facing examples and updates supported area count/list.
.github/CODEOWNERS Adds codeowners + PR label metadata for the new tool path.

@github-project-automation github-project-automation bot moved this from Untriaged to In Progress in Azure MCP Server Mar 10, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: In Progress

Development

Successfully merging this pull request may close these issues.

4 participants