Share via


HostedMcpServerToolApprovalMode Class

Definition

Describes how approval is required for tool calls to a hosted MCP server.

public ref class HostedMcpServerToolApprovalMode
[System.Diagnostics.CodeAnalysis.Experimental("MEAI001")]
[System.Text.Json.Serialization.JsonDerivedType(typeof(Microsoft.Extensions.AI.HostedMcpServerToolNeverRequireApprovalMode), "never")]
[System.Text.Json.Serialization.JsonDerivedType(typeof(Microsoft.Extensions.AI.HostedMcpServerToolAlwaysRequireApprovalMode), "always")]
[System.Text.Json.Serialization.JsonDerivedType(typeof(Microsoft.Extensions.AI.HostedMcpServerToolRequireSpecificApprovalMode), "requireSpecific")]
[System.Text.Json.Serialization.JsonPolymorphic(TypeDiscriminatorPropertyName="$type")]
public class HostedMcpServerToolApprovalMode
[System.Text.Json.Serialization.JsonDerivedType(typeof(Microsoft.Extensions.AI.HostedMcpServerToolNeverRequireApprovalMode), "never")]
[System.Text.Json.Serialization.JsonDerivedType(typeof(Microsoft.Extensions.AI.HostedMcpServerToolAlwaysRequireApprovalMode), "always")]
[System.Text.Json.Serialization.JsonDerivedType(typeof(Microsoft.Extensions.AI.HostedMcpServerToolRequireSpecificApprovalMode), "requireSpecific")]
[System.Text.Json.Serialization.JsonPolymorphic(TypeDiscriminatorPropertyName="$type")]
public class HostedMcpServerToolApprovalMode
[<System.Diagnostics.CodeAnalysis.Experimental("MEAI001")>]
[<System.Text.Json.Serialization.JsonDerivedType(typeof(Microsoft.Extensions.AI.HostedMcpServerToolNeverRequireApprovalMode), "never")>]
[<System.Text.Json.Serialization.JsonDerivedType(typeof(Microsoft.Extensions.AI.HostedMcpServerToolAlwaysRequireApprovalMode), "always")>]
[<System.Text.Json.Serialization.JsonDerivedType(typeof(Microsoft.Extensions.AI.HostedMcpServerToolRequireSpecificApprovalMode), "requireSpecific")>]
[<System.Text.Json.Serialization.JsonPolymorphic(TypeDiscriminatorPropertyName="$type")>]
type HostedMcpServerToolApprovalMode = class
[<System.Text.Json.Serialization.JsonDerivedType(typeof(Microsoft.Extensions.AI.HostedMcpServerToolNeverRequireApprovalMode), "never")>]
[<System.Text.Json.Serialization.JsonDerivedType(typeof(Microsoft.Extensions.AI.HostedMcpServerToolAlwaysRequireApprovalMode), "always")>]
[<System.Text.Json.Serialization.JsonDerivedType(typeof(Microsoft.Extensions.AI.HostedMcpServerToolRequireSpecificApprovalMode), "requireSpecific")>]
[<System.Text.Json.Serialization.JsonPolymorphic(TypeDiscriminatorPropertyName="$type")>]
type HostedMcpServerToolApprovalMode = class
Public Class HostedMcpServerToolApprovalMode
Inheritance
HostedMcpServerToolApprovalMode
Derived
Attributes

Remarks

The predefined values AlwaysRequire, and NeverRequire are provided to specify handling for all tools. To specify approval behavior for individual tool names, use RequireSpecific(IList<String>, IList<String>).

Properties

Name Description
AlwaysRequire

Gets a predefined HostedMcpServerToolApprovalMode indicating that all tool calls to a hosted MCP server always require approval.

NeverRequire

Gets a predefined HostedMcpServerToolApprovalMode indicating that all tool calls to a hosted MCP server never require approval.

Methods

Name Description
RequireSpecific(IList<String>, IList<String>)

Instantiates a HostedMcpServerToolApprovalMode that specifies approval behavior for individual tool names.

Applies to