Skip to main content
Glama
Kong

Kong Konnect MCP Server

Official
by Kong

get_control_plane

Retrieve detailed configuration and status information for a specific Kong Konnect control plane by providing its ID, including endpoints, cluster type, and gateway settings.

Instructions

Get detailed information about a specific control plane.

INPUT:

  • controlPlaneId: String - ID of the control plane to retrieve

OUTPUT:

  • controlPlaneDetails: Object - Detailed information including:

    • controlPlaneId: String - Unique identifier for the control plane

    • name: String - Display name of the control plane

    • description: String - Description of the control plane

    • type: String - Type of the control plane

    • clusterType: String - Underlying cluster type

    • controlPlaneEndpoint: String - URL endpoint for the control plane

    • telemetryEndpoint: String - URL endpoint for telemetry

    • hasCloudGateway: Boolean - Whether cloud gateway is enabled

    • labels: Object - Labels assigned to this control plane

    • metadata: Object - Creation and update timestamps

  • relatedTools: Array - List of related tools for further analysis

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
controlPlaneIdYesControl Plane ID (obtainable from list-control-planes tool)

Implementation Reference

  • The primary handler function for the 'get_control_plane' MCP tool. It fetches detailed information about a specific control plane using the Kong API client and transforms the response into a standardized format with related tool suggestions.
    export async function getControlPlane(
      api: KongApi,
      controlPlaneId: string
    ) {
      try {
        const result = await api.getControlPlane(controlPlaneId);
    
        // Transform the response to have consistent field names
        const cp = result.data;
        return {
          controlPlaneDetails: {
            controlPlaneId: cp.id,
            name: cp.name,
            description: cp.description,
            type: cp.type,
            clusterType: cp.cluster_type,
            controlPlaneEndpoint: cp.control_plane_endpoint,
            telemetryEndpoint: cp.telemetry_endpoint,
            hasCloudGateway: cp.has_cloud_gateway,
            labels: cp.labels,
            metadata: {
              createdAt: cp.created_at,
              updatedAt: cp.updated_at
            }
          },
          relatedTools: [
            "Use list-services to see services configured in this control plane",
            "Use list-routes to see routes configured in this control plane",
            "Use query-api-requests to analyze traffic for this control plane"
          ]
        };
      } catch (error) {
        throw error;
      }
    }
  • src/index.ts:124-129 (registration)
    MCP tool registration dispatch logic in the main server class. Routes calls to the 'get_control_plane' tool to the appropriate handler function from the controlPlanes module.
    case "get_control_plane":
      result = await controlPlanes.getControlPlane(
        this.api,
        args.controlPlaneId
      );
      break;
  • Zod schema defining the input parameters for the 'get_control_plane' tool, specifically requiring the controlPlaneId.
    export const getControlPlaneParameters = () => z.object({
      controlPlaneId: z.string()
        .describe("Control Plane ID (obtainable from list-control-planes tool)"),
    });
  • src/tools.ts:75-79 (registration)
    Tool metadata registration defining the 'get_control_plane' tool's method name, description (from prompts), parameters schema, and category for use in MCP server registration.
    method: "get_control_plane",
    name: "Get Control Plane",
    description: prompts.getControlPlanePrompt(),
    parameters: parameters.getControlPlaneParameters(),
    category: "control_planes"

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Kong/mcp-konnect'

If you have feedback or need assistance with the MCP directory API, please join our Discord server