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, } } func NewToolResultResourceLink(message string, link *mcp.ResourceLink) *mcp.CallToolResult { return &mcp.CallToolResult{ Content: []mcp.Content{ &mcp.TextContent{ Text: message, }, link, }, IsError: false, } }