> For the complete documentation index, see [llms.txt](https://docs.wisej.com/ai/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.wisej.com/ai/components/api/smarttool/wisej.ai.smarttool.itoolprovider.md).

# SmartTool.IToolProvider

Namespace: **Wisej.AI**

Assembly: **Wisej.AI** (3.5.0.0)

Represents a provider that supplies tools.

{% tabs %}
{% tab title="C#" %}

```csharp
public interface IToolProvider
```

{% endtab %}

{% tab title="VB.NET" %}

```visual-basic
Public Interface IToolProvider
```

{% endtab %}
{% endtabs %}

## Properties

### ![](/files/ptrKjmmRoQB76pvrIqh0) HasTools

[Boolean](https://docs.microsoft.com/dotnet/api/system.boolean): Gets a value indicating whether the provider has any tools available.

### ![](/files/ptrKjmmRoQB76pvrIqh0) Tools

[ToolCollection](https://docs.wisej.com/api?q=wisej.ai.smarttool+toolcollection): Gets the collection of tools available from the provider.

## Implemented By

| Name                                                                                                      | Description                                                                                                                                                                                                                                                                                                                                                |
| --------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [SmartAgentPrompt](/ai/components/api/smartprompt/wisej.ai.smartagentprompt.md)                           | TODO:                                                                                                                                                                                                                                                                                                                                                      |
| [SmartParallelPrompt](/ai/components/api/smartprompt/wisej.ai.smartparallelprompt.md)                     | Represents a smart parallel prompt that can execute multiple tasks concurrently.                                                                                                                                                                                                                                                                           |
| [SmartAdapter](/ai/components/api/smartadapter.md)                                                        | Represents an abstract base class for creating smart adapters that interact with AI endpoints.                                                                                                                                                                                                                                                             |
| [SmartHub](/ai/components/api/smarthub.md)                                                                | Represents a SmartHub component that provides AI capabilities to controls within a container.                                                                                                                                                                                                                                                              |
| [SmartPrompt](/ai/components/api/smartprompt.md)                                                          | Represents a smart prompt component that can process and manage prompts with tools and parameters.                                                                                                                                                                                                                                                         |
| [SmartAudioTTSAdapter](/ai/components/api/smartadapter/wisej.ai.adapters.smartaudiottsadapter.md)         | Converts the [Text](https://docs.wisej.com/api?q=wisej.web.control.text) of the associated [Audio](https://docs.wisej.com/api?q=wisej.web.audio) control into lifelike speech.                                                                                                                                                                             |
| [SmartAudioWhisperAdapter](/ai/components/api/smartadapter/wisej.ai.adapters.smartaudiowhisperadapter.md) | Transcribes the audio file of the of the associated [Audio](https://docs.wisej.com/api?q=wisej.web.audio) control to its [Text](https://docs.wisej.com/api?q=wisej.web.control.text) property in the original language of the audio. [speech-to-text](https://platform.openai.com/docs/guides/speech-to-text)                                              |
| [SmartCalendarAdapter](/ai/components/api/smartadapter/wisej.ai.adapters.smartcalendaradapter.md)         | Represents a smart calendar adapter that extends the functionality of a SmartAdapter.                                                                                                                                                                                                                                                                      |
| [SmartChartAdapter](/ai/components/api/smartadapter/wisej.ai.adapters.smartchartadapter.md)               | Represents an adapter that enhances a chart control with AI features.                                                                                                                                                                                                                                                                                      |
| [SmartChartJS3Adapter](/ai/components/api/smartadapter/wisej.ai.adapters.smartchartjs3adapter.md)         | Represents an adapter that enhances a ChartJS control with several AI features.                                                                                                                                                                                                                                                                            |
| [SmartChatBoxAdapter](/ai/components/api/smartadapter/wisej.ai.adapters.smartchatboxadapter.md)           | Turns the [ChatBox](/ai/components/api/smartadapter/wisej.ai.adapters.smartchatboxadapter.md#chatbox) control into a AI-powered bot. It can answer any question (depending on the AI model being used) and can invoke methods in your applications as needed (see [SmartTool](/ai/components/api/smarttool.md)).                                           |
| [SmartComboBoxAdapter](/ai/components/api/smartadapter/wisej.ai.adapters.smartcomboboxadapter.md)         | Adds semantic filtering to the [ComboBox](https://docs.wisej.com/api?q=wisej.web.combobox) auto-complete functionality.                                                                                                                                                                                                                                    |
| [SmartCopilotAdapter](/ai/components/api/smartadapter/wisej.ai.adapters.smartcopilotadapter.md)           | Turns the [ChatBox](/ai/components/api/smartadapter/wisej.ai.adapters.smartcopilotadapter.md#chatbox) control into a AI-powered assistant. It can control and navigate an application, click menu items, navigation bar items, buttons, etc. It can also invoke methods in your applications as needed (see [SmartTool](/ai/components/api/smarttool.md)). |
| [SmartDataEntryAdapter](/ai/components/api/smartadapter/wisej.ai.adapters.smartdataentryadapter.md)       | Enhances all the controls in the associated container with the AI-powered capability to extract structured data from unstructured text.                                                                                                                                                                                                                    |
| [SmartDocumentAdapter](/ai/components/api/smartadapter/wisej.ai.adapters.smartdocumentadapter.md)         | Represents a document adapter that can perform AI tasks using a document as a data source and interact with the user through a ChatBox control.                                                                                                                                                                                                            |
| [SmartFullCalendarAdapter](/ai/components/api/smartadapter/wisej.ai.adapters.smartfullcalendaradapter.md) |                                                                                                                                                                                                                                                                                                                                                            |
| [SmartObjectAdapter](/ai/components/api/smartadapter/wisej.ai.adapters.smartobjectadapter.md)             | Converts unstructured text into a structured .NET object.                                                                                                                                                                                                                                                                                                  |
| [SmartPictureBoxAdapter](/ai/components/api/smartadapter/wisej.ai.adapters.smartpictureboxadapter.md)     | Represents an adapter for a PictureBox that generates images based on a description using the OpenAI DALL-E endpoint.                                                                                                                                                                                                                                      |
| [SmartQueryAdapter](/ai/components/api/smartadapter/wisej.ai.adapters.smartqueryadapter.md)               | Represents an adapter that generates a data set from a database schema and a user-provided description.                                                                                                                                                                                                                                                    |
| [SmartRealtimeAdapter](/ai/components/api/smartadapter/wisej.ai.adapters.smartrealtimeadapter.md)         | Represents a smart adapter that provides real-time data processing capabilities for use with the [OpenAIEndpointRealtime](/ai/components/api/smartendpoint/wisej.ai.endpoints.openaiendpointrealtime.md) endpoint.                                                                                                                                         |
| [SmartReportAdapter](/ai/components/api/smartadapter/wisej.ai.adapters.smartreportadapter.md)             | Enhances the ChatBox control to allow seamless PDF report queries using an AI provider.                                                                                                                                                                                                                                                                    |
| [SmartTextBoxAdapter](/ai/components/api/smartadapter/wisej.ai.adapters.smarttextboxadapter.md)           | Enhances a TextBox control with several AI features, including suggestions, translation, and auto-correction.                                                                                                                                                                                                                                              |


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.wisej.com/ai/components/api/smarttool/wisej.ai.smarttool.itoolprovider.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
