Open MCP Portaldocs
ReferenceGateways and calls

Replace the gateway's selection (team owners and admins); If-Match is the gateway's revision

PUT/v1/teams/{team}/gateways/{gatewayId}/capabilities

422 capability_not_selectable (details.capabilityIds, and details.reasons mapping each to unsupported_template or not_offered) when a capability is not offered by gateway-options (another team's private server, unapproved, gone, or a resource template with unsupported expressions). 422 too_many (at most 200). 422 name_clash (details.exposedName) when two selected capabilities expose the same name or URI.

Path Parameters

team*string

Team slug or ID

gatewayId*string
Formatuuid

Header Parameters

If-Match*string

The resource's revision, as returned in ETag (for example "3"). Missing returns 428; stale returns 412.

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X PUT "https://example.com/v1/teams/string/gateways/497f6eca-6276-4993-bfeb-53cbbbba6f08/capabilities" \  -H "If-Match: string" \  -H "Content-Type: application/json" \  -d '{    "items": [      {        "capabilityId": "486ae165-7fa3-4fe9-8d0b-0636c8459cb3"      }    ]  }'
{  "data": {    "revision": null,    "items": [      {        "requires": {          "providerId": "4834bcdc-4a64-444d-966b-1a6fe381da24",          "providerSlug": "github",          "providerName": "GitHub",          "scopes": [            "string"          ],          "connected": true,          "providerKind": "oauth2"        },        "capabilityId": "486ae165-7fa3-4fe9-8d0b-0636c8459cb3",        "serverId": "10d2345a-e43d-463d-830e-4f5b19b60d41",        "serverSlug": "string",        "serverName": "string",        "teamSlug": "string",        "kind": "tool",        "name": "string",        "exposedName": "service-status__check_outage",        "title": "string",        "description": "string",        "minRole": "owner",        "available": true,        "unavailableReason": "server_disabled",        "serverCapturesPayloads": true      }    ]  }}