Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Use structs from updated SDK#886

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to ourterms of service andprivacy statement. We’ll occasionally send you account related emails.

Already on GitHub?Sign in to your account

Merged
almaleksia merged 1 commit intomainfromuse-sdk-structs
Aug 14, 2025
Merged
Changes fromall commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
38 changes: 13 additions & 25 deletionspkg/toolsets/toolsets.go
View file
Open in desktop
Original file line numberDiff line numberDiff line change
Expand Up@@ -33,32 +33,20 @@ func NewServerTool(tool mcp.Tool, handler server.ToolHandlerFunc) server.ServerT
return server.ServerTool{Tool: tool, Handler: handler}
}

func NewServerResourceTemplate(resourceTemplate mcp.ResourceTemplate, handler server.ResourceTemplateHandlerFunc) ServerResourceTemplate {
return ServerResourceTemplate{
resourceTemplate: resourceTemplate,
handler: handler,
func NewServerResourceTemplate(resourceTemplate mcp.ResourceTemplate, handler server.ResourceTemplateHandlerFunc)server.ServerResourceTemplate {
returnserver.ServerResourceTemplate{
Template: resourceTemplate,
Handler: handler,
}
}

func NewServerPrompt(prompt mcp.Prompt, handler server.PromptHandlerFunc) ServerPrompt {
return ServerPrompt{
func NewServerPrompt(prompt mcp.Prompt, handler server.PromptHandlerFunc)server.ServerPrompt {
returnserver.ServerPrompt{
Prompt: prompt,
Handler: handler,
}
}

// ServerResourceTemplate represents a resource template that can be registered with the MCP server.
type ServerResourceTemplate struct {
resourceTemplate mcp.ResourceTemplate
handler server.ResourceTemplateHandlerFunc
}

// ServerPrompt represents a prompt that can be registered with the MCP server.
type ServerPrompt struct {
Prompt mcp.Prompt
Handler server.PromptHandlerFunc
}

// Toolset represents a collection of MCP functionality that can be enabled or disabled as a group.
type Toolset struct {
Name string
Expand All@@ -69,9 +57,9 @@ type Toolset struct {
readTools []server.ServerTool
// resources are not tools, but the community seems to be moving towards namespaces as a broader concept
// and in order to have multiple servers running concurrently, we want to avoid overlapping resources too.
resourceTemplates []ServerResourceTemplate
resourceTemplates []server.ServerResourceTemplate
// prompts are also not tools but are namespaced similarly
prompts []ServerPrompt
prompts []server.ServerPrompt
}

func (t *Toolset) GetActiveTools() []server.ServerTool {
Expand DownExpand Up@@ -105,24 +93,24 @@ func (t *Toolset) RegisterTools(s *server.MCPServer) {
}
}

func (t *Toolset) AddResourceTemplates(templates ...ServerResourceTemplate) *Toolset {
func (t *Toolset) AddResourceTemplates(templates ...server.ServerResourceTemplate) *Toolset {
t.resourceTemplates = append(t.resourceTemplates, templates...)
return t
}

func (t *Toolset) AddPrompts(prompts ...ServerPrompt) *Toolset {
func (t *Toolset) AddPrompts(prompts ...server.ServerPrompt) *Toolset {
t.prompts = append(t.prompts, prompts...)
return t
}

func (t *Toolset) GetActiveResourceTemplates() []ServerResourceTemplate {
func (t *Toolset) GetActiveResourceTemplates() []server.ServerResourceTemplate {
if !t.Enabled {
return nil
}
return t.resourceTemplates
}

func (t *Toolset) GetAvailableResourceTemplates() []ServerResourceTemplate {
func (t *Toolset) GetAvailableResourceTemplates() []server.ServerResourceTemplate {
return t.resourceTemplates
}

Expand All@@ -131,7 +119,7 @@ func (t *Toolset) RegisterResourcesTemplates(s *server.MCPServer) {
return
}
for _, resource := range t.resourceTemplates {
s.AddResourceTemplate(resource.resourceTemplate, resource.handler)
s.AddResourceTemplate(resource.Template, resource.Handler)
}
}

Expand Down
Loading

[8]ページ先頭

©2009-2025 Movatter.jp