Skip to content

Commit 118f25c

Browse files
feat: replace server instructions with skill resources
Replace the server instructions system with MCP skill resources that follow the skill:// URI convention for discovery by MCP clients. Each skill resource covers a domain of tools and provides YAML frontmatter (name, description, allowed-tools) plus markdown guidance. All tools remain available by default (all tools mode). Skills provide contextual guidance that clients can discover via resources/list. 16 skills covering all toolsets: context, repos, issues, pull-requests, code-security, actions, discussions, projects, notifications, gists, users-orgs, security-advisories, labels, git, stargazers, copilot. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
1 parent 4bded57 commit 118f25c

12 files changed

Lines changed: 621 additions & 468 deletions

File tree

internal/ghmcp/server.go

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -143,7 +143,6 @@ func NewStdioMCPServer(ctx context.Context, cfg github.MCPServerConfig) (*mcp.Se
143143
WithToolsets(github.ResolvedEnabledToolsets(cfg.DynamicToolsets, cfg.EnabledToolsets, cfg.EnabledTools)).
144144
WithTools(github.CleanTools(cfg.EnabledTools)).
145145
WithExcludeTools(cfg.ExcludeTools).
146-
WithServerInstructions().
147146
WithFeatureChecker(featureChecker)
148147

149148
// Apply token scope filtering if scopes are known (for PAT filtering)

pkg/github/server.go

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,6 @@ type MCPServerOption func(*mcp.ServerOptions)
8181
func NewMCPServer(ctx context.Context, cfg *MCPServerConfig, deps ToolDependencies, inv *inventory.Inventory, middleware ...mcp.Middleware) (*mcp.Server, error) {
8282
// Create the MCP server
8383
serverOpts := &mcp.ServerOptions{
84-
Instructions: inv.Instructions(),
8584
Logger: cfg.Logger,
8685
CompletionHandler: CompletionsHandler(deps.GetClient),
8786
}
@@ -125,6 +124,9 @@ func NewMCPServer(ctx context.Context, cfg *MCPServerConfig, deps ToolDependenci
125124
registerDynamicTools(ghServer, inv, deps, cfg.Translator)
126125
}
127126

127+
// Register skill resources for MCP clients that support skills-based discovery
128+
RegisterSkillResources(ghServer)
129+
128130
return ghServer, nil
129131
}
130132

0 commit comments

Comments
 (0)