Skip to content

Updating AKS MCP to v.0.0.17 and fixing WSL activation#2128

Merged
Tatsinnit merged 3 commits into
Azure:mainfrom
tejhan:aksmcpupdate1
May 19, 2026
Merged

Updating AKS MCP to v.0.0.17 and fixing WSL activation#2128
Tatsinnit merged 3 commits into
Azure:mainfrom
tejhan:aksmcpupdate1

Conversation

@tejhan
Copy link
Copy Markdown
Collaborator

@tejhan tejhan commented May 8, 2026

This PR updates our AKS MCP registration logic to use newly standardized vscode.McpServerDefinitionProvider, bump to the most recent v.0.0.17 version, and remedies failing installations on remote environments.

  • Switched to registerMcpServerDefinitionProvider implemnetation, which runs on the extension host the user is in (which properly captures remote environemnts)
  • Added contributes.mcpServerDefinitionProviders to package.json
  • Bumped aks.aksmcpserver.releaseTag from v.0.0.16 -> v.0.0.17
  • Added getEnabledComponentsArgs helper to pass the component with preservation of previous behavior

The registration now automatically occurs on activation, and further installation/starting the server will remain user invoked as it was before.

Resolves

Signed-off-by: tejhan-diallo <tejhan.diallo@gmail.com>
@tejhan tejhan self-assigned this May 8, 2026
Signed-off-by: Tejhan Diallo <82427254+tejhan@users.noreply.github.com>
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

This PR updates the AKS MCP server integration to use VS Code’s MCP server definition provider mechanism (to better support remote environments like WSL), and bumps the bundled AKS MCP server release tag to v0.0.17.

Changes:

  • Register an aks-mcp MCP server definition provider during extension activation instead of writing mcp.servers directly.
  • Remove the legacy “Setup AKS MCP Server” command and its quick action entry.
  • Update the default aks.aksmcpserver.releaseTag from v0.0.16 to v0.0.17.

Reviewed changes

Copilot reviewed 4 out of 4 changed files in this pull request and generated no comments.

File Description
src/extension.ts Registers the AKS MCP server provider on activation and removes the legacy setup command registration.
src/commands/quickActions/aksQuickActions.ts Removes the MCP setup command from quick actions and simplifies grouping logic accordingly.
src/commands/aksMCP/aksMCPServer.ts Replaces “write to user settings” behavior with an MCP server definition provider that resolves the binary on demand.
package.json Adds contributes.mcpServerDefinitionProviders, bumps MCP release tag default to v0.0.17, and removes the legacy setup command contribution.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Tatsinnit
Tatsinnit previously approved these changes May 12, 2026
Comment thread src/commands/aksMCP/aksMCPServer.ts
bosesuneha
bosesuneha previously approved these changes May 14, 2026
Copy link
Copy Markdown
Member

@bosesuneha bosesuneha left a comment

Choose a reason for hiding this comment

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

lgtm

@tejhan tejhan dismissed stale reviews from bosesuneha and Tatsinnit via a37bb46 May 18, 2026 23:43
@tejhan tejhan requested review from Tatsinnit and Copilot May 18, 2026 23:45
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

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

Comments suppressed due to low confidence (1)

src/commands/aksMCP/aksMCPServer.ts:25

  • The provider doesn't expose an onDidChangeMcpServerDefinitions event, so changes to the aks.aksmcpserver.enabledComponents (or releaseTag) settings made after activation won't propagate to VS Code's MCP server list. Users will need to restart VS Code (or stop/start the server, since resolve recomputes args) for new component flags or a new release tag to take effect. Consider emitting that event when the relevant configuration sections change via vscode.workspace.onDidChangeConfiguration.
    const provider: vscode.McpServerDefinitionProvider<vscode.McpStdioServerDefinition> = {
        // Binary path left empty, resolveMcpServerDefinition sets it further below.
        provideMcpServerDefinitions: () => [
            new vscode.McpStdioServerDefinition("AKS MCP", "", ["--transport", "stdio", ...getEnabledComponentsArgs()]),
        ],
        // Downloads binary then points the server at it.
        resolveMcpServerDefinition: async (server) => {
            const binary = await getAKSMCPServerBinaryPath();
            if (failed(binary)) {
                throw new Error(`Failed to download AKS MCP server: ${binary.error}`);
            }
            server.command = binary.result;
            server.args = ["--transport", "stdio", ...getEnabledComponentsArgs()];
            return server;
        },
    };

Comment thread package.json Outdated
Comment thread docs/book/src/features/aks-mcp-server-integration.md
Comment thread src/commands/aksMCP/aksMCPServer.ts
Signed-off-by: tejhan-diallo <tejhan.diallo@gmail.com>
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

Copilot reviewed 7 out of 10 changed files in this pull request and generated 1 comment.

Comment thread src/commands/aksMCP/aksMCPServer.ts
@Tatsinnit Tatsinnit merged commit fe3ea1a into Azure:main May 19, 2026
15 of 18 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants