Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

SEP-2640: Skills Extension

Open
#568 0 comments 0 reactions 1 assignee View on GitHub

@koic is already working on this.

Since Sep 22, 2026.

Assessment

This issue has not been assessed yet.

Description

enhancement

Requesting support for SEP-2640 (Skills Extension, Extensions Track, Final), which serves Agent Skills over the existing Resources primitive.

Nothing in the SDK covers it today: no skills/* constants in lib/mcp/methods.rb, no helper module, and no match for skill anywhere under lib/ on main (1.6.0). ROADMAP.md names DPoP, workload identity federation, and the tasks extension as the unimplemented extensions — skills isn't listed.

What a server declaring the extension owes
  • skills/list and skills/get — both MUST
  • resources/directory/read — optional, gated behind directoryRead: true
  • the SEP-2133 capabilities.extensions fragment io.modelcontextprotocol/skills, alongside a declared resources capability
  • on 2026-07-28, skills/list results carry the SEP-2549 ttlMs/cacheScope hints
Prior art in the other official SDKs
  • python-sdk: modelcontextprotocol/python-sdk#3486, modelcontextprotocol/python-sdk#3485
  • typescript-sdk: modelcontextprotocol/typescript-sdk#2798, modelcontextprotocol/typescript-sdk#2818
  • go-sdk: modelcontextprotocol/go-sdk#1238, modelcontextprotocol/go-sdk#1240
  • csharp-sdk: modelcontextprotocol/csharp-sdk#1863, modelcontextprotocol/csharp-sdk#1864
Notes

MCP::Apps looks like the shape this would take: a helper module for an Extensions-Track SEP, with Capabilities#support_extensions for negotiation and the resources primitive underneath.

Most of it can be assembled today from define_custom_method plus resources_read_handler, and a custom method's result does get resultType stamped on the modern path. The SEP-2549 hints don't follow: Server::CACHEABLE_RESULT_METHODS is frozen and consulted internally, so a hand-rolled skills/list has to merge ttlMs/cacheScope into its own result. Worth folding into whatever first-class support lands.

Dominant language
Ruby
Stars
914
Forks
133
Avg merge
1d 10m
Merged PRs (30d)
33

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from modelcontextprotocol/ruby-sdk

All issues in modelcontextprotocol/ruby-sdk

Similar issues

More Ruby issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.