PUT /accounts/{account_id}/access/ai-controls/mcp/servers/{id}

Updates an MCP server's configuration and credentials.

Servers

Path parameters

Name Type Required Description
id String Yes
account_id String Yes

Request headers

Name Type Required Description
Content-Type String Yes The media type of the request body.

Default value: "application/json"

Request body fields

Name Type Required Description
secure_web_gateway Boolean No

Route outbound traffic to this MCP server through Zero Trust Secure Web Gateway.

Default value: false

name String No

Display name for the MCP server.

updated_tools[] Array No

Server-wide tool capability overrides.

updated_tools[].name String Yes

Name of the tool or prompt capability to override.

updated_tools[].description String No

Custom description exposed for the capability.

updated_tools[].enabled Boolean No

Whether the capability is available through the MCP server.

updated_tools[].alias String No

Custom name exposed for the capability.

description String No

Optional description of the MCP server.

updated_prompts[] Array No

Server-wide prompt capability overrides.

updated_prompts[].name String Yes

Name of the tool or prompt capability to override.

updated_prompts[].description String No

Custom description exposed for the capability.

updated_prompts[].enabled Boolean No

Whether the capability is available through the MCP server.

updated_prompts[].alias String No

Custom name exposed for the capability.

auth_credentials String No

Static credential for the upstream MCP server. For auth_type "bearer", either a raw token string (e.g. "sk-abc123"), which is wrapped server-side as Authorization: Bearer <token>, or a JSON-encoded object of the form {"headers":{"Header-Name":"value",...}} for custom or multiple static headers (e.g. Cloudflare Access service tokens: {"headers":{"cf-access-client-id":"...","cf-access-client-secret":"..."}}).

client_secret String No

Pre-registered OAuth client_secret. Write-only - accepted on create/update when auth_credentials.auth_mode is 'manual'. Stored AES-GCM-encrypted in server_oauth_secrets; never returned by read endpoints.

is_shared_oauth_callback_enabled Boolean No

When true, the gateway worker uses the shared Cloudflare-owned OAuth callback endpoint as the redirect_uri for upstream on-behalf OAuth, instead of the customer portal hostname. Defaults to false (off); opt in per server by setting true.

Default value: false

How to start integrating

  1. Add HTTP Task to your workflow definition.
  2. Search for the API you want to integrate with and click on the name.
    • This loads the API reference documentation and prepares the Http request settings.
  3. Click Test request to test run your request to the API and see the API's response.