From e8d4798ee1637e98555a63765c8ea200d177c975 Mon Sep 17 00:00:00 2001 From: Yuliia Kovalova <95473390+YuliiaKovalova@users.noreply.github.com> Date: Thu, 30 Jul 2026 18:19:12 +0200 Subject: [PATCH 1/2] Resolve binlog MCP from the dnceng dotnet-public feed The `binlog` server ran `dnx Microsoft.AITools.BinlogMcp --yes` with no feed pinned, so resolution depended on whatever ambient NuGet configuration the agent happened to run under. Pin it to the dnceng dotnet-public feed with `--source` so the server resolves deterministically. Applied to all four manifests that embed the server definition (plugin.json, .claude-plugin/plugin.json, .codex-plugin/.mcp.json, and .claude-plugin/marketplace.json) so the mirrors stay in sync. Also corrects two stale feed names in comments/docs (dotnet-eng, dotnet-tools). Verified: `skill-validator check` passes (exit 0, no new warnings), and `dnx --yes --source Microsoft.AITools.BinlogMcp` starts aitools-binlog-mcp 2.0.1 and completes an MCP initialize handshake. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: eef3a5cc-7c9b-41b2-88e5-fbc7e786f3f2 --- .claude-plugin/marketplace.json | 6 ++++-- eng/allowed-external-deps.txt | 2 +- plugins/dotnet-msbuild/.claude-plugin/plugin.json | 6 ++++-- plugins/dotnet-msbuild/.codex-plugin/.mcp.json | 6 ++++-- plugins/dotnet-msbuild/plugin.json | 6 ++++-- .../dotnet-msbuild/skills/binlog-failure-analysis/SKILL.md | 2 +- 6 files changed, 18 insertions(+), 10 deletions(-) diff --git a/.claude-plugin/marketplace.json b/.claude-plugin/marketplace.json index 6eaa2f3113..7bb6788a40 100644 --- a/.claude-plugin/marketplace.json +++ b/.claude-plugin/marketplace.json @@ -34,8 +34,10 @@ "command": "dotnet", "args": [ "dnx", - "Microsoft.AITools.BinlogMcp", - "--yes" + "--yes", + "--source", + "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public/nuget/v3/index.json", + "Microsoft.AITools.BinlogMcp" ], "tools": ["*"] } diff --git a/eng/allowed-external-deps.txt b/eng/allowed-external-deps.txt index 4b286e3154..601fde5a64 100644 --- a/eng/allowed-external-deps.txt +++ b/eng/allowed-external-deps.txt @@ -24,5 +24,5 @@ script:migrate-nullable-references:scripts/Get-NullableReadiness.ps1 tool-ref:msbuild:#tool:web/fetch tool-ref:msbuild:#tool:agent/runSubagent -# dotnet-msbuild plugin: Microsoft.AITools.BinlogMcp server (binlog analysis MCP from dotnet-eng feed) +# dotnet-msbuild plugin: Microsoft.AITools.BinlogMcp server (binlog analysis MCP from dotnet-public feed) mcp-server:dotnet-msbuild:binlog diff --git a/plugins/dotnet-msbuild/.claude-plugin/plugin.json b/plugins/dotnet-msbuild/.claude-plugin/plugin.json index 037e50426f..58c2867bb9 100644 --- a/plugins/dotnet-msbuild/.claude-plugin/plugin.json +++ b/plugins/dotnet-msbuild/.claude-plugin/plugin.json @@ -14,8 +14,10 @@ "command": "dotnet", "args": [ "dnx", - "Microsoft.AITools.BinlogMcp", - "--yes" + "--yes", + "--source", + "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public/nuget/v3/index.json", + "Microsoft.AITools.BinlogMcp" ], "tools": ["*"] } diff --git a/plugins/dotnet-msbuild/.codex-plugin/.mcp.json b/plugins/dotnet-msbuild/.codex-plugin/.mcp.json index 7a2bec3a12..e75e6baa92 100644 --- a/plugins/dotnet-msbuild/.codex-plugin/.mcp.json +++ b/plugins/dotnet-msbuild/.codex-plugin/.mcp.json @@ -5,8 +5,10 @@ "command": "dotnet", "args": [ "dnx", - "Microsoft.AITools.BinlogMcp", - "--yes" + "--yes", + "--source", + "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public/nuget/v3/index.json", + "Microsoft.AITools.BinlogMcp" ], "tools": ["*"] } diff --git a/plugins/dotnet-msbuild/plugin.json b/plugins/dotnet-msbuild/plugin.json index 037e50426f..58c2867bb9 100644 --- a/plugins/dotnet-msbuild/plugin.json +++ b/plugins/dotnet-msbuild/plugin.json @@ -14,8 +14,10 @@ "command": "dotnet", "args": [ "dnx", - "Microsoft.AITools.BinlogMcp", - "--yes" + "--yes", + "--source", + "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public/nuget/v3/index.json", + "Microsoft.AITools.BinlogMcp" ], "tools": ["*"] } diff --git a/plugins/dotnet-msbuild/skills/binlog-failure-analysis/SKILL.md b/plugins/dotnet-msbuild/skills/binlog-failure-analysis/SKILL.md index a369a296dd..7227a7c61d 100644 --- a/plugins/dotnet-msbuild/skills/binlog-failure-analysis/SKILL.md +++ b/plugins/dotnet-msbuild/skills/binlog-failure-analysis/SKILL.md @@ -33,7 +33,7 @@ Use the available MCP server tools to query the binary log for: ## Fallback workflow — text-log replay (when MCP is unavailable) Use this only when the MCP server cannot be started (for example, on an older -SDK or in an offline environment without access to the `dotnet-tools` NuGet feed). +SDK or in an offline environment without access to the `dotnet-public` NuGet feed). ### Replay the binlog to text logs From d70cc01781babff56ea18248efbf9fa53f44494b Mon Sep 17 00:00:00 2001 From: Yuliia Kovalova <95473390+YuliiaKovalova@users.noreply.github.com> Date: Thu, 30 Jul 2026 18:33:13 +0200 Subject: [PATCH 2/2] Keep the package ID first in the dnx args Addresses review feedback. Both orderings resolve and start the server correctly (verified), but keeping `Microsoft.AITools.BinlogMcp` immediately after `dnx` matches the ordering already used in this repo and turns the change into a pure insertion of `--source` with no reordering noise. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: eef3a5cc-7c9b-41b2-88e5-fbc7e786f3f2 --- .claude-plugin/marketplace.json | 4 ++-- plugins/dotnet-msbuild/.claude-plugin/plugin.json | 4 ++-- plugins/dotnet-msbuild/.codex-plugin/.mcp.json | 4 ++-- plugins/dotnet-msbuild/plugin.json | 4 ++-- 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/.claude-plugin/marketplace.json b/.claude-plugin/marketplace.json index 7bb6788a40..90b6079291 100644 --- a/.claude-plugin/marketplace.json +++ b/.claude-plugin/marketplace.json @@ -34,10 +34,10 @@ "command": "dotnet", "args": [ "dnx", + "Microsoft.AITools.BinlogMcp", "--yes", "--source", - "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public/nuget/v3/index.json", - "Microsoft.AITools.BinlogMcp" + "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public/nuget/v3/index.json" ], "tools": ["*"] } diff --git a/plugins/dotnet-msbuild/.claude-plugin/plugin.json b/plugins/dotnet-msbuild/.claude-plugin/plugin.json index 58c2867bb9..9ad793523d 100644 --- a/plugins/dotnet-msbuild/.claude-plugin/plugin.json +++ b/plugins/dotnet-msbuild/.claude-plugin/plugin.json @@ -14,10 +14,10 @@ "command": "dotnet", "args": [ "dnx", + "Microsoft.AITools.BinlogMcp", "--yes", "--source", - "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public/nuget/v3/index.json", - "Microsoft.AITools.BinlogMcp" + "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public/nuget/v3/index.json" ], "tools": ["*"] } diff --git a/plugins/dotnet-msbuild/.codex-plugin/.mcp.json b/plugins/dotnet-msbuild/.codex-plugin/.mcp.json index e75e6baa92..b72ac200d4 100644 --- a/plugins/dotnet-msbuild/.codex-plugin/.mcp.json +++ b/plugins/dotnet-msbuild/.codex-plugin/.mcp.json @@ -5,10 +5,10 @@ "command": "dotnet", "args": [ "dnx", + "Microsoft.AITools.BinlogMcp", "--yes", "--source", - "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public/nuget/v3/index.json", - "Microsoft.AITools.BinlogMcp" + "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public/nuget/v3/index.json" ], "tools": ["*"] } diff --git a/plugins/dotnet-msbuild/plugin.json b/plugins/dotnet-msbuild/plugin.json index 58c2867bb9..9ad793523d 100644 --- a/plugins/dotnet-msbuild/plugin.json +++ b/plugins/dotnet-msbuild/plugin.json @@ -14,10 +14,10 @@ "command": "dotnet", "args": [ "dnx", + "Microsoft.AITools.BinlogMcp", "--yes", "--source", - "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public/nuget/v3/index.json", - "Microsoft.AITools.BinlogMcp" + "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public/nuget/v3/index.json" ], "tools": ["*"] }