Skip to content

Allow servers / clients to advertize extensions in the capability object#1630

Open
chughtapan wants to merge 6 commits intomodelcontextprotocol:mainfrom
chughtapan:groups/extensions-capability
Open

Allow servers / clients to advertize extensions in the capability object#1630
chughtapan wants to merge 6 commits intomodelcontextprotocol:mainfrom
chughtapan:groups/extensions-capability

Conversation

@chughtapan
Copy link

According to SEP-2133, the protocol supports extensions which be be advertised in the capabilities object. This PR adds this field to the SDK

Motivation and Context

This enables extensions to build upon the typescript-sdk

How Has This Been Tested?

Existing and new tests pass.

Breaking Changes

No

Types of changes

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to change)
  • Documentation update

Checklist

  • I have read the MCP Documentation
  • My code follows the repository's style guidelines
  • New and existing tests pass locally
  • I have added appropriate error handling
  • I have added or updated documentation as needed

Additional context

chughtapan and others added 3 commits March 4, 2026 22:33
Extensions currently must use the experimental field as a workaround.
This adds a dedicated extensions field (record of URI → object) to
ServerCapabilitiesSchema, enabling capabilities like
extensions["io.modelcontextprotocol/grouping"]: { listChanged: true }.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Use "extension identifiers" (vendor-prefix/extension-name) instead
of "URIs" per the SEP-2133 Extensions specification.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@chughtapan chughtapan requested a review from a team as a code owner March 5, 2026 06:51
@changeset-bot
Copy link

changeset-bot bot commented Mar 5, 2026

⚠️ No Changeset found

Latest commit: 1b73042

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

@pkg-pr-new
Copy link

pkg-pr-new bot commented Mar 5, 2026

Open in StackBlitz

@modelcontextprotocol/client

npm i https://pkg.pr.new/modelcontextprotocol/typescript-sdk/@modelcontextprotocol/client@1630

@modelcontextprotocol/server

npm i https://pkg.pr.new/modelcontextprotocol/typescript-sdk/@modelcontextprotocol/server@1630

@modelcontextprotocol/express

npm i https://pkg.pr.new/modelcontextprotocol/typescript-sdk/@modelcontextprotocol/express@1630

@modelcontextprotocol/hono

npm i https://pkg.pr.new/modelcontextprotocol/typescript-sdk/@modelcontextprotocol/hono@1630

@modelcontextprotocol/node

npm i https://pkg.pr.new/modelcontextprotocol/typescript-sdk/@modelcontextprotocol/node@1630

commit: 5485e5c

@chughtapan chughtapan changed the title Groups/extensions capability Allow servers / clients to advertize extensions in the capability object Mar 5, 2026
@dmytrobaltak
Copy link

Needs to be both on client and server #1475

chughtapan and others added 2 commits March 5, 2026 09:03
Addresses PR feedback: extensions need to be on both client and server
capability objects per SEP-2133.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
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