---
title: "ToolDef"
sidebar_label: "ToolDef"
description: "Kotlin binding reference: ToolDef."
---

<!-- Generated by tools/api_reference/generate_api_docs.py. Do not edit. -->

//[clika-runtime](../../../index.md)/[io.clika.modelverse](../index.md)/[ToolDef](index.md)

# ToolDef

[common]\
data class [ToolDef](index.md)(val name: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html), val description: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) = &quot;&quot;, val parametersJson: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) = &quot;{}&quot;)

One tool a request offers: the function's [name](name.md), its [description](description.md) and its parameters as a JSON schema document ([parametersJson](parametersJson.md), an object; `{}` takes no arguments). The chat template renders the offer, and the reply's calls are read against the names.

## Constructors

| | |
|---|---|
| [ToolDef](ToolDef.md) | [common]<br>constructor(name: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html), description: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) = &quot;&quot;, parametersJson: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) = &quot;{}&quot;) |

## Properties

| Name | Summary |
|---|---|
| [description](description.md) | [common]<br>val [description](description.md): [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) |
| [name](name.md) | [common]<br>val [name](name.md): [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) |
| [parametersJson](parametersJson.md) | [common]<br>val [parametersJson](parametersJson.md): [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) |