Skip to content
Start here

AI Controls

AI ControlsMcp

AI ControlsMcpPortals

List MCP Portals
zero_trust.access.ai_controls.mcp.portals.list(PortalListParams**kwargs) -> SyncV4PagePaginationArray[PortalListResponse]
GET/accounts/{account_id}/access/ai-controls/mcp/portals
Create a new MCP Portal
zero_trust.access.ai_controls.mcp.portals.create(PortalCreateParams**kwargs) -> PortalCreateResponse
POST/accounts/{account_id}/access/ai-controls/mcp/portals
Read details of an MCP Portal
zero_trust.access.ai_controls.mcp.portals.read(strid, PortalReadParams**kwargs) -> PortalReadResponse
GET/accounts/{account_id}/access/ai-controls/mcp/portals/{id}
Update a MCP Portal
zero_trust.access.ai_controls.mcp.portals.update(strid, PortalUpdateParams**kwargs) -> PortalUpdateResponse
PUT/accounts/{account_id}/access/ai-controls/mcp/portals/{id}
Delete a MCP Portal
zero_trust.access.ai_controls.mcp.portals.delete(strid, PortalDeleteParams**kwargs) -> PortalDeleteResponse
DELETE/accounts/{account_id}/access/ai-controls/mcp/portals/{id}
ModelsExpand Collapse
class PortalListResponse:
id: str

portal id

maxLength32
minLength1
hostname: str
name: str
maxLength350
servers: List[Server]
id: str

server id

maxLength32
minLength1
auth_type: Literal["oauth", "bearer", "unauthenticated"]
One of the following:
"oauth"
"bearer"
"unauthenticated"
hostname: str
formaturi
name: str
maxLength350
prompts: List[Dict[str, object]]
tools: List[Dict[str, object]]
created_at: Optional[datetime]
formatdate-time
created_by: Optional[str]
default_disabled: Optional[bool]
description: Optional[str]
maxLength512
error: Optional[str]
last_successful_sync: Optional[datetime]
formatdate-time
last_synced: Optional[datetime]
formatdate-time
modified_at: Optional[datetime]
formatdate-time
modified_by: Optional[str]
on_behalf: Optional[bool]
status: Optional[str]
updated_prompts: Optional[List[ServerUpdatedPrompt]]
name: str
description: Optional[str]
enabled: Optional[bool]
portal_alias: Optional[str]
server_alias: Optional[str]
updated_tools: Optional[List[ServerUpdatedTool]]
name: str
description: Optional[str]
enabled: Optional[bool]
portal_alias: Optional[str]
server_alias: Optional[str]
allow_code_mode: Optional[bool]

Allow remote code execution in Dynamic Workers (beta)

created_at: Optional[datetime]
formatdate-time
created_by: Optional[str]
description: Optional[str]
maxLength512
modified_at: Optional[datetime]
formatdate-time
modified_by: Optional[str]
secure_web_gateway: Optional[bool]

Route outbound MCP traffic through Zero Trust Secure Web Gateway

class PortalCreateResponse:
id: str

portal id

maxLength32
minLength1
hostname: str
name: str
maxLength350
servers: List[Server]
id: str

server id

maxLength32
minLength1
auth_type: Literal["oauth", "bearer", "unauthenticated"]
One of the following:
"oauth"
"bearer"
"unauthenticated"
hostname: str
formaturi
name: str
maxLength350
prompts: List[Dict[str, object]]
tools: List[Dict[str, object]]
created_at: Optional[datetime]
formatdate-time
created_by: Optional[str]
default_disabled: Optional[bool]
description: Optional[str]
maxLength512
error: Optional[str]
last_successful_sync: Optional[datetime]
formatdate-time
last_synced: Optional[datetime]
formatdate-time
modified_at: Optional[datetime]
formatdate-time
modified_by: Optional[str]
on_behalf: Optional[bool]
status: Optional[str]
updated_prompts: Optional[List[ServerUpdatedPrompt]]
name: str
description: Optional[str]
enabled: Optional[bool]
portal_alias: Optional[str]
server_alias: Optional[str]
updated_tools: Optional[List[ServerUpdatedTool]]
name: str
description: Optional[str]
enabled: Optional[bool]
portal_alias: Optional[str]
server_alias: Optional[str]
allow_code_mode: Optional[bool]

Allow remote code execution in Dynamic Workers (beta)

created_at: Optional[datetime]
formatdate-time
created_by: Optional[str]
description: Optional[str]
maxLength512
modified_at: Optional[datetime]
formatdate-time
modified_by: Optional[str]
secure_web_gateway: Optional[bool]

Route outbound MCP traffic through Zero Trust Secure Web Gateway

class PortalReadResponse:
id: str

portal id

maxLength32
minLength1
hostname: str
name: str
maxLength350
servers: List[Server]
id: str

server id

