Skip to main content

MCP Servers

Tags: ai, integrations, mcp

Endpoints

List

GET /api/v2/w/{workspace_uuid}/mcp-servers

Description:

Model Context Protocol server management

List all MCP servers the current member has access to.

Tools are NOT included in the list response. Use GET /app-connections/mcp-servers/{id}/tools to fetch tools for a specific server.

Authorization: Requires apps:read scope

Parameters:

  • sortBy (McpServerSortField)
  • sortOrder (SortOrder)

Response: List of McpServerResponse


Oauth Discovery

POST /api/v2/w/{workspace_uuid}/mcp-servers/oauth-discovery

Description:

Model Context Protocol server management

Discover OAuth metadata for a given server URL.

Authorization: Requires apps:write scope

Parameters:

Response: See OAuthDiscoveryResponse


Delete Server Id

DELETE /api/v2/w/{workspace_uuid}/mcp-servers/{server_id}

Description:

Model Context Protocol server management

Delete an MCP server.

Authorization: Requires apps:admin scope

Parameters:

  • server_id (Integer)

Response: See dict


Get Server Id

GET /api/v2/w/{workspace_uuid}/mcp-servers/{server_id}

Description:

Model Context Protocol server management

Get a specific MCP server by ID.

Authorization: Requires apps:read scope

Parameters:

  • server_id (Integer)

Response: See McpServerResponse


Credentials

POST /api/v2/w/{workspace_uuid}/mcp-servers/{server_id}/credentials

Description:

Model Context Protocol server management

Create a MemberCredential linking the current member to an MCP server.

Used for direct_auth servers where no OAuth tokens are needed — simply establishes the member-to-app_connection link so the server recognises the member as authorised.

Authorization: Requires apps:write scope

Parameters:

  • server_id (Integer)

Response: See dict


Disable

POST /api/v2/w/{workspace_uuid}/mcp-servers/{server_id}/disable

Description:

Model Context Protocol server management

Disable an MCP server.

Args: server_id: The MCP server ID clear_registration: If true, also clear OAuth registration info (client_id, secret, etc.)

Authorization: Requires apps:write scope

Parameters:

  • server_id (Integer)
  • clear_registration (Boolean)

Response: See McpServerResponse


Enable

POST /api/v2/w/{workspace_uuid}/mcp-servers/{server_id}/enable

Description:

Model Context Protocol server management

Enable an MCP server and test its connection.

This endpoint handles the state transitions:

  • READY + enabled -> return current state (already active)
  • READY + disabled -> re-enable and return
  • REGISTER -> try to connect or determine next setup step
  • AUTHORIZE -> error (user needs to complete OAuth flow)

Authorization: Requires apps:write scope

Parameters:

  • server_id (Integer)

Response: See McpServerResponse


Icon

GET /api/v2/w/{workspace_uuid}/mcp-servers/{server_id}/icon

Description:

Model Context Protocol server management

Get the favicon for an MCP server.

Token-authenticated (HMAC) so the endpoint can be embedded in <img src=...> for the web UI.

Authentication: Public endpoint (no authentication required)

Parameters:

  • server_id (Integer)
  • token (String)

Members

GET /api/v2/w/{workspace_uuid}/mcp-servers/{server_id}/members

Description:

Model Context Protocol server management

List all members who have connected to this MCP server.

Authorization: Requires apps:read scope

Parameters:

  • server_id (Integer)

Response: List of McpServerMemberResponse


Authorize

GET /api/v2/w/{workspace_uuid}/mcp-servers/{server_id}/oauth/authorize

Description:

Model Context Protocol server management

Initiate OAuth authorization flow for an MCP server.

This endpoint dynamically generates the OAuth authorization URL and redirects the client directly into the OAuth flow. The server must be in AUTH state. OAuth discovery and dynamic client registration may run when needed before redirecting.

Authorization: Requires apps:write scope

Parameters:

  • server_id (Integer)

Prompts

GET /api/v2/w/{workspace_uuid}/mcp-servers/{server_id}/prompts

Description:

Model Context Protocol server management

Get the prompts for an MCP server.

Returns 403 with a structured detail when the current user needs to authenticate before prompts can be fetched. OAuth tokens may be refreshed when connecting to the remote server.

Authorization: Requires apps:read scope

Parameters:

  • server_id (Integer)

Resources

GET /api/v2/w/{workspace_uuid}/mcp-servers/{server_id}/resources

Description:

Model Context Protocol server management

Get the resources for an MCP server.

Returns 403 with a structured detail when the current user needs to authenticate before resources can be fetched. OAuth tokens may be refreshed when connecting to the remote server.

Authorization: Requires apps:read scope

Parameters:

  • server_id (Integer)

Test

POST /api/v2/w/{workspace_uuid}/mcp-servers/{server_id}/test

Description:

Model Context Protocol server management

Test an MCP server connection by performing an initialize handshake.

A successful probe marks the server as ready and enabled. Returns success or failure with latency info.

Authorization: Requires apps:read scope

Parameters:

  • server_id (Integer)

Tools

GET /api/v2/w/{workspace_uuid}/mcp-servers/{server_id}/tools

Description:

Model Context Protocol server management

Get the tools for an MCP server.

Returns 403 with a structured detail when the current user needs to authenticate before tools can be fetched. The detail object contains code, authType and either authorizeUrl or appUuid so any client can prompt the user accordingly.

OAuth tokens may be refreshed and tool definitions are fetched from the remote MCP server when listing tools.

Authorization: Requires apps:read scope

Parameters:

  • server_id (Integer)