Extension
Extension Support Matrix
Which MCP clients implement which official extensions
This matrix shows which MCP clients support each official extension. Extensions are always opt-in: a client only uses an extension if both client and server declare support in the extensions field of their capabilities.
Extension overview
| Extension | Identifier | Description |
|---|---|---|
| MCP Apps | io.modelcontextprotocol/ui |
Interactive HTML interfaces rendered inline in the conversation |
| OAuth Client Credentials | io.modelcontextprotocol/oauth-client-credentials |
Machine-to-machine auth without interactive user login |
| Enterprise-Managed Authorization | io.modelcontextprotocol/enterprise-managed-authorization |
Centralized access control via enterprise IdP |
| Skills over MCP | io.modelcontextprotocol/skills |
Discover skills and read their instructions and supporting files |
Support matrix
Adding extension support to your client
If you're building an MCP client and want to implement extension support:
- Review the extension specification (e.g., in the ext-auth or ext-apps repository)
- Declare support in the
extensionsfield of theio.modelcontextprotocol/clientCapabilitiesyour client sends in each request's_meta, and read the server'sextensionsfrom itsserver/discoverresponse - Implement the extension's protocol requirements
- Submit a pull request to update this matrix
See Extensions Overview for details on the capability negotiation mechanism.