maxLength32
minLength1
auth_type: Literal["oauth", "bearer", "unauthenticated"]
One of the following:
"oauth"
"bearer"
"unauthenticated"
hostname: str
formaturi
name: str
maxLength350
prompts: List[Dict[str, object]]
tools: List[Dict[str, object]]
created_at: Optional[datetime]
formatdate-time
created_by: Optional[str]
default_disabled: Optional[bool]
description: Optional[str]
maxLength512
error: Optional[str]
last_successful_sync: Optional[datetime]
formatdate-time
last_synced: Optional[datetime]
formatdate-time
modified_at: Optional[datetime]
formatdate-time
modified_by: Optional[str]
on_behalf: Optional[bool]
status: Optional[str]
updated_prompts: Optional[List[ServerUpdatedPrompt]]
name: str
description: Optional[str]
enabled: Optional[bool]
portal_alias: Optional[str]
server_alias: Optional[str]
updated_tools: Optional[List[ServerUpdatedTool]]
name: str
description: Optional[str]
enabled: Optional[bool]
portal_alias: Optional[str]
server_alias: Optional[str]
allow_code_mode: Optional[bool]

Allow remote code execution in Dynamic Workers (beta)

created_at: Optional[datetime]
formatdate-time
created_by: Optional[str]
description: Optional[str]
maxLength512
modified_at: Optional[datetime]
formatdate-time
modified_by: Optional[str]
secure_web_gateway: Optional[bool]

Route outbound MCP traffic through Zero Trust Secure Web Gateway

class PortalUpdateResponse:
id: str

portal id

maxLength32
minLength1
hostname: str
name: str
maxLength350
servers: List[Server]
id: str

server id

maxLength32
minLength1
auth_type: Literal["oauth", "bearer", "unauthenticated"]
One of the following:
"oauth"
"bearer"
"unauthenticated"
hostname: str
formaturi
name: str
maxLength350
prompts: List[Dict[str, object]]
tools: List[Dict[str, object]]
created_at: Optional[datetime]
formatdate-time
created_by: Optional[str]
default_disabled: Optional[bool]
description: Optional[str]
maxLength512
error: Optional[str]
last_successful_sync: Optional[datetime]
formatdate-time
last_synced: Optional[datetime]
formatdate-time
modified_at: Optional[datetime]
formatdate-time
modified_by: Optional[str]
on_behalf: Optional[bool]
status: Optional[str]
updated_prompts: Optional[List[ServerUpdatedPrompt]]
name: str
description: Optional[str]
enabled: Optional[bool]
portal_alias: Optional[str]
server_alias: Optional[str]
updated_tools: Optional[List[ServerUpdatedTool]]
name: str
description: Optional[str]
enabled: Optional[bool]
portal_alias: Optional[str]
server_alias: Optional[str]
allow_code_mode: Optional[bool]

Allow remote code execution in Dynamic Workers (beta)

created_at: Optional[datetime]
formatdate-time
created_by: Optional[str]
description: Optional[str]
maxLength512
modified_at: Optional[datetime]
formatdate-time
modified_by: Optional[str]
secure_web_gateway: Optional[bool]

Route outbound MCP traffic through Zero Trust Secure Web Gateway

class PortalDeleteResponse:
id: str

portal id

maxLength32
minLength1
hostname: str
name: str
maxLength350
allow_code_mode: Optional[bool]

Allow remote code execution in Dynamic Workers (beta)

created_at: Optional[datetime]
formatdate-time
created_by: Optional[str]
description: Optional[str]
maxLength512
modified_at: Optional[datetime]
formatdate-time
modified_by: Optional[str]
secure_web_gateway: Optional[bool]

Route outbound MCP traffic through Zero Trust Secure Web Gateway

AI ControlsMcpServers

List MCP Servers
zero_trust.access.ai_controls.mcp.servers.list(ServerListParams**kwargs) -> SyncV4PagePaginationArray[ServerListResponse]
GET/accounts/{account_id}/access/ai-controls/mcp/servers
Create a new MCP Server
zero_trust.access.ai_controls.mcp.servers.create(ServerCreateParams**kwargs) -> ServerCreateResponse
POST/accounts/{account_id}/access/ai-controls/mcp/servers
Read the details of a MCP Server
zero_trust.access.ai_controls.mcp.servers.read(strid, ServerReadParams**kwargs) -> ServerReadResponse
GET/accounts/{account_id}/access/ai-controls/mcp/servers/{id}
Update a MCP Server
zero_trust.access.ai_controls.mcp.servers.update(strid, ServerUpdateParams**kwargs) -> ServerUpdateResponse
PUT/accounts/{account_id}/access/ai-controls/mcp/servers/{id}
Delete a MCP Server
zero_trust.access.ai_controls.mcp.servers.delete(strid, ServerDeleteParams**kwargs) -> ServerDeleteResponse
DELETE/accounts/{account_id}/access/ai-controls/mcp/servers/{id}
Sync MCP Server Capabilities
zero_trust.access.ai_controls.mcp.servers.sync(strid, ServerSyncParams**kwargs) -> object
POST/accounts/{account_id}/access/ai-controls/mcp/servers/{id}/sync
ModelsExpand Collapse
class ServerListResponse:
id: str

server id

