Authentication

Edit an External MCP Connection

Changed on

The workspace owner (or anyone with the Edit any connection permission) can edit any connection. Other org members can edit only connections they created. Making a connection org-wide needs the Share with everyone permission. Name and direct access changes preserve credentials. URL, authentication type, or credential-mode changes invalidate the old identity atomically. Secret fields are write-only optional replacements and are never returned. expectedUpdatedAt prevents stale edits.

put/v1/mcp-connections/{connectionId}

Request

  • Base URL: https://api.openworklabs.com
  • URL: https://api.openworklabs.com/v1/mcp-connections/{connectionId}
  • Auth: one of:
    • API key in header x-api-key
    • HTTP bearer

Path parameters

connectionIdstring typeid required

Den TypeID with 'emc_' prefix and a 26-character base32 suffix.

Request body

expectedUpdatedAtstring date-time required
namestring required
urlstring uri required
authType'oauth' | 'apikey' | 'none' required
credentialMode'shared' | 'per_member' required
exposeDirectlyboolean
apiKeystring
apiKeyAuthScheme'bearer' | 'token'
authorizationServerIssuerstring uri nullable
requestedScopesstring[]

Response

Connection updated.

idstring required
namestring required
externalKeystring nullable required
urlstring required
authType'oauth' | 'apikey' | 'none' required
credentialMode'shared' | 'per_member' required
apiKeyAuthScheme'bearer' | 'token' required
exposeDirectlyboolean required
connectedboolean required
connectedAtstring date-time nullable required
createdByNamestring nullable
createdByYouboolean
createdAtstring date-time
updatedAtstring date-time required
connectedForMeboolean required
needsReconnectboolean
credentialHealth'unknown' | 'ready' | 'reconnect_required'
credentialHealthReason'authorization_rejected' | 'credential_expired' | 'post_authorization_validation_failed' nullable
credentialHealthCheckedAtstring date-time nullable
issuerReviewRequiredboolean
reconnectActionOwner'member' | 'organization_admin' nullable
missingFeaturesstring[]
externalAccountIdstring nullable
grantedScopesstring[]
tenantIdstring nullable
requiredAuthType'oauth' | 'apikey' | 'none' nullable
authPolicyConfirmedboolean
authTypeMismatchboolean
oauthClientConfiguredboolean
oauthClientRequiredboolean
setupRequiredboolean
oauthClientIdstring nullable
oauthClientHasSecretboolean

Whether a client secret is configured. Only returned with explicit connection-settings view permission; never the secret itself.

oauthCallbackUrlstring nullable
oauthSharedCallbackUrlstring nullable
oauthClientMetadataUrlstring nullable
oauthCallbackMode'shared-v1' | 'isolated-v1' | 'legacy-v1' nullable
oauthRegistrationSource'pre-registered' | 'client-metadata' | 'dynamic' nullable
authorizationServerIssuerstring nullable
requestedScopesstring[]
identityChangedboolean required
reconnectionRequiredboolean required

Changes

    • info

      added the new optional request property

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status