# AiTool class

Namespace: [Grasshopper2.Components.Descriptive](https://developer.rhino3d.com/api/gh2/namespace/grasshopper2.components.descriptive.md) · Assembly: [Grasshopper2](https://developer.rhino3d.com/api/gh2/assembly/grasshopper2.md)

```cs
public sealed class AiTool
```

Definition of a tool that the model is allowed to invoke. The provider sends the name, description, and JSON Schema for the parameters on every call, and the model emits an [AiToolCall](https://developer.rhino3d.com/api/gh2/type/grasshopper2.components.descriptive.aitoolcall.md) matching one of the offered tools.

## Constructors

- [AiTool](https://developer.rhino3d.com/api/gh2/type/grasshopper2.components.descriptive.aitool/ctor.md)

## Properties

- [Description](https://developer.rhino3d.com/api/gh2/type/grasshopper2.components.descriptive.aitool/description.md): Plain-English description telling the model when to use the tool.
- [Name](https://developer.rhino3d.com/api/gh2/type/grasshopper2.components.descriptive.aitool/name.md): Stable identifier the model uses to invoke this tool.
- [ParametersJsonSchema](https://developer.rhino3d.com/api/gh2/type/grasshopper2.components.descriptive.aitool/parametersjsonschema.md): JSON Schema describing the tool's parameters object.
