Class CallToolResult
- Namespace
- ModelContextProtocol.Protocol
- Assembly
- ModelContextProtocol.Core.dll
Represents the result of a ToolsCall request from a client to invoke a tool provided by the server.
public sealed class CallToolResult : Result
- Inheritance
-
CallToolResult
- Inherited Members
Remarks
Any errors that originate from the tool should be reported inside the result object, with IsError set to true, rather than as a JsonRpcError.
However, any errors in finding the tool, an error indicating that the server does not support tool calls, or any other exceptional conditions, should be reported as an MCP error response.
See the schema for details.
Properties
Content
Gets or sets the response content from the tool call.
[JsonPropertyName("content")]
public IList<ContentBlock> Content { get; set; }
Property Value
IsError
Gets or sets an indication of whether the tool call was unsuccessful.
[JsonPropertyName("isError")]
public bool IsError { get; set; }
Property Value
Remarks
When set to true, it signifies that the tool execution failed. Tool errors are reported with this property set to true and details in the Content property, rather than as protocol-level errors. This allows LLMs to see that an error occurred and potentially self-correct in subsequent requests.
StructuredContent
Gets or sets an optional JSON object representing the structured result of the tool call.
[JsonPropertyName("structuredContent")]
public JsonNode? StructuredContent { get; set; }