Gatana logoGatana Docs
Routesv2ServersSlug

/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

PUT
/servers/{slug}
AuthorizationBearer <token>

In: header

Path Parameters

slug*string
Length1 <= length

Request Body

application/json

slug?string

URL-friendly name of the server, unique within the tenant

Match^[a-z0-9][-a-z0-9]*$
Lengthlength <= 20
description?string

Human-readable description of the server

authorization?

Authorization configuration for the server

transportConfig?|||||

Transport configuration used to connect to the server

oauthMetadata?|

Discovered OAuth metadata, or null when not discovered

oauthClientConfiguration?|

OAuth client configuration, or null when not configured

isEnabled?boolean

Whether the server is enabled

timeoutProtocol?integer

Timeout in seconds for a single protocol request to the server

Range0 < value <= 9007199254740991
timeoutTotal?integer

Total timeout in seconds for a tool call, including progress notifications

Range0 < value <= 9007199254740991
resetTimeoutOnProgressNotification?boolean

Whether a progress notification resets the protocol timeout

isOutputCompressionEnabled?boolean

Whether large tool outputs are compressed before they are returned to the client

isOutputCompressionTransformEnabled?boolean

Whether the compression transform step is applied to tool outputs

outputCompressionThresholdBytes?integer

Minimum output size in bytes before compression is applied

Range1024 <= value <= 9007199254740991
firewallRules?array<>

Firewall rules evaluated against tool calls to the server

visibility?string

Who can see the server: only members or the whole organization

Value in"private" | "organization"
id?string

Read-only; accepted and ignored

tenantId?string

Read-only; accepted and ignored

name?string

Deprecated; accepted and ignored

lastToolRefreshAt?|

Read-only; accepted and ignored

createdAt?|

Read-only; accepted and ignored

updatedAt?|

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"
}