@@ -1181,18 +1181,18 @@ def __init__(self, *args: Any, **kwargs: Any) -> None:
1181
1181
class DeepResearchDetails (_Model ):
1182
1182
"""The details of the Deep Research tool.
1183
1183
1184
- :ivar deep_research_model : The deep research model deployment name. Required.
1185
- :vartype deep_research_model : str
1186
- :ivar deep_research_bing_grounding_connections : The array containing Bing grounding connection
1187
- IDs to enhance deep research capabilities. Required.
1188
- :vartype deep_research_bing_grounding_connections :
1184
+ :ivar model : The deep research model deployment name. Required.
1185
+ :vartype model : str
1186
+ :ivar bing_grounding_connections : The array containing Bing grounding connection IDs to enhance
1187
+ deep research capabilities. Required.
1188
+ :vartype bing_grounding_connections :
1189
1189
list[~azure.ai.agents.models.DeepResearchBingGroundingConnection]
1190
1190
"""
1191
1191
1192
- deep_research_model : str = rest_field (visibility = ["read" , "create" , "update" , "delete" , "query" ])
1192
+ model : str = rest_field (name = "deep_research_model" , visibility = ["read" , "create" , "update" , "delete" , "query" ])
1193
1193
"""The deep research model deployment name. Required."""
1194
- deep_research_bing_grounding_connections : List ["_models.DeepResearchBingGroundingConnection" ] = rest_field (
1195
- name = "bing_grounding_connections" , visibility = ["read" , "create" , "update" , "delete" , "query" ]
1194
+ bing_grounding_connections : List ["_models.DeepResearchBingGroundingConnection" ] = rest_field (
1195
+ visibility = ["read" , "create" , "update" , "delete" , "query" ]
1196
1196
)
1197
1197
"""The array containing Bing grounding connection IDs to enhance deep research capabilities.
1198
1198
Required."""
@@ -1201,8 +1201,8 @@ class DeepResearchDetails(_Model):
1201
1201
def __init__ (
1202
1202
self ,
1203
1203
* ,
1204
- deep_research_model : str ,
1205
- deep_research_bing_grounding_connections : List ["_models.DeepResearchBingGroundingConnection" ],
1204
+ model : str ,
1205
+ bing_grounding_connections : List ["_models.DeepResearchBingGroundingConnection" ],
1206
1206
) -> None : ...
1207
1207
1208
1208
@overload
@@ -1753,6 +1753,39 @@ def __init__(self, *args: Any, **kwargs: Any) -> None:
1753
1753
super ().__init__ (* args , ** kwargs )
1754
1754
1755
1755
1756
+ class MCPApprovalPerTool (_Model ):
1757
+ """Customized MCP approval object, listing tools requiring and not requiring approvals.
1758
+
1759
+ :ivar never: The list of tools, not requiring approval.
1760
+ :vartype never: ~azure.ai.agents.models.MCPToolList
1761
+ :ivar always: The list of tools, always requiring approval.
1762
+ :vartype always: ~azure.ai.agents.models.MCPToolList
1763
+ """
1764
+
1765
+ never : Optional ["_models.MCPToolList" ] = rest_field (visibility = ["read" , "create" , "update" , "delete" , "query" ])
1766
+ """The list of tools, not requiring approval."""
1767
+ always : Optional ["_models.MCPToolList" ] = rest_field (visibility = ["read" , "create" , "update" , "delete" , "query" ])
1768
+ """The list of tools, always requiring approval."""
1769
+
1770
+ @overload
1771
+ def __init__ (
1772
+ self ,
1773
+ * ,
1774
+ never : Optional ["_models.MCPToolList" ] = None ,
1775
+ always : Optional ["_models.MCPToolList" ] = None ,
1776
+ ) -> None : ...
1777
+
1778
+ @overload
1779
+ def __init__ (self , mapping : Mapping [str , Any ]) -> None :
1780
+ """
1781
+ :param mapping: raw JSON to initialize the model.
1782
+ :type mapping: Mapping[str, Any]
1783
+ """
1784
+
1785
+ def __init__ (self , * args : Any , ** kwargs : Any ) -> None :
1786
+ super ().__init__ (* args , ** kwargs )
1787
+
1788
+
1756
1789
class MCPToolDefinition (ToolDefinition , discriminator = "mcp" ):
1757
1790
"""The input definition information for a MCP tool which defines a MCP server endpoint.
1758
1791
@@ -1795,35 +1828,63 @@ def __init__(self, *args: Any, **kwargs: Any) -> None:
1795
1828
super ().__init__ (* args , type = "mcp" , ** kwargs )
1796
1829
1797
1830
1831
+ class MCPToolList (_Model ):
1832
+ """The object, containing list of tools for approvals.
1833
+
1834
+ :ivar tool_names: The list of tools for approval. Required.
1835
+ :vartype tool_names: list[str]
1836
+ """
1837
+
1838
+ tool_names : List [str ] = rest_field (visibility = ["read" , "create" , "update" , "delete" , "query" ])
1839
+ """The list of tools for approval. Required."""
1840
+
1841
+ @overload
1842
+ def __init__ (
1843
+ self ,
1844
+ * ,
1845
+ tool_names : List [str ],
1846
+ ) -> None : ...
1847
+
1848
+ @overload
1849
+ def __init__ (self , mapping : Mapping [str , Any ]) -> None :
1850
+ """
1851
+ :param mapping: raw JSON to initialize the model.
1852
+ :type mapping: Mapping[str, Any]
1853
+ """
1854
+
1855
+ def __init__ (self , * args : Any , ** kwargs : Any ) -> None :
1856
+ super ().__init__ (* args , ** kwargs )
1857
+
1858
+
1798
1859
class MCPToolResource (_Model ):
1799
1860
"""A set of resources that are used by the ``mcp`` tool.
1800
1861
1801
1862
:ivar server_label: The label for the MCP server. Required.
1802
1863
:vartype server_label: str
1803
1864
:ivar headers: The headers for the MCP server updates. Required.
1804
1865
:vartype headers: dict[str, str]
1805
- :ivar require_approval: Does MCP server require approval. Is one of the following types:
1806
- Literal["never"], Literal["always"], str
1807
- :vartype require_approval: str or str or str
1866
+ :ivar require_approval: Does MCP server require approval. Is one of the following types: str,
1867
+ Literal["never"], Literal["always"], MCPApprovalPerTool
1868
+ :vartype require_approval: str or str or str or ~azure.ai.agents.models.MCPApprovalPerTool
1808
1869
"""
1809
1870
1810
1871
server_label : str = rest_field (visibility = ["read" , "create" , "update" , "delete" , "query" ])
1811
1872
"""The label for the MCP server. Required."""
1812
1873
headers : Dict [str , str ] = rest_field (visibility = ["read" , "create" , "update" , "delete" , "query" ])
1813
1874
"""The headers for the MCP server updates. Required."""
1814
- require_approval : Optional [Union [ Literal [ "never" ], Literal [ "always" ], str ] ] = rest_field (
1875
+ require_approval : Optional ["_types.MCPRequiredApproval" ] = rest_field (
1815
1876
visibility = ["read" , "create" , "update" , "delete" , "query" ]
1816
1877
)
1817
- """Does MCP server require approval. Is one of the following types: Literal[\" never\" ],
1818
- Literal[\" always\" ], str """
1878
+ """Does MCP server require approval. Is one of the following types: str, Literal[\" never\" ],
1879
+ Literal[\" always\" ], MCPApprovalPerTool """
1819
1880
1820
1881
@overload
1821
1882
def __init__ (
1822
1883
self ,
1823
1884
* ,
1824
1885
server_label : str ,
1825
1886
headers : Dict [str , str ],
1826
- require_approval : Optional [Union [ Literal [ "never" ], Literal [ "always" ], str ] ] = None ,
1887
+ require_approval : Optional ["_types.MCPRequiredApproval" ] = None ,
1827
1888
) -> None : ...
1828
1889
1829
1890
@overload
@@ -4653,7 +4714,7 @@ class RunStepDeltaToolCall(_Model):
4653
4714
4654
4715
You probably want to use the sub-classes and not this class directly. Known sub-classes are:
4655
4716
RunStepDeltaCodeInterpreterToolCall, RunStepDeltaFileSearchToolCall,
4656
- RunStepDeltaFunctionToolCall
4717
+ RunStepDeltaFunctionToolCall, RunStepDeltaMcpToolCall
4657
4718
4658
4719
:ivar index: The index of the tool call detail in the run step's tool_calls array. Required.
4659
4720
:vartype index: int
@@ -4739,7 +4800,7 @@ class RunStepDeltaDetail(_Model):
4739
4800
"""Represents a single run step detail item in a streaming run step's delta payload.
4740
4801
4741
4802
You probably want to use the sub-classes and not this class directly. Known sub-classes are:
4742
- RunStepDeltaMessageCreation, RunStepDeltaToolCallObject
4803
+ RunStepDeltaMCPObject, RunStepDeltaMessageCreation, RunStepDeltaToolCallObject
4743
4804
4744
4805
:ivar type: The object type for the run step detail object. Required. Default value is None.
4745
4806
:vartype type: str
@@ -4887,6 +4948,78 @@ def __init__(self, *args: Any, **kwargs: Any) -> None:
4887
4948
super ().__init__ (* args , type = "function" , ** kwargs )
4888
4949
4889
4950
4951
+ class RunStepDeltaMCPObject (RunStepDeltaDetail , discriminator = "mcp" ):
4952
+ """Represents an invocation of mcp as part of a streaming run step.
4953
+
4954
+ :ivar type: The object type, which is always "mcp". Required. Default value is "mcp".
4955
+ :vartype type: str
4956
+ :ivar tool_calls: The collection of tool calls for the tool call detail item.
4957
+ :vartype tool_calls: list[~azure.ai.agents.models.RunStepDeltaMcpToolCall]
4958
+ """
4959
+
4960
+ type : Literal ["mcp" ] = rest_discriminator (name = "type" , visibility = ["read" , "create" , "update" , "delete" , "query" ]) # type: ignore
4961
+ """The object type, which is always \" mcp\" . Required. Default value is \" mcp\" ."""
4962
+ tool_calls : Optional [List ["_models.RunStepDeltaMcpToolCall" ]] = rest_field (
4963
+ visibility = ["read" , "create" , "update" , "delete" , "query" ]
4964
+ )
4965
+ """The collection of tool calls for the tool call detail item."""
4966
+
4967
+ @overload
4968
+ def __init__ (
4969
+ self ,
4970
+ * ,
4971
+ tool_calls : Optional [List ["_models.RunStepDeltaMcpToolCall" ]] = None ,
4972
+ ) -> None : ...
4973
+
4974
+ @overload
4975
+ def __init__ (self , mapping : Mapping [str , Any ]) -> None :
4976
+ """
4977
+ :param mapping: raw JSON to initialize the model.
4978
+ :type mapping: Mapping[str, Any]
4979
+ """
4980
+
4981
+ def __init__ (self , * args : Any , ** kwargs : Any ) -> None :
4982
+ super ().__init__ (* args , type = "mcp" , ** kwargs )
4983
+
4984
+
4985
+ class RunStepDeltaMcpToolCall (RunStepDeltaToolCall , discriminator = "mcp" ):
4986
+ """Represents the function data in a streaming run step MCP call.*.
4987
+
4988
+ :ivar id: The ID of the tool call, used when submitting outputs to the run. Required.
4989
+ :vartype id: str
4990
+ :ivar type: The object type, which is always "mcp". Required. Default value is "mcp".
4991
+ :vartype type: str
4992
+ :ivar index: The index of a response. Required.
4993
+ :vartype index: int
4994
+ :ivar arguments: The arguments for MCP call. Required.
4995
+ :vartype arguments: str
4996
+ """
4997
+
4998
+ type : Literal ["mcp" ] = rest_discriminator (name = "type" , visibility = ["read" , "create" , "update" , "delete" , "query" ]) # type: ignore
4999
+ """The object type, which is always \" mcp\" . Required. Default value is \" mcp\" ."""
5000
+ arguments : str = rest_field (visibility = ["read" , "create" , "update" , "delete" , "query" ])
5001
+ """The arguments for MCP call. Required."""
5002
+
5003
+ @overload
5004
+ def __init__ (
5005
+ self ,
5006
+ * ,
5007
+ id : str , # pylint: disable=redefined-builtin
5008
+ index : int ,
5009
+ arguments : str ,
5010
+ ) -> None : ...
5011
+
5012
+ @overload
5013
+ def __init__ (self , mapping : Mapping [str , Any ]) -> None :
5014
+ """
5015
+ :param mapping: raw JSON to initialize the model.
5016
+ :type mapping: Mapping[str, Any]
5017
+ """
5018
+
5019
+ def __init__ (self , * args : Any , ** kwargs : Any ) -> None :
5020
+ super ().__init__ (* args , type = "mcp" , ** kwargs )
5021
+
5022
+
4890
5023
class RunStepDeltaMessageCreation (RunStepDeltaDetail , discriminator = "message_creation" ):
4891
5024
"""Represents a message creation within a streaming run step delta.
4892
5025
0 commit comments