# AzureFunctionToolResource Properties

- Package: [Aspire.Hosting.Foundry](/reference/api/csharp/aspire.hosting.foundry.md)
- Type: [AzureFunctionToolResource](/reference/api/csharp/aspire.hosting.foundry/azurefunctiontoolresource.md)
- Kind: `Properties`
- Members: `7`

A Foundry tool resource that enables an agent to invoke an Azure Function.

## Description

- Name: `Description`
- Modifiers: `get`
- Returns: `string`
- Source: [GitHub](https://github.com/microsoft/aspire/blob/becb48e2d61099e35ae336d527d3875e928d6594/src/Aspire.Hosting.Foundry/ToolResources/AzureFunctionToolResource.cs#L70)

Gets the description of the function (used by the agent to decide when to call it).

```csharp
public string Description { get; }
```

## FunctionName

- Name: `FunctionName`
- Modifiers: `get`
- Returns: `string`
- Source: [GitHub](https://github.com/microsoft/aspire/blob/becb48e2d61099e35ae336d527d3875e928d6594/src/Aspire.Hosting.Foundry/ToolResources/AzureFunctionToolResource.cs#L65)

Gets the name of the Azure Function.

```csharp
public string FunctionName { get; }
```

## InputQueueEndpoint

- Name: `InputQueueEndpoint`
- Modifiers: `get`
- Returns: `string`
- Source: [GitHub](https://github.com/microsoft/aspire/blob/becb48e2d61099e35ae336d527d3875e928d6594/src/Aspire.Hosting.Foundry/ToolResources/AzureFunctionToolResource.cs#L80)

Gets the Azure Storage Queue endpoint for input binding.

```csharp
public string InputQueueEndpoint { get; }
```

## InputQueueName

- Name: `InputQueueName`
- Modifiers: `get`
- Returns: `string`
- Source: [GitHub](https://github.com/microsoft/aspire/blob/becb48e2d61099e35ae336d527d3875e928d6594/src/Aspire.Hosting.Foundry/ToolResources/AzureFunctionToolResource.cs#L85)

Gets the queue name for input binding.

```csharp
public string InputQueueName { get; }
```

## OutputQueueEndpoint

- Name: `OutputQueueEndpoint`
- Modifiers: `get`
- Returns: `string`
- Source: [GitHub](https://github.com/microsoft/aspire/blob/becb48e2d61099e35ae336d527d3875e928d6594/src/Aspire.Hosting.Foundry/ToolResources/AzureFunctionToolResource.cs#L90)

Gets the Azure Storage Queue endpoint for output binding.

```csharp
public string OutputQueueEndpoint { get; }
```

## OutputQueueName

- Name: `OutputQueueName`
- Modifiers: `get`
- Returns: `string`
- Source: [GitHub](https://github.com/microsoft/aspire/blob/becb48e2d61099e35ae336d527d3875e928d6594/src/Aspire.Hosting.Foundry/ToolResources/AzureFunctionToolResource.cs#L95)

Gets the queue name for output binding.

```csharp
public string OutputQueueName { get; }
```

## Parameters

- Name: `Parameters`
- Modifiers: `get`
- Returns: `BinaryData`
- Source: [GitHub](https://github.com/microsoft/aspire/blob/becb48e2d61099e35ae336d527d3875e928d6594/src/Aspire.Hosting.Foundry/ToolResources/AzureFunctionToolResource.cs#L75)

Gets the JSON schema defining the function parameters.

```csharp
public BinaryData Parameters { get; }
```
