Open MCP Portaldocs
ReferenceMCP servers

Publish to the company catalog (team owners and admins)

POST/v1/teams/{team}/mcp-servers/{serverId}/publish

Under approval_required the server becomes pending until a platform admin reviews it; under self_publish it is published at once and its current capabilities are approved. 409 not_refreshed when the server has never been read; 409 already_published; 409 disabled.

Path Parameters

team*string

Team slug or ID

serverId*string
Formatuuid

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/v1/teams/string/mcp-servers/497f6eca-6276-4993-bfeb-53cbbbba6f08/publish" \  -H "Content-Type: application/json" \  -d '{}'
{  "data": {    "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",    "teamId": "a4ede8ba-7c0a-4485-8763-cbd9b282fbec",    "teamSlug": "string",    "teamName": "string",    "slug": "service-status",    "name": "Service status",    "description": "string",    "url": "https://status.example.com/mcp",    "transport": "streamable_http",    "authHeaderName": "string",    "hasAuth": true,    "authValueHint": "string",    "timeoutSeconds": 1,    "enabled": true,    "publishState": "private",    "effectivePublishPolicy": "approval_required",    "publishRequestedAt": "2019-08-24T14:15:22Z",    "publishRequestNote": "string",    "publishReviewedAt": "2019-08-24T14:15:22Z",    "publishReviewedByName": "string",    "publishReviewNote": "string",    "counts": {      "tools": 0,      "resources": 0,      "resourceTemplates": 0,      "prompts": 0    },    "pendingChanges": 0,    "health": {      "status": "healthy",      "checkedAt": "2019-08-24T14:15:22Z",      "statusSince": "2019-08-24T14:15:22Z",      "latencyMs": 0,      "errorClass": "unavailable",      "message": "string",      "signInRequired": true    },    "refreshedAt": "2019-08-24T14:15:22Z",    "lastRefreshError": "string",    "requirement": {      "providerId": "4834bcdc-4a64-444d-966b-1a6fe381da24",      "providerSlug": "string",      "providerName": "string",      "providerEnabled": true,      "scopes": [        "string"      ]    },    "capturePayloads": true,    "authMode": "none",    "oauth": {      "providerId": "4834bcdc-4a64-444d-966b-1a6fe381da24",      "providerSlug": "string",      "resource": "https://api.githubcopilot.com/mcp/",      "resourceMetadataUrl": "https://api.githubcopilot.com/.well-known/oauth-protected-resource/mcp/",      "authorizationServer": "https://github.com/login/oauth",      "issuer": "https://github.com/login/oauth",      "authorizationEndpoint": "https://github.com/login/oauth/authorize",      "tokenEndpoint": "https://github.com/login/oauth/access_token",      "revocationEndpoint": "string",      "scopes": [        "string"      ],      "scopesSupported": [        "string"      ],      "registration": "dcr",      "clientIdHint": "string",      "hasClientSecret": true,      "clientSecretExpiresAt": "2019-08-24T14:15:22Z",      "tokenAuthMethod": "client_secret_basic",      "sendResource": true,      "issParameterSupported": true,      "platformProvider": {        "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",        "slug": "string",        "name": "string",        "preset": "github",        "logoUrl": "string",        "kind": "oauth2",        "server": {          "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",          "slug": "string",          "name": "string",          "teamSlug": "string"        }      },      "setupConnection": {        "status": "active",        "personId": "f3e5ff26-28ff-4cd6-9b1b-e303a185a13a",        "personName": "string",        "authorizedAt": "2019-08-24T14:15:22Z"      },      "connectionCount": 0,      "discoveredAt": "2019-08-24T14:15:22Z",      "redirectUri": "https://mcp.example.com/connect/callback"    },    "sendIdentity": true,    "revision": 0,    "createdAt": "2019-08-24T14:15:22Z",    "updatedAt": "2019-08-24T14:15:22Z"  }}