MCPTool Class
MCP tool.
Constructor
MCPTool(*args: Any, **kwargs: Any)
Variables
| Name | Description |
|---|---|
|
type
|
str or
<xref:azure.ai.projects.models.MCP>
The type of the MCP tool. Always |
|
server_label
|
A label for this MCP server, used to identify it in tool calls. Required. |
|
server_url
|
The URL for the MCP server. One of |
|
connector_id
|
Identifier for service connectors, like those available in ChatGPT. One of
|
|
authorization
|
An OAuth access token that can be used with a remote MCP server, either with a custom MCP server URL or a service connector. Your application must handle the OAuth authorization flow and provide the token here. |
|
server_description
|
Optional description of the MCP server, used to provide more context. |
|
headers
|
|
|
allowed_tools
|
Is either a [str] type or a MCPToolFilter type. |
|
require_approval
|
Is one of the following types: MCPToolRequireApproval, Literal["always"], Literal["never"] |
|
project_connection_id
|
The connection ID in the project for the MCP server. The connection stores authentication and other connection details needed to connect to the MCP server. |
Methods
| as_dict |
Return a dict that can be turned into json using json.dump. |
| clear |
Remove all items from D. |
| copy | |
| get |
Get the value for key if key is in the dictionary, else default. :param str key: The key to look up. :param any default: The value to return if key is not in the dictionary. Defaults to None :returns: D[k] if k in D, else d. :rtype: any |
| items | |
| keys | |
| pop |
Removes specified key and return the corresponding value. :param str key: The key to pop. :param any default: The value to return if key is not in the dictionary :returns: The value corresponding to the key. :rtype: any :raises KeyError: If key is not found and default is not given. |
| popitem |
Removes and returns some (key, value) pair :returns: The (key, value) pair. :rtype: tuple :raises KeyError: if D is empty. |
| setdefault |
Same as calling D.get(k, d), and setting D[k]=d if k not found :param str key: The key to look up. :param any default: The value to set if key is not in the dictionary :returns: D[k] if k in D, else d. :rtype: any |
| update |
Updates D from mapping/iterable E and F. :param any args: Either a mapping object or an iterable of key-value pairs. |
| values |
as_dict
Return a dict that can be turned into json using json.dump.
as_dict(*, exclude_readonly: bool = False) -> dict[str, Any]
Keyword-Only Parameters
| Name | Description |
|---|---|
|
exclude_readonly
|
Whether to remove the readonly properties. Default value: False
|
Returns
| Type | Description |
|---|---|
|
A dict JSON compatible object |
clear
Remove all items from D.
clear() -> None
copy
copy() -> Model
get
Get the value for key if key is in the dictionary, else default. :param str key: The key to look up. :param any default: The value to return if key is not in the dictionary. Defaults to None :returns: D[k] if k in D, else d. :rtype: any
get(key: str, default: Any = None) -> Any
Parameters
| Name | Description |
|---|---|
|
key
Required
|
|
|
default
|
Default value: None
|
items
items() -> ItemsView[str, Any]
Returns
| Type | Description |
|---|---|
|
set-like object providing a view on D's items |
keys
keys() -> KeysView[str]
Returns
| Type | Description |
|---|---|
|
a set-like object providing a view on D's keys |
pop
Removes specified key and return the corresponding value. :param str key: The key to pop. :param any default: The value to return if key is not in the dictionary :returns: The value corresponding to the key. :rtype: any :raises KeyError: If key is not found and default is not given.
pop(key: str, default: ~typing.Any = <object object>) -> Any
Parameters
| Name | Description |
|---|---|
|
key
Required
|
|
|
default
|
|
popitem
Removes and returns some (key, value) pair :returns: The (key, value) pair. :rtype: tuple :raises KeyError: if D is empty.
popitem() -> tuple[str, Any]
setdefault
Same as calling D.get(k, d), and setting D[k]=d if k not found :param str key: The key to look up. :param any default: The value to set if key is not in the dictionary :returns: D[k] if k in D, else d. :rtype: any
setdefault(key: str, default: ~typing.Any = <object object>) -> Any
Parameters
| Name | Description |
|---|---|
|
key
Required
|
|
|
default
|
|
update
Updates D from mapping/iterable E and F. :param any args: Either a mapping object or an iterable of key-value pairs.
update(*args: Any, **kwargs: Any) -> None
values
values() -> ValuesView[Any]
Returns
| Type | Description |
|---|---|
|
an object providing a view on D's values |
Attributes
allowed_tools
Is either a [str] type or a MCPToolFilter type.
allowed_tools: list[str] | _models.MCPToolFilter | None
authorization
An OAuth access token that can be used with a remote MCP server, either with a custom MCP server URL or a service connector. Your application must handle the OAuth authorization flow and provide the token here.
authorization: str | None
connector_id
Identifier for service connectors, like those available in ChatGPT. One of server_url or
connector_id must be provided. Learn more about service connectors here. Currently supported
connector_id values are:
Dropbox: connector_dropbox
Gmail: connector_gmail
Google Calendar: connector_googlecalendar
Google Drive: connector_googledrive
Microsoft Teams: connector_microsoftteams
Outlook Calendar: connector_outlookcalendar
Outlook Email: connector_outlookemail
SharePoint: connector_sharepoint. Is one of the following types: Literal["connector_dropbox"], Literal["connector_gmail"], Literal["connector_googlecalendar"], Literal["connector_googledrive"], Literal["connector_microsoftteams"], Literal["connector_outlookcalendar"], Literal["connector_outlookemail"], Literal["connector_sharepoint"]
connector_id: Literal['connector_dropbox', 'connector_gmail', 'connector_googlecalendar', 'connector_googledrive', 'connector_microsoftteams', 'connector_outlookcalendar', 'connector_outlookemail', 'connector_sharepoint'] | None
headers
headers: dict[str, str] | None
project_connection_id
The connection ID in the project for the MCP server. The connection stores authentication and other connection details needed to connect to the MCP server.
project_connection_id: str | None
require_approval
MCPToolRequireApproval, Literal["always"], Literal["never"]
require_approval: _models.MCPToolRequireApproval | Literal['always'] | Literal['never'] | None
server_description
Optional description of the MCP server, used to provide more context.
server_description: str | None
server_label
A label for this MCP server, used to identify it in tool calls. Required.
server_label: str
server_url
The URL for the MCP server. One of server_url or connector_id must be provided.
server_url: str | None
type
The type of the MCP tool. Always mcp. Required. MCP.
type: MCP: 'mcp'>]