Watch Aspire live streamsDocsTry Aspire

AzureConnectorNamespaceExtensions Methods

ClassMethods10 members
Extension methods for adding Azure Connector Namespace resources to the application model.
AddAzureConnectorNamespace(IDistributedApplicationBuilder, string)Section titled AddAzureConnectorNamespace(IDistributedApplicationBuilder, string)extensionIResourceBuilder<AzureConnectorNamespaceResource>
Adds an Azure Connector Namespace resource to the application model.
public static class AzureConnectorNamespaceExtensions
{
public static IResourceBuilder<AzureConnectorNamespaceResource> AddAzureConnectorNamespace(
this IDistributedApplicationBuilder builder,
string name)
{
// ...
}
}
builderIDistributedApplicationBuilderThe distributed application builder.
namestringThe name of the resource.
IResourceBuilder<AzureConnectorNamespaceResource>A resource builder for the Connector Namespace.
Connector Namespace is a preview service. Connections that use OAuth or another interactive authorization flow must be authorized in the Connector Namespaces portal after provisioning.

This example provisions a Connector Namespace with an Office 365 connection and exposes an allow-listed operation through a managed MCP server:

var connectors = builder.AddAzureConnectorNamespace("connectors");
var office365 = connectors.AddConnection("office365", "office365");
connectors.AddMcpServerConfig("mcp")
.WithConnector("mail", office365, new AzureConnectorNamespaceMcpConnectorOptions
{
Operations =
[
new AzureConnectorNamespaceMcpOperationOptions { Name = "SendEmailV2" }
]
})
.WithAccessPolicy("developer-access", new AzureConnectorNamespaceMcpAccessPolicyOptions
{
ObjectId = "11111111-1111-1111-1111-111111111111",
TenantId = "22222222-2222-2222-2222-222222222222",
PrincipalType = AzureConnectorNamespaceMcpAccessPolicyPrincipalType.User
});
AddConnection(IResourceBuilder<AzureConnectorNamespaceResource>, string, string, AzureConnectorNamespaceConnectionOptions?)Section titled AddConnection(IResourceBuilder<AzureConnectorNamespaceResource>, string, string, AzureConnectorNamespaceConnectionOptions?)extensionIResourceBuilder<AzureConnectorNamespaceConnectionResource>
Adds a connection to an Azure Connector Namespace.
public static class AzureConnectorNamespaceExtensions
{
public static IResourceBuilder<AzureConnectorNamespaceConnectionResource> AddConnection(
this IResourceBuilder<AzureConnectorNamespaceResource> builder,
string name,
string connectorName,
AzureConnectorNamespaceConnectionOptions? options = null)
{
// ...
}
}
builderIResourceBuilder<AzureConnectorNamespaceResource>The Connector Namespace resource builder.
namestringThe Aspire resource name.
connectorNamestringThe connector catalog name, such as office365.
optionsAzureConnectorNamespaceConnectionOptions?optionalThe optional connection configuration.
IResourceBuilder<AzureConnectorNamespaceConnectionResource>A resource builder for the connection.
This method provisions the connection resource but does not automate OAuth consent or other interactive authorization. Complete those steps in the Connector Namespaces portal.
AddMcpServerConfig(IResourceBuilder<AzureConnectorNamespaceResource>, string, AzureConnectorNamespaceMcpServerConfigOptions?)Section titled AddMcpServerConfig(IResourceBuilder<AzureConnectorNamespaceResource>, string, AzureConnectorNamespaceMcpServerConfigOptions?)extensionIResourceBuilder<AzureConnectorNamespaceMcpServerConfigResource>
Adds a managed MCP server configuration to an Azure Connector Namespace.
public static class AzureConnectorNamespaceExtensions
{
public static IResourceBuilder<AzureConnectorNamespaceMcpServerConfigResource> AddMcpServerConfig(
this IResourceBuilder<AzureConnectorNamespaceResource> builder,
string name,
AzureConnectorNamespaceMcpServerConfigOptions? options = null)
{
// ...
}
}
builderIResourceBuilder<AzureConnectorNamespaceResource>The Connector Namespace resource builder.
namestringThe Aspire resource name.
optionsAzureConnectorNamespaceMcpServerConfigOptions?optionalThe optional MCP server configuration.
IResourceBuilder<AzureConnectorNamespaceMcpServerConfigResource>A resource builder for the MCP server configuration.
AsExisting(IResourceBuilder<AzureConnectorNamespaceConnectionResource>)Section titled AsExisting(IResourceBuilder<AzureConnectorNamespaceConnectionResource>)extensionIResourceBuilder<AzureConnectorNamespaceConnectionResource>
Marks a Connector Namespace connection as an existing Azure resource.
public static class AzureConnectorNamespaceExtensions
{
public static IResourceBuilder<AzureConnectorNamespaceConnectionResource> AsExisting(
this IResourceBuilder<AzureConnectorNamespaceConnectionResource> builder)
{
// ...
}
}
builderIResourceBuilder<AzureConnectorNamespaceConnectionResource>The connection resource builder.
IResourceBuilder<AzureConnectorNamespaceConnectionResource>The resource builder.
AsExisting(IResourceBuilder<AzureConnectorNamespaceMcpServerConfigResource>)Section titled AsExisting(IResourceBuilder<AzureConnectorNamespaceMcpServerConfigResource>)extensionIResourceBuilder<AzureConnectorNamespaceMcpServerConfigResource>
Marks a managed MCP server configuration as an existing Azure resource.
public static class AzureConnectorNamespaceExtensions
{
public static IResourceBuilder<AzureConnectorNamespaceMcpServerConfigResource> AsExisting(
this IResourceBuilder<AzureConnectorNamespaceMcpServerConfigResource> builder)
{
// ...
}
}
builderIResourceBuilder<AzureConnectorNamespaceMcpServerConfigResource>The MCP server configuration resource builder.
IResourceBuilder<AzureConnectorNamespaceMcpServerConfigResource>The resource builder.
WithAccessPolicy(IResourceBuilder<AzureConnectorNamespaceConnectionResource>, string, AzureConnectorNamespaceAccessPolicyOptions)Section titled WithAccessPolicy(IResourceBuilder<AzureConnectorNamespaceConnectionResource>, string, AzureConnectorNamespaceAccessPolicyOptions)extensionIResourceBuilder<AzureConnectorNamespaceConnectionResource>
Adds a Microsoft Entra access policy to a Connector Namespace connection.
public static class AzureConnectorNamespaceExtensions
{
public static IResourceBuilder<AzureConnectorNamespaceConnectionResource> WithAccessPolicy(
this IResourceBuilder<AzureConnectorNamespaceConnectionResource> builder,
string name,
AzureConnectorNamespaceAccessPolicyOptions options)
{
// ...
}
}
builderIResourceBuilder<AzureConnectorNamespaceConnectionResource>The connection resource builder.
namestringThe Aspire resource name for the policy.
optionsAzureConnectorNamespaceAccessPolicyOptionsThe authorized principal and optional Azure policy name.
IResourceBuilder<AzureConnectorNamespaceConnectionResource>The connection resource builder.
Access policies authorize a specific Microsoft Entra principal to use the connection. They do not perform connector OAuth consent and should be limited to principals that require access.
WithAccessPolicy(IResourceBuilder<AzureConnectorNamespaceMcpServerConfigResource>, string, AzureConnectorNamespaceMcpAccessPolicyOptions)Section titled WithAccessPolicy(IResourceBuilder<AzureConnectorNamespaceMcpServerConfigResource>, string, AzureConnectorNamespaceMcpAccessPolicyOptions)extensionIResourceBuilder<AzureConnectorNamespaceMcpServerConfigResource>
Adds a Microsoft Entra user or group access policy to a managed MCP server configuration.
public static class AzureConnectorNamespaceExtensions
{
public static IResourceBuilder<AzureConnectorNamespaceMcpServerConfigResource> WithAccessPolicy(
this IResourceBuilder<AzureConnectorNamespaceMcpServerConfigResource> builder,
string name,
AzureConnectorNamespaceMcpAccessPolicyOptions options)
{
// ...
}
}
builderIResourceBuilder<AzureConnectorNamespaceMcpServerConfigResource>The MCP server configuration resource builder.
namestringThe Aspire resource name for the policy.
optionsAzureConnectorNamespaceMcpAccessPolicyOptionsThe authorized user or group.
IResourceBuilder<AzureConnectorNamespaceMcpServerConfigResource>The MCP server configuration resource builder.
Managed MCP endpoints reject callers that do not have a config-scoped access policy. Connector Namespace currently supports Microsoft Entra users and groups for these policies. The Azure child resource name is set to the principal object ID as required by the service.
WithConnector(IResourceBuilder<AzureConnectorNamespaceMcpServerConfigResource>, string, IResourceBuilder<AzureConnectorNamespaceConnectionResource>, AzureConnectorNamespaceMcpConnectorOptions)Section titled WithConnector(IResourceBuilder<AzureConnectorNamespaceMcpServerConfigResource>, string, IResourceBuilder<AzureConnectorNamespaceConnectionResource>, AzureConnectorNamespaceMcpConnectorOptions)extensionIResourceBuilder<AzureConnectorNamespaceMcpServerConfigResource>
Adds a connector route and an explicit operation allow-list to a managed MCP server configuration.
public static class AzureConnectorNamespaceExtensions
{
public static IResourceBuilder<AzureConnectorNamespaceMcpServerConfigResource> WithConnector(
this IResourceBuilder<AzureConnectorNamespaceMcpServerConfigResource> builder,
string connectorName,
IResourceBuilder<AzureConnectorNamespaceConnectionResource> connection,
AzureConnectorNamespaceMcpConnectorOptions options)
{
// ...
}
}
builderIResourceBuilder<AzureConnectorNamespaceMcpServerConfigResource>The MCP server configuration resource builder.
connectorNamestringThe connector route name.
connectionIResourceBuilder<AzureConnectorNamespaceConnectionResource>The connection used by the connector route.
optionsAzureConnectorNamespaceMcpConnectorOptionsThe connector metadata and operation allow-list.
IResourceBuilder<AzureConnectorNamespaceMcpServerConfigResource>The MCP server configuration resource builder.
Connections and MCP server configurations are separate Azure resources so a connection can be reused independently. This method links the MCP server configuration to its underlying connection and exposes only the operations listed in options as MCP tools. Operation IDs are connector-specific and should be verified against the connector operation metadata. The current Connector Namespace preview supports one connector per managed MCP server configuration.
WithIdentityAccessPolicy(IResourceBuilder<AzureConnectorNamespaceConnectionResource>, string, IResourceBuilder<AzureUserAssignedIdentityResource>, string?)Section titled WithIdentityAccessPolicy(IResourceBuilder<AzureConnectorNamespaceConnectionResource>, string, IResourceBuilder<AzureUserAssignedIdentityResource>, string?)extensionIResourceBuilder<AzureConnectorNamespaceConnectionResource>
Adds a connection access policy for a user-assigned managed identity.
public static class AzureConnectorNamespaceExtensions
{
public static IResourceBuilder<AzureConnectorNamespaceConnectionResource> WithIdentityAccessPolicy(
this IResourceBuilder<AzureConnectorNamespaceConnectionResource> builder,
string name,
IResourceBuilder<AzureUserAssignedIdentityResource> identity,
string? policyName = null)
{
// ...
}
}
builderIResourceBuilder<AzureConnectorNamespaceConnectionResource>The connection resource builder.
namestringThe Aspire resource name for the policy.
identityIResourceBuilder<AzureUserAssignedIdentityResource>The user-assigned managed identity authorized to use the connection.
policyNamestring?optionalThe optional Azure child resource name. The Aspire resource name is used when omitted.
IResourceBuilder<AzureConnectorNamespaceConnectionResource>The connection resource builder.
This method authorizes the identity to use the connection. The connection's downstream OAuth, API key, or basic authentication must still be configured separately.
WithReference(IResourceBuilder<TDestination>, IResourceBuilder<AzureConnectorNamespaceConnectionResource>, string?)Section titled WithReference(IResourceBuilder<TDestination>, IResourceBuilder<AzureConnectorNamespaceConnectionResource>, string?)extensionIResourceBuilder<TDestination>
Adds a Connector Namespace connection reference to a destination resource.
public static class AzureConnectorNamespaceExtensions
{
public static IResourceBuilder<TDestination> WithReference<TDestination>(
this IResourceBuilder<TDestination> builder,
IResourceBuilder<AzureConnectorNamespaceConnectionResource> connection,
string? connectionName = null)
{
// ...
}
}
builderIResourceBuilder<TDestination>The destination resource builder.
connectionIResourceBuilder<AzureConnectorNamespaceConnectionResource>The Connector Namespace connection resource.
connectionNamestring?optional The optional configuration prefix. The connection's Aspire resource name is used when omitted.
IResourceBuilder<TDestination>The destination resource builder.
The reference injects {connectionName}__connectorGatewayName and {connectionName}__connectionName for the Azure Connector SDK.