Description
Is your feature request related to a problem? Please describe.
I'm attempting to build out a .NET implementation of server-everything
and one of the features is the Tiny Image Tool which returns a combination of text and image messages (https://github.com/modelcontextprotocol/servers/blob/e328131d99847e1eae33c7a6a8156fd217cf984f/src/everything/everything.ts#L460-L479). If you implement a McpTool
method you are unable to return something that can have different content types, as the return value is always serialized to a content type of text.
Describe the solution you'd like
Some way in which you can return a different content type/collection of content types, without having to fallback to implementing a CallToolHandler
.
Describe alternatives you've considered
Implementing as a CallToolHandler
.
Additional context
Sample: https://github.com/aaronpowell/modelcontextprotocol-csharp-sdk/blob/dotnet-everything/samples/EverythingServer/Tools/TinyImageTool.cs