Overview

This endpoint returns all tools (functions) available for a specific MCP server connection. Tools are returned in MCP-compliant format with proper JSON schema definitions for each tool’s input parameters.

Prerequisites

  • Valid OAuth Token - Bearer token with mgmt.read scope
  • Existing Connection - Valid MCP server connection ID

Request

GET /api/v1/mcp-servers/{server_id}/tools

Path Parameters

ParameterTypeRequiredDescription
server_idintegerYesThe MCP server connection ID

Headers

HeaderTypeRequiredDescription
AuthorizationstringYesBearer token from OAuth authentication
Content-TypestringYesMust be application/json

Response

Success Response (200 OK)

{
  "success": true,
  "data": {
    "tools": [
      {
        "name": "get_deals",
        "description": "Retrieve deals from Pipedrive CRM",
        "inputSchema": {
          "type": "object",
          "properties": {
            "limit": {
              "type": "integer",
              "description": "Number of deals to retrieve"
            },
            "status": {
              "type": "string",
              "description": "Deal status filter"
            }
          },
          "required": ["limit"]
        },
        "annotations": {
          "audience": ["user"],
          "requiresAuth": true
        }
      }
    ],
    "total_count": 1,
    "mcp_server_id": 123
  }
}

Response Fields

FieldTypeDescription
successbooleanWhether the request was successful
data.toolsarrayArray of MCP-compliant tool definitions
data.total_countintegerTotal number of tools available
data.mcp_server_idintegerThe MCP server ID these tools belong to

Tool Object Fields

Each tool in the tools array contains:

FieldTypeDescription
namestringUnique identifier for the tool
descriptionstringHuman-readable description of the tool’s functionality
inputSchemaobjectJSON Schema defining the tool’s input parameters
annotationsobjectAdditional metadata about the tool

Pagination (Optional)

For large tool counts, responses may include pagination fields:

{
  "success": true,
  "data": {
    "tools": [...],
    "total_count": 150,
    "mcp_server_id": 123,
    "limit": 50,
    "offset": 0,
    "has_more": true
  }
}

Error Responses

Connection Not Found (404)

{
  "detail": "MCP server connection not found"
}

Unauthorized (401)

{
  "detail": "Authentication credentials were not provided."
}

Forbidden (403)

{
  "detail": "You do not have permission to access this connection."
}

Examples

Get Tools for Pipedrive Connection

curl -X GET "https://api.kambrium.com/api/v1/mcp-servers/123/tools" \
  -H "Authorization: Bearer your_oauth_token" \
  -H "Content-Type: application/json"

Response

{
  "success": true,
  "data": {
    "tools": [
      {
        "name": "get_deals",
        "description": "Retrieve deals from Pipedrive CRM",
        "inputSchema": {
          "type": "object",
          "properties": {
            "limit": {
              "type": "integer",
              "description": "Number of deals to retrieve",
              "minimum": 1,
              "maximum": 500
            },
            "status": {
              "type": "string",
              "description": "Deal status filter",
              "enum": ["open", "won", "lost", "deleted"]
            },
            "user_id": {
              "type": "integer",
              "description": "Filter by user ID"
            }
          },
          "required": ["limit"]
        },
        "annotations": {
          "audience": ["user"],
          "requiresAuth": true,
          "category": "crm"
        }
      },
      {
        "name": "create_person",
        "description": "Create a new person in Pipedrive",
        "inputSchema": {
          "type": "object",
          "properties": {
            "name": {
              "type": "string",
              "description": "Person's name"
            },
            "email": {
              "type": "array",
              "items": {
                "type": "string",
                "format": "email"
              },
              "description": "Email addresses"
            },
            "phone": {
              "type": "array",
              "items": {
                "type": "string"
              },
              "description": "Phone numbers"
            }
          },
          "required": ["name"]
        },
        "annotations": {
          "audience": ["user"],
          "requiresAuth": true,
          "category": "crm"
        }
      }
    ],
    "total_count": 2,
    "mcp_server_id": 123
  }
}

Implementation Notes

Tool Discovery

  • Tools are discovered from both local MCP server definitions and external API endpoints
  • Tools are filtered based on user’s OAuth permissions and connection access level
  • Disabled tools are excluded from the response

MCP Compliance

  • All tools follow MCP specification format
  • Input schemas use JSON Schema Draft 7
  • Annotations provide additional metadata for tool categorization

Performance

  • Results may be paginated for connections with many tools
  • Tools are cached per connection for improved response times
  • Database queries are optimized for fast retrieval