Skip to content

Merge AppConfig key-value list and show into get#505

Merged
alzimmermsft merged 13 commits intomicrosoft:mainfrom
alzimmermsft:MergeAppConfigShowAndList
Oct 1, 2025
Merged

Merge AppConfig key-value list and show into get#505
alzimmermsft merged 13 commits intomicrosoft:mainfrom
alzimmermsft:MergeAppConfigShowAndList

Conversation

@alzimmermsft
Copy link
Copy Markdown
Contributor

What does this PR do?

Merges the tools azmcp_appconfig_kv_list and azmcp_appconfig_kv_show into a single tool azmcp_appconfig_kv_get which can determine whether to list key-value settings based on where --key is used.

Adds two new parameters --key-filter and --label-filter to disambiguate functionality from --key and --label now that the same tool uses both sets of parameters. If both --key and --key-filter are passed to the tool it will fail validation, as this is ambiguous on which behavior should be used.

GitHub issue number?

[Link to the GitHub issue this PR addresses]

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
    • Updated command list in /docs/azmcp-commands.md and/or /docs/fabric-commands.md
    • 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

@alzimmermsft alzimmermsft self-assigned this Sep 18, 2025
@joshfree joshfree added this to the 2025-09 milestone Sep 19, 2025
@joshfree joshfree added the server-Azure.Mcp Azure.Mcp.Server label Sep 19, 2025
@joshfree joshfree moved this from Untriaged to In Progress in Azure MCP Server Sep 19, 2025
@alzimmermsft alzimmermsft marked this pull request as ready for review September 19, 2025 20:46
Copy link
Copy Markdown
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

Consolidates the separate key-value list and show commands into a single unified get command for Azure App Configuration, adding filtering capabilities.

  • Replaces KeyValueListCommand and KeyValueShowCommand with KeyValueGetCommand supporting both single retrieval and filtered listing.
  • Introduces --key-filter and --label-filter options (but service implementation currently ignores them).
  • Updates tests, documentation, serialization context, and changelog to reflect the merged command.

Reviewed Changes

Copilot reviewed 17 out of 17 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
KeyValueShowCommandTests.cs Removed obsolete show command unit tests.
KeyValueListCommandTests.cs Removed obsolete list command unit tests.
KeyValueGetCommandTests.cs Added unit tests for new unified get command (missing some validation/filter coverage).
AppConfigCommandTests.cs Updated live tests to use new get tool and array-based results.
IAppConfigService.cs Merged list/show service methods into GetKeyValues; removed GetKeyValue.
AppConfigService.cs Implemented merged GetKeyValues logic (currently ignores new filter parameters).
KeyValueShowOptions.cs Removed obsolete options type.
KeyValueGetOptions.cs Added unified options including new filter properties.
AppConfigOptionDefinitions.cs Added key-filter/label-filter options; refactored option declarations.
KeyValueShowCommand.cs Removed obsolete command.
KeyValueListCommand.cs Removed obsolete command.
KeyValueGetCommand.cs Added unified command with validation preventing ambiguous key + key-filter usage.
AppConfigJsonContext.cs Updated JSON context to include new result type and remove old ones.
AppConfigSetup.cs Registered new get command; removed list/show registrations.
CHANGELOG.md Documented breaking change merging commands.
e2eTestPrompts.md Updated prompts to reflect new get command and added filter scenarios.
azmcp-commands.md Updated CLI usage examples for merged command and new filters.

Comment thread tools/Azure.Mcp.Tools.AppConfig/src/Services/AppConfigService.cs
Comment thread tools/Azure.Mcp.Tools.AppConfig/src/Services/AppConfigService.cs
@alzimmermsft alzimmermsft enabled auto-merge (squash) October 1, 2025 20:31
@alzimmermsft alzimmermsft disabled auto-merge October 1, 2025 20:33
@alzimmermsft alzimmermsft merged commit d85a670 into microsoft:main Oct 1, 2025
23 checks passed
@github-project-automation github-project-automation Bot moved this from In Progress to Done in Azure MCP Server Oct 1, 2025
@alzimmermsft alzimmermsft deleted the MergeAppConfigShowAndList branch October 1, 2025 21:14
colbytimm pushed a commit to colbytimm/microsoft-mcp that referenced this pull request Dec 8, 2025
* Merge AppConfig key-value list and show into get

* Few small fixes

* Fix validation

* Merge in main

* Use new extension to retrieve value
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

server-Azure.Mcp Azure.Mcp.Server

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

4 participants