# ImageGenerationToolResource Methods

- Package: [Aspire.Hosting.Foundry](/reference/api/csharp/aspire.hosting.foundry.md)
- Type: [ImageGenerationToolResource](/reference/api/csharp/aspire.hosting.foundry/imagegenerationtoolresource.md)
- Kind: `Methods`
- Members: `1`

A Foundry tool resource that enables an agent to generate and edit images.

## ToAgentToolAsync(CancellationToken)

- Name: `ToAgentToolAsync(CancellationToken)`
- Modifiers: `override`
- Returns: `Task<ResponseTool>`
- Source: [GitHub](https://github.com/microsoft/aspire/blob/becb48e2d61099e35ae336d527d3875e928d6594/src/Aspire.Hosting.Foundry/ToolResources/BuiltInToolDefinitions.cs#L118)

Converts this tool definition into the SDK `Responses.ResponseTool` representation.

```csharp
public sealed class ImageGenerationToolResource
{
    public override Task<ResponseTool> ToAgentToolAsync(
        CancellationToken cancellationToken = default(CancellationToken))
    {
        // ...
    }
}
```

## Parameters

- `cancellationToken` (`CancellationToken`) `optional`
  A cancellation token.

## Returns

`Task<ResponseTool>` -- The SDK tool representation.

## Remarks

This method is called at deploy time, after infrastructure provisioning is complete. Tools that depend on provisioned resources (e.g., Azure AI Search connections) can safely resolve their connection identifiers at this point.
