ToolAnnotations

data class ToolAnnotations(val title: String?, val readOnlyHint: Boolean? = false, val destructiveHint: Boolean? = true, val idempotentHint: Boolean? = false, val openWorldHint: Boolean? = true)(source)

Additional properties describing a Tool to clients.

NOTE: all properties in ToolAnnotations are hints. They are not guaranteed to provide a faithful description of tool behavior (including descriptive properties like title).

Clients should never make tool use decisions based on ToolAnnotations received from untrusted servers.

Constructors

Link copied to clipboard
constructor(title: String?, readOnlyHint: Boolean? = false, destructiveHint: Boolean? = true, idempotentHint: Boolean? = false, openWorldHint: Boolean? = true)

Properties

Link copied to clipboard

If true, the tool may perform destructive updates to its environment. If false, the tool performs only additive updates.

Link copied to clipboard
val idempotentHint: Boolean? = false

If true, calling the tool repeatedly with the same arguments will have no additional effect on the its environment.

Link copied to clipboard
val openWorldHint: Boolean? = true

If true, this tool may interact with an "open world" of external entities. If false, the tool's domain of interaction is closed. For example, the world of a web search tool is open, whereas that of a memory tool is not.

Link copied to clipboard
val readOnlyHint: Boolean? = false

If true, the tool does not modify its environment.

Link copied to clipboard

A human-readable title for the tool.