Conversation
This was referenced Sep 23, 2026
oveddan
added a commit
to oveddan/chromatik-mcp
that referenced
this pull request
Sep 23, 2026
Packages agent-plugin/skills/ into the jar and exposes each file as a skill://<name>/<path> MCP resource (SEP-2640's resource-mapping half), so a client that connects to chromatik-mcp gets the driving-chromatik house rules without installing the agent plugin, and the served text is version-locked to the jar rather than a separately-installed copy. The server's INSTRUCTIONS now point the model at skill://driving-chromatik/SKILL.md. SEP-2640's skills/list and skills/get methods (and the extensions capability) are deliberately deferred: the MCP Java SDK 2.0.0-RC1's ServerCapabilities is a fixed record and its request handlers are private, with no seam for either — they wait on modelcontextprotocol/java-sdk#1141. A client can still read every skill file directly via resources/read in the meantime, which is the baseline SEP-2640 guarantees. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
oveddan
added a commit
to oveddan/chromatik-mcp
that referenced
this pull request
Sep 23, 2026
Packages agent-plugin/skills/ into the jar and exposes each file as a skill://<name>/<path> MCP resource (SEP-2640's resource-mapping half), so a client that connects to chromatik-mcp gets the driving-chromatik house rules without installing the agent plugin, and the served text is version-locked to the jar rather than a separately-installed copy. The server's INSTRUCTIONS now point the model at skill://driving-chromatik/SKILL.md. SEP-2640's skills/list and skills/get methods (and the extensions capability) are deliberately deferred: the MCP Java SDK 2.0.0-RC1's ServerCapabilities is a fixed record and its request handlers are private, with no seam for either — they wait on modelcontextprotocol/java-sdk#1141. A client can still read every skill file directly via resources/read in the meantime, which is the baseline SEP-2640 guarantees. Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
This branch has not been deployed
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.
Closes #1140
Motivation and Context
Adds support for the SEP-2640 Skills extension.
This enables Java MCP clients to discover and retrieve Agent Skills, and stateless Java MCP servers to advertise and serve them. The implementation adds the extension schema and endpoints (
skills/list,skills/get, and optionalresources/directory/read), client APIs, server registration APIs, manifest validation, documentation, and tests.This aligns the Java SDK with existing implementations in:
How Has This Been Tested?
./mvnw clean test.Breaking Changes
No. This change adds new APIs and protocol types without changing existing behavior.
Types of changes
Checklist
Additional context
I prepared this implementation before realizing that the project prefers discussion with maintainers before non-trivial changes are submitted. I would appreciate feedback on the scope and API design, and I am happy to revise the implementation based on maintainer guidance.