/servers/{slug}
Update an MCP server. Accepts the full server object from GET; read-only fields (id, tenantId, createdAt, updatedAt, lastToolRefreshAt) are silently ignored. Supports updating isEnabled, authorization, and config in a single call
In: header
Path Parameters
1 <= lengthRequest Body
application/json
URL-friendly name of the server, unique within the tenant
^[a-z0-9][-a-z0-9]*$length <= 20Human-readable description of the server
Authorization configuration for the server
Transport configuration used to connect to the server
Discovered OAuth metadata, or null when not discovered
OAuth client configuration, or null when not configured
Whether the server is enabled
Timeout in seconds for a single protocol request to the server
0 < value <= 9007199254740991Total timeout in seconds for a tool call, including progress notifications
0 < value <= 9007199254740991Whether a progress notification resets the protocol timeout
Whether large tool outputs are compressed before they are returned to the client
Whether the compression transform step is applied to tool outputs
Minimum output size in bytes before compression is applied
1024 <= value <= 9007199254740991Firewall rules evaluated against tool calls to the server
Who can see the server: only members or the whole organization
"private" | "organization"Read-only; accepted and ignored
Read-only; accepted and ignored
Deprecated; accepted and ignored
Read-only; accepted and ignored
Read-only; accepted and ignored
Read-only; accepted and ignored
Response Body
application/json
curl -X PUT "https://YOUR_ORG_ID.gatana.ai/api/v2/servers/string" \ -H "Content-Type: application/json" \ -d '{}'{
"id": "string",
"slug": "string",
"tenantId": "string",
"description": "string",
"authorization": {
"method": "none",
"credentialsScope": "server",
"apikeys": [
"string"
],
"toolRefreshCredentialPolicy": "server-scoped"
},
"transportConfig": {
"type": "httpstreaming",
"url": "string",
"headers": [
[
"string",
"string"
]
]
},
"oauthClientConfiguration": {},
"oauthMetadata": {},
"visibility": "private",
"isEnabled": true,
"lastToolRefreshAt": "string",
"timeoutProtocol": 9007199254740991,
"timeoutTotal": 9007199254740991,
"resetTimeoutOnProgressNotification": true,
"isOutputCompressionEnabled": true,
"isOutputCompressionTransformEnabled": true,
"outputCompressionThresholdBytes": 1024,
"firewallRules": [
{
"condition": "string",
"action": "deny"
}
],
"createdAt": "string",
"updatedAt": "string"
}