Skip to content

Unpin the Skills sample links and consolidate the frontmatter-verification docs - #1

Merged
girishkvs merged 2 commits into
girishkvs:skills_sep2640from
PederHP:docs/skills-1856-consolidation
Oct 13, 2026
Merged

girishkvs merged 2 commits into
girishkvs:skills_sep2640from
PederHP:docs/skills-1856-consolidation

Conversation

@PederHP

@PederHP PederHP commented Oct 12, 2026 •

Copy link
Copy Markdown

Thanks for carrying modelcontextprotocol#1864 over, @girishkvs. I'm happy to consolidate on modelcontextprotocol#1856 and will close modelcontextprotocol#1864 in its favour. This PR targets your skills_sep2640 branch with two small follow-ups.

What I checked

What this PR changes

  1. Sample links back on main (80f9a315). The docs page pinned both sample links to the Add the Skills extension (SEP-2640) as ModelContextProtocol.Extensions.Skills modelcontextprotocol/csharp-sdk#1864 head commit. That works before merge, but afterwards it points readers at a frozen PR commit. Every other concepts page links samples under tree/main.

  2. The frontmatter-verification caveat, said once per place it applies (0d936156). The point is correct and the spec requires it of hosts, but 6b0870cb repeats it across about ten API remarks, the docs page and both sample READMEs, sometimes several times on one type. I kept it where a reader acts on it:

    • SkillVerifier: the host's obligation, how to meet it with SkillFrontmatter.Parse + JsonNode.DeepEquals, and the full-parser alternative. The client extensions class, SkillFrontmatter and ReadSkillResourceAsync point there.
    • Skill.Frontmatter and IMcpSkillCatalog: the entry must match the file, and the SDK checks structure only.
    • McpServerSkill.Create(uri, JsonObject, files): what is still checked, and what the caller owns when the reader stops at unsupported YAML. The other explicit overload refers to it.
    • Docs page: a shorter responsibility table (server via McpServerSkill / server via custom catalog / host). Your host verification example in "Consuming skills" stays as is.

    The meaning of every statement is unchanged; this only removes repetition (86 insertions, 146 deletions). Your sample Program.cs change, which verifies frontmatter before displaying the file, is kept.

No code changes. The Skills package builds clean with warnings as errors on all target frameworks, and all 470 Skills tests pass on net10.0.

One more thing for modelcontextprotocol#1856

The modelcontextprotocol#1856 description still describes the original PR (for example, it says client wrappers are not included), so a reviewer arriving there gets the wrong picture. The real summary is only in your comment. Feel free to reuse whatever is useful from the modelcontextprotocol#1864 description. The "Relationship to modelcontextprotocol#1856" and "Authorship" sections would need inverting, of course.

🤖 Generated with Claude Code

PederHP and others added 2 commits October 12, 2026 18:22
The docs page pinned both sample links to the modelcontextprotocol#1864 head commit so they
resolve before merge. After merge that points readers at a frozen PR
commit; every other concepts page links samples under tree/main.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01QNCtb94vqDmohN9UWoGV3U
6b0870c clarified who verifies frontmatter, which the spec requires of
hosts. The clarification was repeated across about ten API remarks, the
docs page, and both sample READMEs. Keep it where a reader acts on it:

- SkillVerifier: the host's obligation, how to meet it with
  SkillFrontmatter.Parse and JsonNode.DeepEquals, and the full-parser
  alternative. The client extensions, SkillFrontmatter and
  ReadSkillResourceAsync point there.
- Skill.Frontmatter and IMcpSkillCatalog: the entry must match the file,
  and the SDK checks structure only.
- McpServerSkill.Create with explicit frontmatter: what is still checked
  and what the caller owns when the reader stops at unsupported YAML. The
  other overloads refer to it.
- Docs page: one responsibility table plus the existing sections, with the
  host example from 6b0870c kept.

No behavior change; the meaning of every statement is unchanged.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01QNCtb94vqDmohN9UWoGV3U

@girishkvs girishkvs left a comment •

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

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

Thanks. LGTM.

@girishkvs
girishkvs merged commit c424d4f into girishkvs:skills_sep2640 Oct 13, 2026
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.

2 participants