Strengthen mcp-csharp-publish with prescriptive defaults - #935
Closed
leslierichardson95 wants to merge 1 commit into
Closed
Strengthen mcp-csharp-publish with prescriptive defaults#935leslierichardson95 wants to merge 1 commit into
leslierichardson95 wants to merge 1 commit into
Conversation
The cross-family eval (dotnet#889) flagged mcp-csharp-publish as inert (STRENGTHEN 0/5, mostly ties) because its guidance was too generic and non-prescriptive, so it rarely changed agent behavior vs. baseline. Add an opinionated 'Default decisions' block and make the previously optional/menu-style choices decisive so the skill produces different, better behavior than an unskilled run: - stdio -> NuGet.org as a .NET tool (dnx) - HTTP -> Azure Container Apps with --min-replicas 0 (scale to zero) - Always publish server.json to the MCP Registry for shared servers - Gate Azure App Service behind explicit user need (VNet, slots, existing plan) Refs dotnet#889 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 6a8ce111-58e5-48a7-9f7f-8de972bdc693
Contributor
There was a problem hiding this comment.
Pull request overview
Strengthens the mcp-csharp-publish skill in plugins/dotnet-ai by making it more prescriptive (defaulting to common publishing/deployment choices) to reduce “ties” vs. baseline in cross-family skills evaluation (#889).
Changes:
- Add a Default decisions section that sets prescriptive defaults (NuGet tool for stdio, Azure Container Apps for HTTP, Registry publication, and version consistency).
- Reinforce the MCP Registry step as the default for shared servers (skip only for private/internal).
- Make Step 3 more decisive by defaulting to Container Apps and explicitly gating App Service behind specific requirements.
Comments suppressed due to low confidence (1)
plugins/dotnet-ai/skills/mcp-csharp-publish/SKILL.md:69
- This note refers to
server.json, but later steps use the path.mcp/server.json. Using the same path here avoids ambiguity about which file should be published.
> **Default:** publish `server.json` to the MCP Registry (Step 4) for every shared server — skip it only for private/internal servers.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Comment on lines
+29
to
+30
| | MCP Registry | **Always publish `server.json`** | Discoverability is free and expected for shared servers | | ||
| | Versioning | Keep `.csproj` `<Version>`, `server.json` root `version`, and `packages[].version` **identical** | A mismatch fails Registry validation | |
Contributor
Author
|
Superseded by #939, which moves this change to a branch on the primary dotnet/skills repo. Closing this fork PR. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
Strengthens the
mcp-csharp-publishskill so it changes agent behavior instead of tying with the no-skill baseline.Why
The cross-family skills-eval (#889) rated
mcp-csharp-publishSTRENGTHEN 0/5 with the diagnosis "mostly ties — too generic/non-prescriptive." The skill listed options (NuGet or Docker, Container Apps or App Service, Registry optional) without deciding, so a skilled run rarely differed from baseline.Changes
dnx)--min-replicas 0(scale to zero)server.jsonto the MCP Registry for shared servers.csproj/server.jsonNo new heavy content — the skill is already token-efficient; this sharpens decisiveness only.
Verification
skill-validator checkruns in CI. Recommend a cross-family eval re-run (-f skills="mcp-csharp-publish" -f executors="opus,gpt" -f runs=5) to confirm the ties convert to wins.Refs #889