Skip to main content
POST
/
api
/
v1
/
apps
/
{app_id}
/
connectors
/
{connector_id}
/
mcp_tools
/
search
Typescript (SDK)
import { ConductoroneSDKTypescript } from "conductorone-sdk-typescript";

const conductoroneSDKTypescript = new ConductoroneSDKTypescript({
  security: {
    bearerAuth: "<YOUR_BEARER_TOKEN_HERE>",
    oauth: "<YOUR_OAUTH_HERE>",
  },
});

async function run() {
  const result = await conductoroneSDKTypescript.mcpTool.search({
    appId: "<id>",
    connectorId: "<id>",
  });

  console.log(result);
}

run();
{
  "list": [
    {
      "allowedClientTypes": [],
      "appEntitlementId": "<string>",
      "appId": "<string>",
      "connectorId": "<string>",
      "createdAt": "2023-11-07T05:31:56Z",
      "defaultDisplayName": "<string>",
      "deletedAt": "2023-11-07T05:31:56Z",
      "description": "<string>",
      "discoveryHash": "<string>",
      "displayName": "<string>",
      "id": "<string>",
      "inputSchemaJson": "<string>",
      "lastCalledAt": "2023-11-07T05:31:56Z",
      "toolName": "<string>",
      "updatedAt": "2023-11-07T05:31:56Z"
    }
  ],
  "nextPageToken": "<string>"
}

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Authorization
string
header
required

This API uses OAuth2 with the Client Credential flow. Client Credentials must be sent in the BODY, not the headers. For an example of how to implement this, refer to the c1TokenSource.Token() function.

Path Parameters

app_id
string
required

App identifier (required).

connector_id
string
required

Connector ID (required).

Body

application/json

MCPToolServiceSearchRequest searches MCP tools with filters.

accessProfileId
string | null
deprecated

Deprecated: use access_profile_ids instead.

accessProfileIds
string[] | null

Optional: only return tools that are bound to at least one of these access profiles.

classificationFilter
enum<string>[] | null

Optional filter by classification. 0 (UNSPECIFIED) means no filter.

Available options:
TOOL_CLASSIFICATION_UNSPECIFIED,
TOOL_CLASSIFICATION_READ,
TOOL_CLASSIFICATION_WRITE,
TOOL_CLASSIFICATION_DESTRUCTIVE,
TOOL_CLASSIFICATION_SENSITIVE,
TOOL_CLASSIFICATION_DANGEROUS
excludeAccessProfileId
string | null
deprecated

Deprecated: use exclude_access_profile_ids instead.

excludeAccessProfileIds
string[] | null

Optional: exclude tools that are bound to any of these access profiles.

includeLastCalledAt
boolean | null

When true, the server populates MCPTool.last_called_at on each returned row by querying TSDB for the most recent mcp_tool_calls raw emit time per tool. Costs one Dynamo Limit(1) read per row; callers that don't render the "Last used" column should leave false.

pageSize
integer<int32> | null

Page size (max 100).

pageToken
string | null

Page token for pagination.

query
string | null

Optional text query matched against tool_name and display_name

refs
Mcp Tool Ref · object[] | null

Optional: filter by specific tool refs (used by websocket notify to re-fetch individual tools).

stateFilter
enum<string>[] | null

Optional filter by tool state. 0 (UNSPECIFIED) means no filter.

Available options:
MCP_TOOL_STATE_UNSPECIFIED,
MCP_TOOL_STATE_PENDING_REVIEW,
MCP_TOOL_STATE_APPROVED,
MCP_TOOL_STATE_DISABLED,
MCP_TOOL_STATE_REMOVED
visibilityFilter
enum<string>[] | null

Optional filter by visibility. 0 (UNSPECIFIED) means no filter.

Available options:
TOOL_VISIBILITY_UNSPECIFIED,
TOOL_VISIBILITY_FEATURED,
TOOL_VISIBILITY_AVAILABLE,
TOOL_VISIBILITY_BYPASSED

Response

200 - application/json

MCPToolServiceSearchResponse returns matching MCP tools.

MCPToolServiceSearchResponse returns matching MCP tools.

list
Mcp Tool · object[] | null

Matching MCP tools.

nextPageToken
string | null

Token for next page.