Package io.modelcontextprotocol.spec
Record Class McpSchema.Tool
java.lang.Object
java.lang.Record
io.modelcontextprotocol.spec.McpSchema.Tool
- Record Components:
name- A unique identifier for the tool. This name is used when calling the tool.title- A human-readable title for the tool.description- A human-readable description of what the tool does. This can be used by clients to improve the LLM's understanding of available tools.inputSchema- A JSON Schema object that describes the expected structure of the arguments when calling this tool. This allows clients to validate tooloutputSchema- An optional JSON Schema object defining the structure of the tool's output returned in the structuredContent field of a CallToolResult.annotations- Optional additional tool information.meta- See specification for notes on _meta usage
- Enclosing class:
- McpSchema
public static record McpSchema.Tool(String name, String title, String description, McpSchema.JsonSchema inputSchema, Map<String,Object> outputSchema, McpSchema.ToolAnnotations annotations, Map<String,Object> meta)
extends Record
Represents a tool that the server provides. Tools enable servers to expose
executable functionality to the system. Through these tools, you can interact with
external systems, perform computations, and take actions in the real world.
-
Nested Class Summary
Nested Classes -
Constructor Summary
ConstructorsConstructorDescriptionTool(String name, String description, McpSchema.JsonSchema inputSchema, McpSchema.ToolAnnotations annotations) Deprecated.Only exists for backwards-compatibility purposes.Deprecated.Only exists for backwards-compatibility purposes.Tool(String name, String title, String description, McpSchema.JsonSchema inputSchema, Map<String, Object> outputSchema, McpSchema.ToolAnnotations annotations, Map<String, Object> meta) Creates an instance of aToolrecord class.Tool(String name, String description, String schema, McpSchema.ToolAnnotations annotations) Deprecated.Only exists for backwards-compatibility purposes.Tool(String name, String description, String inputSchema, String outputSchema, McpSchema.ToolAnnotations annotations) Deprecated.Only exists for backwards-compatibility purposes.Tool(String name, String title, String description, String inputSchema, String outputSchema, McpSchema.ToolAnnotations annotations) Deprecated.Only exists for backwards-compatibility purposes. -
Method Summary
Modifier and TypeMethodDescriptionReturns the value of theannotationsrecord component.static McpSchema.Tool.Builderbuilder()Returns the value of thedescriptionrecord component.final booleanIndicates whether some other object is "equal to" this one.final inthashCode()Returns a hash code value for this object.Returns the value of theinputSchemarecord component.meta()Returns the value of themetarecord component.name()Returns the value of thenamerecord component.Returns the value of theoutputSchemarecord component.title()Returns the value of thetitlerecord component.final StringtoString()Returns a string representation of this record class.
-
Constructor Details
-
Tool
@Deprecated public Tool(String name, String description, McpSchema.JsonSchema inputSchema, McpSchema.ToolAnnotations annotations) Deprecated.Only exists for backwards-compatibility purposes. Usebuilder()instead. -
Tool
Deprecated.Only exists for backwards-compatibility purposes. Usebuilder()instead. -
Tool
@Deprecated public Tool(String name, String description, String schema, McpSchema.ToolAnnotations annotations) Deprecated.Only exists for backwards-compatibility purposes. Usebuilder()instead. -
Tool
@Deprecated public Tool(String name, String description, String inputSchema, String outputSchema, McpSchema.ToolAnnotations annotations) Deprecated.Only exists for backwards-compatibility purposes. Usebuilder()instead. -
Tool
@Deprecated public Tool(String name, String title, String description, String inputSchema, String outputSchema, McpSchema.ToolAnnotations annotations) Deprecated.Only exists for backwards-compatibility purposes. Usebuilder()instead. -
Tool
public Tool(String name, String title, String description, McpSchema.JsonSchema inputSchema, Map<String, Object> outputSchema, McpSchema.ToolAnnotations annotations, Map<String, Object> meta) Creates an instance of aToolrecord class.- Parameters:
name- the value for thenamerecord componenttitle- the value for thetitlerecord componentdescription- the value for thedescriptionrecord componentinputSchema- the value for theinputSchemarecord componentoutputSchema- the value for theoutputSchemarecord componentannotations- the value for theannotationsrecord componentmeta- the value for themetarecord component
-
-
Method Details
-
builder
-
toString
Returns a string representation of this record class. The representation contains the name of the class, followed by the name and value of each of the record components. -
hashCode
public final int hashCode()Returns a hash code value for this object. The value is derived from the hash code of each of the record components. -
equals
Indicates whether some other object is "equal to" this one. The objects are equal if the other object is of the same class and if all the record components are equal. All components in this record class are compared withObjects::equals(Object,Object). -
name
Returns the value of thenamerecord component.- Returns:
- the value of the
namerecord component
-
title
Returns the value of thetitlerecord component.- Returns:
- the value of the
titlerecord component
-
description
Returns the value of thedescriptionrecord component.- Returns:
- the value of the
descriptionrecord component
-
inputSchema
Returns the value of theinputSchemarecord component.- Returns:
- the value of the
inputSchemarecord component
-
outputSchema
Returns the value of theoutputSchemarecord component.- Returns:
- the value of the
outputSchemarecord component
-
annotations
Returns the value of theannotationsrecord component.- Returns:
- the value of the
annotationsrecord component
-
meta
Returns the value of themetarecord component.- Returns:
- the value of the
metarecord component
-