package utils //nolint:revive //TODO: figure out a better name for this package
import "github.com/modelcontextprotocol/go-sdk/mcp"
func NewToolResultText(message string) *mcp.CallToolResult {
return &mcp.CallToolResult{
Content: []mcp.Content{
&mcp.TextContent{
Text: message,
},
},
}
}
func NewToolResultError(message string) *mcp.CallToolResult {
return &mcp.CallToolResult{
Content: []mcp.Content{
&mcp.TextContent{
Text: message,
},
},
IsError: true,
}
}
func NewToolResultErrorFromErr(message string, err error) *mcp.CallToolResult {
return &mcp.CallToolResult{
Content: []mcp.Content{
&mcp.TextContent{
Text: message + ": " + err.Error(),
},
},
IsError: true,
}
}
func NewToolResultResource(message string, contents *mcp.ResourceContents) *mcp.CallToolResult {
return &mcp.CallToolResult{
Content: []mcp.Content{
&mcp.TextContent{
Text: message,
},
&mcp.EmbeddedResource{
Resource: contents,
},
},
IsError: false,
}
}