---
title: Transcript.ToolDefinition
framework: foundationmodels
role: symbol
role_heading: Structure
path: foundationmodels/transcript/tooldefinition
---

# Transcript.ToolDefinition

A definition of a tool.

## Declaration

```swift
struct ToolDefinition
```

## Topics

### Creating a tool definition

- [init(name:description:parameters:)](foundationmodels/transcript/tooldefinition/init(name:description:parameters:).md)
- [init(tool:)](foundationmodels/transcript/tooldefinition/init(tool:).md)

### Inspecting a tool definition

- [description](foundationmodels/transcript/tooldefinition/description.md)
- [name](foundationmodels/transcript/tooldefinition/name.md)
- [parameters](foundationmodels/transcript/tooldefinition/parameters.md)

## Relationships

### Conforms To

- [Equatable](swift/equatable.md)
- [Sendable](swift/sendable.md)
- [SendableMetatype](swift/sendablemetatype.md)

## See Also

### Constructing content

- [Transcript.TextSegment](foundationmodels/transcript/textsegment.md)
- [Transcript.StructuredSegment](foundationmodels/transcript/structuredsegment.md)
- [Transcript.ResponseFormat](foundationmodels/transcript/responseformat.md)
- [Transcript.AttachmentSegment](foundationmodels/transcript/attachmentsegment.md)
- [Transcript.ImageAttachment](foundationmodels/transcript/imageattachment.md)
- [Transcript.Instructions](foundationmodels/transcript/instructions.md)
- [Transcript.Prompt](foundationmodels/transcript/prompt.md)
- [Transcript.Reasoning](foundationmodels/transcript/reasoning.md)
- [Transcript.Response](foundationmodels/transcript/response.md)
- [Transcript.ToolCall](foundationmodels/transcript/toolcall.md)
- [Transcript.ToolCalls](foundationmodels/transcript/toolcalls.md)
- [Transcript.ToolOutput](foundationmodels/transcript/tooloutput.md)
- [Transcript.CustomSegment](foundationmodels/transcript/customsegment.md)