maxLength32
minLength1
auth_type: Literal["oauth", "bearer", "unauthenticated"]
One of the following:
"oauth"
"bearer"
"unauthenticated"
hostname: str
formaturi
name: str
maxLength350
prompts: List[Dict[str, object]]
tools: List[Dict[str, object]]
created_at: Optional[datetime]
formatdate-time
created_by: Optional[str]
description: Optional[str]
maxLength512
error: Optional[str]
last_successful_sync: Optional[datetime]
formatdate-time
last_synced: Optional[datetime]
formatdate-time
modified_at: Optional[datetime]
formatdate-time
modified_by: Optional[str]
status: Optional[str]
updated_prompts: Optional[List[UpdatedPrompt]]
name: str
alias: Optional[str]
maxLength40
description: Optional[str]
enabled: Optional[bool]
updated_tools: Optional[List[UpdatedTool]]
name: str
alias: Optional[str]
maxLength40
description: Optional[str]
enabled: Optional[bool]
class ServerCreateResponse:
id: str

server id

maxLength32
minLength1
auth_type: Literal["oauth", "bearer", "unauthenticated"]
One of the following:
"oauth"
"bearer"
"unauthenticated"
hostname: str
formaturi
name: str
maxLength350
prompts: List[Dict[str, object]]
tools: List[Dict[str, object]]
created_at: Optional[datetime]
formatdate-time
created_by: Optional[str]
description: Optional[str]
maxLength512
error: Optional[str]
last_successful_sync: Optional[datetime]
formatdate-time
last_synced: Optional[datetime]
formatdate-time
modified_at: Optional[datetime]
formatdate-time
modified_by: Optional[str]
status: Optional[str]
updated_prompts: Optional[List[UpdatedPrompt]]
name: str
alias: Optional[str]
maxLength40
description: Optional[str]
enabled: Optional[bool]
updated_tools: Optional[List[UpdatedTool]]
name: str
alias: Optional[str]
maxLength40
description: Optional[str]
enabled: Optional[bool]
class ServerReadResponse:
id: str

server id

maxLength32
minLength1
auth_type: Literal["oauth", "bearer", "unauthenticated"]
One of the following:
"oauth"
"bearer"
"unauthenticated"
hostname: str
formaturi
name: str
maxLength350
prompts: List[Dict[str, object]]
tools: List[Dict[str, object]]
created_at: Optional[datetime]
formatdate-time
created_by: Optional[str]
description: Optional[str]
maxLength512
error: Optional[str]
last_successful_sync: Optional[datetime]
formatdate-time
last_synced: Optional[datetime]
formatdate-time
modified_at: Optional[datetime]
formatdate-time
modified_by: Optional[str]
status: Optional[str]
updated_prompts: Optional[List[UpdatedPrompt]]
name: str
alias: Optional[str]
maxLength40
description: Optional[str]
enabled: Optional[bool]
updated_tools: Optional[List[UpdatedTool]]
name: str
alias: Optional[str]
maxLength40
description: Optional[str]
enabled: Optional[bool]
class ServerUpdateResponse:
id: str

server id

maxLength32
minLength1
auth_type: Literal["oauth", "bearer", "unauthenticated"]
One of the following:
"oauth"
"bearer"
"unauthenticated"
hostname: str
formaturi
name: str
maxLength350
prompts: List[Dict[str, object]]
tools: List[Dict[str, object]]
created_at: Optional[datetime]
formatdate-time
created_by: Optional[str]
description: Optional[str]
maxLength512
error: Optional[str]
last_successful_sync: Optional[datetime]
formatdate-time
last_synced: Optional[datetime]
formatdate-time
modified_at: Optional[datetime]
formatdate-time
modified_by: Optional[str]
status: Optional[str]
updated_prompts: Optional[List[UpdatedPrompt]]
name: str
alias: Optional[str]
maxLength40
description: Optional[str]
enabled: Optional[bool]
updated_tools: Optional[List[UpdatedTool]]
name: str
alias: Optional[str]
maxLength40
description: Optional[str]
enabled: Optional[bool]
class ServerDeleteResponse:
id: str

server id

maxLength32
minLength1
auth_type: Literal["oauth", "bearer", "unauthenticated"]
One of the following:
"oauth"
"bearer"
"unauthenticated"
hostname: str
formaturi
name: str
maxLength350
prompts: List[Dict[str, object]]
tools: List[Dict[str, object]]
created_at: Optional[datetime]
formatdate-time
created_by: Optional[str]
description: Optional[str]
maxLength512
error: Optional[str]
last_successful_sync: Optional[datetime]
formatdate-time
last_synced: Optional[datetime]
formatdate-time
modified_at: Optional[datetime]
formatdate-time
modified_by: Optional[str]
status: Optional[str]
updated_prompts: Optional[List[UpdatedPrompt]]
name: str
alias: Optional[str]
maxLength40
description: Optional[str]
enabled: Optional[bool]
updated_tools: Optional[List[UpdatedTool]]
name: str
alias: Optional[str]
maxLength40
description: Optional[str]
enabled: Optional[bool]