> ## Documentation Index
> Fetch the complete documentation index at: https://www.adaline.ai/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# ToolFunctionDefinition

> Wrapper for a function schema within a tool definition.

# ToolFunctionDefinition

Wraps a [FunctionSchema](https://www.adaline.ai/docs/reference/sdk/v2/typescript/types/FunctionSchema.md) inside a [ToolFunction](https://www.adaline.ai/docs/reference/sdk/v2/typescript/types/ToolFunction.md). Each tool in `deployment.prompt.tools` has a `definition` of this type.

## Import

```typescript theme={null}
import type { ToolFunctionDefinition } from '@adaline/api';
```

## Type Definition

```typescript theme={null}
interface ToolFunctionDefinition {
  schema: FunctionSchema;
}
```

## Fields

**schema** `FunctionSchema` *required*

The [FunctionSchema](https://www.adaline.ai/docs/reference/sdk/v2/typescript/types/FunctionSchema.md) describing the function's name, description, and parameters.

***

## Example

```typescript theme={null}
import type { ToolFunctionDefinition, FunctionSchema } from '@adaline/api';

const definition: ToolFunctionDefinition = {
  schema: {
    name: 'search_database',
    description: 'Search internal knowledge base',
    parameters: {
      type: 'object',
      properties: {
        query: { type: 'string', description: 'Search query' },
        limit: { type: 'number', default: 10 }
      },
      required: ['query']
    }
  }
};
```

### Accessing from a deployment

```typescript theme={null}
import { Adaline } from '@adaline/client';

const adaline = new Adaline();
const deployment = await adaline.getLatestDeployment({
  promptId: 'prompt_abc123',
  deploymentEnvironmentId: 'environment_abc123'
});

for (const tool of deployment.prompt.tools) {
  const { name, description } = tool.definition.schema;
  console.log(`${name}: ${description}`);
}
```

***

## Related

* [ToolFunction](https://www.adaline.ai/docs/reference/sdk/v2/typescript/types/ToolFunction.md) — parent type containing `definition`
* [FunctionSchema](https://www.adaline.ai/docs/reference/sdk/v2/typescript/types/FunctionSchema.md) — the schema held by this wrapper


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.