# CapabilityHostBuilder Methods

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

A fluent builder for configuring a capability host on a Microsoft Foundry project.

## WithAzureOpenAI(IResourceBuilder<FoundryResource>)

- Name: `WithAzureOpenAI(IResourceBuilder<FoundryResource>)`
- Returns: [CapabilityHostBuilder](/reference/api/csharp/aspire.hosting.foundry/capabilityhostbuilder.md)
- Source: [GitHub](https://github.com/microsoft/aspire/blob/becb48e2d61099e35ae336d527d3875e928d6594/src/Aspire.Hosting.Foundry/Project/ProjectResource.cs#L404-L406)

Configures an Azure OpenAI-type Microsoft Foundry account for AI model calls.

```csharp
public class CapabilityHostBuilder
{
    public CapabilityHostBuilder WithAzureOpenAI(
        IResourceBuilder<FoundryResource> openAI)
    {
        // ...
    }
}
```

## Parameters

- `openAI` (`IResourceBuilder<FoundryResource>`)
  The Microsoft Foundry resource builder.

## Returns

[CapabilityHostBuilder](/reference/api/csharp/aspire.hosting.foundry/capabilityhostbuilder.md) -- The capability host builder for chaining.

## WithCosmosDB(IResourceBuilder<AzureCosmosDBResource>)

- Name: `WithCosmosDB(IResourceBuilder<AzureCosmosDBResource>)`
- Returns: [CapabilityHostBuilder](/reference/api/csharp/aspire.hosting.foundry/capabilityhostbuilder.md)
- Source: [GitHub](https://github.com/microsoft/aspire/blob/becb48e2d61099e35ae336d527d3875e928d6594/src/Aspire.Hosting.Foundry/Project/ProjectResource.cs#L368-L370)

Configures the Cosmos DB resource for metadata and conversation state storage.

```csharp
public class CapabilityHostBuilder
{
    public CapabilityHostBuilder WithCosmosDB(
        IResourceBuilder<AzureCosmosDBResource> cosmosDb)
    {
        // ...
    }
}
```

## Parameters

- `cosmosDb` (`IResourceBuilder<AzureCosmosDBResource>`)
  The Cosmos DB resource builder.

## Returns

[CapabilityHostBuilder](/reference/api/csharp/aspire.hosting.foundry/capabilityhostbuilder.md) -- The capability host builder for chaining.

## WithSearch(IResourceBuilder<AzureSearchResource>)

- Name: `WithSearch(IResourceBuilder<AzureSearchResource>)`
- Returns: [CapabilityHostBuilder](/reference/api/csharp/aspire.hosting.foundry/capabilityhostbuilder.md)
- Source: [GitHub](https://github.com/microsoft/aspire/blob/becb48e2d61099e35ae336d527d3875e928d6594/src/Aspire.Hosting.Foundry/Project/ProjectResource.cs#L392-L394)

Configures the Azure Search resource for vector search capabilities.

```csharp
public class CapabilityHostBuilder
{
    public CapabilityHostBuilder WithSearch(
        IResourceBuilder<AzureSearchResource> search)
    {
        // ...
    }
}
```

## Parameters

- `search` (`IResourceBuilder<AzureSearchResource>`)
  The Search resource builder.

## Returns

[CapabilityHostBuilder](/reference/api/csharp/aspire.hosting.foundry/capabilityhostbuilder.md) -- The capability host builder for chaining.

## WithStorage(IResourceBuilder<AzureStorageResource>)

- Name: `WithStorage(IResourceBuilder<AzureStorageResource>)`
- Returns: [CapabilityHostBuilder](/reference/api/csharp/aspire.hosting.foundry/capabilityhostbuilder.md)
- Source: [GitHub](https://github.com/microsoft/aspire/blob/becb48e2d61099e35ae336d527d3875e928d6594/src/Aspire.Hosting.Foundry/Project/ProjectResource.cs#L380-L382)

Configures the Storage resource for file storage.

```csharp
public class CapabilityHostBuilder
{
    public CapabilityHostBuilder WithStorage(
        IResourceBuilder<AzureStorageResource> storage)
    {
        // ...
    }
}
```

## Parameters

- `storage` (`IResourceBuilder<AzureStorageResource>`)
  The Storage resource builder.

## Returns

[CapabilityHostBuilder](/reference/api/csharp/aspire.hosting.foundry/capabilityhostbuilder.md) -- The capability host builder for chaining.
