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
| Name | Required | Description | Default |
|---|---|---|---|
| controlPlaneId | Yes | Control Plane ID (obtainable from list-control-planes tool) |
Implementation Reference
- src/operations/controlPlanes.ts:70-104 (handler)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;
- src/parameters.ts:144-147 (schema)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"