Update a connector
/v1/mcp-integrations/{slug}Update a connector.
A partial update: absent fields are left unchanged. Changing the URL, the spec or the credentials marks a synced connector STALE until it is synced again. Sending guardrail_slugs replaces the list.
Requires an organization admin key, or a workspace admin key for the owning workspace (an organization-level connector needs an organization admin). Changing org_connection_for_users also requires an organization admin key. Returns 400 for settings that do not fit the connector's kind or auth type. Returns 402 when the organization's plan does not include the MCP Gateway. Returns 404 when the connector does not exist in the organization.
Authorization
AuthorizationBearer va_A platform API key (
va_...), created under Settings > API keys. Scoped to an organization or one workspace, with an admin or member role. Used by the management API.
Path parameters
slugstringrequiredThe connector's slug (
mcpi-...).
Query parameters
organizationstringrequiredThe organization's identifier (slug).
Request body application/json
the fields to change
namestringNew display name, up to 255 characters. A blank value is ignored.
At least 0 characters · At most 255 characters
descriptionstringNew description.
urlstringNew upstream URL (or base URL for a REST connector), up to 2048 characters; it must pass the egress policy.
At least 0 characters · At most 2048 characters
auth_typeenum<string>New auth type:
NONE,HEADERS,OAUTH_AUTOorOAUTH_CLIENT_CREDENTIALS.One of
"NONE","HEADERS","OAUTH_AUTO","OAUTH_CLIENT_CREDENTIALS"headersmap<string, string>HEADERSauth: replaces the stored headers. Write-only. Switching back toHEADERSwithout sending headers keeps the stored set.oauthobjectOAuth settings for a connector that authenticates upstream with OAuth.
OAUTH_CLIENT_CREDENTIALSneedsclient_idandclient_secret: a client you registered at the upstream's authorization server. ForOAUTH_AUTOon an MCP server they are optional: without a client the gateway registers itself; give one when the upstream requires pre-registration. On anOPENAPIorHTTPconnector, OAuth needstoken_endpoint, andOAUTH_AUTOalso needsauthorization_endpointandclient_id.Child attributes
client_idstringThe OAuth client ID, up to 500 characters.
At least 0 characters · At most 500 characters
client_secretstringwrite-onlyThe client secret, up to 2000 characters. Write-only: stored encrypted, never returned.
At least 0 characters · At most 2000 characters
scopesstringScopes to request, space-separated, up to 1000 characters. Empty clears them.
At least 0 characters · At most 1000 characters
token_endpointstringThe upstream token endpoint, up to 2000 characters. On an MCP server it skips discovery for client credentials. It must pass the egress policy.
At least 0 characters · At most 2000 characters
authorization_endpointstringOAUTH_AUTOon anOPENAPIorHTTPconnector: where people sign in (an https URL, up to 2000 characters). An MCP server's is discovered, so it is refused there.At least 0 characters · At most 2000 characters
spec_urlstringOPENAPIonly: a new spec URL. Empty clears it (an uploaded document must then be kept or given).At least 0 characters · At most 2048 characters
spec_contentstringOPENAPIonly: a new uploaded document, replacing the stored one. Empty clears it.spec_formatenum<string>OPENAPIonly: the format ofspec_content,JSONorYAML. Required withspec_content.One of
"JSON","YAML"http_toolsobject[]HTTPonly: replaces the declared endpoints. At most 200.At most 200 items
Child attributes
namestringrequiredThe tool's name, up to 128 characters.
At least 0 characters · At most 128 characters
methodstringrequiredThe HTTP method:
GET,POST,PUT,PATCH,DELETEorHEAD.At least 1 characters
pathstringrequiredThe path, relative to the connector's base URL, up to 2048 characters. May hold
{name}placeholders filled from arguments.At least 0 characters · At most 2048 characters
titlestringHuman-readable title, up to 255 characters.
At least 0 characters · At most 255 characters
descriptionstringWhat the tool does, up to 4000 characters. Agents read it to choose the tool.
At least 0 characters · At most 4000 characters
querystring[]Arguments sent as query parameters.
headersstring[]Arguments sent as request headers.
input_schemamap<string, object>A JSON Schema of type
object; its properties are the tool's arguments.body_formatstringHow the body is encoded:
json(default) orform.
query_paramsmap<string, string>Query-parameter credentials (
OPENAPIandHTTP,HEADERSauth): replaces the stored set; empty clears it.global_workspace_accessbooleanOrganization-level connectors only:
trueshares it with every workspace. Settingtrueon a workspace-owned connector is a 400.org_connection_for_usersbooleanOAUTH_AUTOonly: whether a signed-in person without their own connected account may use the organization connection. Changing it requires an organization admin.statusenum<string>ACTIVEorDISABLED. A disabled connector cannot be synced or used by new servers.One of
"ACTIVE","DISABLED"guardrail_slugsstring[]Replaces the connector's guardrails (in order, at most 10); an empty list removes them all.
At most 10 items
Responses
idstring<uuid>The connector's ID (UUID).
slugstringThe connector's slug (
mcpi-followed by 16 characters), used in the API paths.organizationstringThe organization that owns it.
workspace_idstring<uuid>The owning workspace (UUID). Absent for an organization-level connector.
namestringDisplay name.
descriptionstringDescription.
urlstringThe upstream URL (the base URL for a REST connector).
kindenum<string>MCP,OPENAPIorHTTP.One of
"MCP","OPENAPI","HTTP"spec_urlstringOPENAPI: where the document is fetched from.has_spec_documentbooleanOPENAPIandHTTP: whether an uploaded document is stored. The document itself is not returned.spec_formatenum<string>OPENAPI: the format of the uploaded document,JSONorYAML.One of
"JSON","YAML"spec_hashstringOPENAPIandHTTP: SHA-256 of the spec the last sync read.http_toolsobject[]HTTP: the declared endpoints.Child attributes
namestringrequiredThe tool's name, up to 128 characters.
At least 0 characters · At most 128 characters
methodstringrequiredThe HTTP method:
GET,POST,PUT,PATCH,DELETEorHEAD.At least 1 characters
pathstringrequiredThe path, relative to the connector's base URL, up to 2048 characters. May hold
{name}placeholders filled from arguments.At least 0 characters · At most 2048 characters
titlestringHuman-readable title, up to 255 characters.
At least 0 characters · At most 255 characters
descriptionstringWhat the tool does, up to 4000 characters. Agents read it to choose the tool.
At least 0 characters · At most 4000 characters
querystring[]Arguments sent as query parameters.
headersstring[]Arguments sent as request headers.
input_schemamap<string, object>A JSON Schema of type
object; its properties are the tool's arguments.body_formatstringHow the body is encoded:
json(default) orform.
query_param_namesstring[]Names of the query-parameter credentials. Their values are never returned.
transportenum<string>The upstream transport:
HTTP.One of
"HTTP"auth_typeenum<string>NONE,HEADERS,OAUTH_AUTOorOAUTH_CLIENT_CREDENTIALS.One of
"NONE","HEADERS","OAUTH_AUTO","OAUTH_CLIENT_CREDENTIALS"header_namesstring[]Names of the stored credential headers. Their values are never returned.
oauthobjectA connector's OAuth client registration with its upstream. The client secret is never returned.
Child attributes
client_idstringThe OAuth client ID the gateway uses at the upstream.
registrationstringHow the client was registered:
PRE_REGISTERED(given by you),CIMD(a client ID metadata document) orDCR(dynamic client registration). Absent until the first sign-in or token request.has_client_secretbooleantruewhen a client secret is stored.issuerstringThe upstream authorization server the registration is bound to.
scopesstringThe scopes requested, space-separated.
authorization_endpointstringWhere people sign in. Shown for
OPENAPIandHTTPconnectors only.token_endpointstringThe upstream token endpoint.
global_workspace_accessbooleanWhether every workspace in the organization may use it.
org_connection_for_usersbooleanOAUTH_AUTO: whether a signed-in person without their own connected account may use the organization connection.statusenum<string>ACTIVEorDISABLED.One of
"ACTIVE","DISABLED"protocol_versionstringThe MCP protocol version the upstream spoke on the last sync.
protocol_eraenum<string>MODERNorLEGACY, fromprotocol_version.One of
"MODERN","LEGACY"server_namestringThe name the upstream reported on the last sync (a REST connector: the spec's title).
server_versionstringThe version the upstream reported on the last sync.
instructionsstringUsage instructions the upstream sent for agents, if any.
sync_statusenum<string>NEVER,OK,FAILEDorSTALE.One of
"NEVER","OK","FAILED","STALE"sync_errorstringWhy the last sync failed. Absent unless
sync_statusisFAILED.last_synced_atstring<date-time>When the last successful sync finished (ISO 8601).
last_sync_attempt_atstring<date-time>When a sync was last attempted (ISO 8601).
created_bystringThe user who created it.
created_atstring<date-time>When it was created (ISO 8601).
updated_atstring<date-time>When it was last changed (ISO 8601).
guardrail_slugsstring[]Guardrails run on every call through this connector, in order. Empty when there are none.