Prerelease This site documents an alpha of libtmux. Its structure, URLs and APIs are subject to change.

ToolDefinition

Swift
  • Python Unavailable
  • Ruby Unavailable
  • Lua Unavailable
  • TypeScript Unavailable
  • Rust Unavailable
  • Go Unavailable
  • Java Unavailable
  • .NET Unavailable
  • C++ Unavailable
  • Swift

API reference · Markdown

struct ToolDefinition : struct ToolDefinition
struct [source]
struct [source]
struct ToolDefinition

One MCP tool as a client sees it: what to call it, and what it is for.

The prose fields are the model's only basis for choosing between tools, so they carry the distinction rather than restating the name — see summary and the guidance after it.

Members

name

name : let name: String
property [source]
property [source]
name

What the client names in a ToolCall .

title

title : let title: String
property [source]
property [source]
title

A short human label, shown by clients that render one.

summary

summary : let summary: String
property [source]
property [source]
summary

What the tool answers, for a model choosing between them. First line of the description, and the only part some clients show.

detail

detail : let detail: String
property [source]
property [source]
detail

When to reach for this one rather than a neighbour, and what the result means. Empty for tools whose summary says everything.

arguments

arguments : let arguments: [ToolArgument]
property [source]
property [source]
arguments

outputSchema

outputSchema : let outputSchema: JSONValue?
property [source]
property [source]
outputSchema

What the tool answers with, when that shape is guaranteed. Declared only where it is: MCP requires structuredContent to conform to this, so a schema the server may break is worse than none at all.

toolset

toolset : let toolset: Toolset
property [source]
property [source]
toolset

processReach

processReach : let processReach: ProcessReach
property [source]
property [source]
processReach

tmuxEffects

tmuxEffects : let tmuxEffects: Set<TmuxEffect>
property [source]
property [source]
tmuxEffects

outputClasses

outputClasses : let outputClasses: Set<OutputClass>
property [source]
property [source]
outputClasses

mayExposeSecrets

mayExposeSecrets : let mayExposeSecrets: Bool
property [source]
property [source]
mayExposeSecrets

mayReturnUntrustedContent

mayReturnUntrustedContent : let mayReturnUntrustedContent: Bool
property [source]
property [source]
mayReturnUntrustedContent

explicitAnnotations

explicitAnnotations : let explicitAnnotations: ToolAnnotations
property [source]
property [source]
explicitAnnotations

inputSinks

inputSinks : let inputSinks: [String : Set<InputSink>]
property [source]
property [source]
inputSinks

nestedAuthority

nestedAuthority : let nestedAuthority: Set<String>
property [source]
property [source]
nestedAuthority

amplifiesFutureInput

amplifiesFutureInput : let amplifiesFutureInput: Bool
property [source]
property [source]
amplifiesFutureInput
Esc

Type to search.