Retrieve an MCP server
/api/v1/mcp-servers/{server_id}Get an MCP server by ID (tenant-scoped).
Required access
Credentials: delegated token, user session
Scope: mcp_servers:read
Private connectors are visible only to their owner. Organization-shared connectors are visible to active members. A connector outside that reach answers 404 rather than disclosing its existence.
Authorization
DelegatedToken A token issued to an external application acting for a specific user, prefixed gsmc_dt_. Carries that user's identity for attribution and ownership, is bound to the organization chosen when it was issued, and stays capped at member role however privileged the user is.
In: header
Path Parameters
uuidHeader Parameters
Selects the active organization for a direct user session that has more than one membership. Service-principal keys and delegated tokens are each bound to one organization and ignore it.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X GET "https://example.com/api/v1/mcp-servers/497f6eca-6276-4993-bfeb-53cbbbba6f08" \ -H "Authorization: Bearer $GUEST_MACHINES_API_KEY"{ "mcp_server": { "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "org_id": "a40f5d1f-d889-42e9-94ea-b9b33585fc6b", "owner_user_id": "65139110-7c3c-4777-b692-80c218be3b9d", "visibility": "org_shared", "published_at": "2019-08-24T14:15:22Z", "name": "string", "slug": "string", "description": "string", "url": "string", "transport": "sse", "auth_type": "none", "auth_hint": "string", "tool_filter": { "default_enabled": true, "allowed_tools": [ "string" ], "blocked_tools": [ "string" ] }, "require_approval": "always", "is_active": true, "discovered_tools": [ { "name": "string", "description": "string" } ], "tools_synced_at": "2019-08-24T14:15:22Z", "blocked_by_egress": false, "blocked_reason": "string", "created_at": "2019-08-24T14:15:22Z", "updated_at": "2019-08-24T14:15:22Z" }}{ "detail": "string", "error_code": "string", "request_id": "string"}{ "detail": "string", "error_code": "string", "request_id": "string"}{ "detail": "string", "error_code": "string", "request_id": "string"}{ "detail": "string", "error_code": "string", "request_id": "string"}{ "detail": "string", "error_code": "string", "request_id": "string"}{ "detail": "string", "error_code": "string", "request_id": "string"}Test an MCP server connection POST
Run an advisory backend-originated MCP `initialize` and `tools/list` probe. A successful result proves that Guest Machines can reach and authenticate to the endpoint; it does not prove that a model provider can reach it or that any production model currently supports hosted MCP.
Update an MCP server PATCH
Update selected connector fields. Omitted fields are unchanged. Changing the endpoint or credential clears cached tool discovery; run the connection probe again to refresh it. An authenticated connector's endpoint is origin-bound: changing its URL requires re-entering `auth_token` or explicitly setting `auth_type` to `none`. Connector edits are compare-and-swapped against the configuration read for validation; a concurrent edit answers `409`, and the caller must retrieve and reconcile the latest configuration.