query_api_requests | Query and analyze Kong API Gateway requests with customizable filters.
Before calling this it's necessary to have a controlPlaneID and a serviceID or routeID.
These can be obtained using the list-control-planes, list-services, and list-routes tools. INPUT: timeRange: String - Time range for data retrieval (15M, 1H, 6H, 12H, 24H, 7D) statusCodes: Number[] (optional) - Filter by specific HTTP status codes excludeStatusCodes: Number[] (optional) - Exclude specific HTTP status codes httpMethods: String[] (optional) - Filter by HTTP methods (e.g., GET, POST) consumerIds: String[] (optional) - Filter by consumer IDs serviceIds: String[] (optional) - Filter by service IDs. The format of this field must be ":". routeIds: String[] (optional) - Filter by route IDs. The format of this field must be "controlPlaneID:routeID" maxResults: Number - Maximum number of results to return (1-1000)
OUTPUT: metadata: Object - Contains totalRequests, timeRange, and applied filters requests: Array - List of request objects with details including: requestId: String - Unique request identifier timestamp: String - When the request occurred httpMethod: String - HTTP method used (GET, POST, etc.) uri: String - Request URI path statusCode: Number - HTTP status code of the response consumerId: String - ID of the consumer making the request serviceId: String - ID of the service handling the request routeId: String - ID of the matched route latency: Object - Response time metrics clientIp: String - IP address of the client and many more detailed fields...
|
get_consumer_requests | Retrieve and analyze API requests made by a specific consumer. INPUT: consumerId: String - ID of the consumer to analyze. The format of this field must be "controlPlaneID:consumerId". timeRange: String - Time range for data retrieval (15M, 1H, 6H, 12H, 24H, 7D) successOnly: Boolean - Filter to only show successful (2xx) requests (default: false) failureOnly: Boolean - Filter to only show failed (non-2xx) requests (default: false) maxResults: Number - Maximum number of results to return (1-1000)
OUTPUT: metadata: Object - Contains consumerId, totalRequests, timeRange, and filters statistics: Object - Usage statistics including: averageLatencyMs: Number - Average response time in milliseconds successRate: Number - Percentage of successful requests statusCodeDistribution: Array - Breakdown of requests by status code serviceDistribution: Array - Breakdown of requests by service
requests: Array - List of requests with details for each request
|
list_services | List all services associated with a control plane. INPUT: controlPlaneId: String - ID of the control plane size: Number - Number of services to return (1-1000, default: 100) offset: String (optional) - Pagination offset token from previous response
OUTPUT: metadata: Object - Contains controlPlaneId, size, offset, nextOffset, totalCount services: Array - List of services with details for each including: serviceId: String - Unique identifier for the service name: String - Display name of the service host: String - Target host for the service port: Number - Target port for the service protocol: String - Protocol used (http, https, grpc, etc.) path: String - Path prefix for the service retries: Number - Number of retries on failure connectTimeout: Number - Connection timeout in milliseconds writeTimeout: Number - Write timeout in milliseconds readTimeout: Number - Read timeout in milliseconds tags: Array - Tags associated with the service enabled: Boolean - Whether the service is enabled metadata: Object - Creation and update timestamps
relatedTools: Array - List of related tools for further analysis
|
list_routes | List all routes associated with a control plane. INPUT: controlPlaneId: String - ID of the control plane size: Number - Number of routes to return (1-1000, default: 100) offset: String (optional) - Pagination offset token from previous response
OUTPUT: metadata: Object - Contains controlPlaneId, size, offset, nextOffset, totalCount routes: Array - List of routes with details for each including: routeId: String - Unique identifier for the route name: String - Display name of the route protocols: Array - Protocols this route accepts (http, https, grpc, etc.) methods: Array - HTTP methods this route accepts hosts: Array - Hostnames this route matches paths: Array - URL paths this route matches stripPath: Boolean - Whether to strip the matched path prefix preserveHost: Boolean - Whether to preserve the host header serviceId: String - ID of the service this route forwards to enabled: Boolean - Whether the route is enabled metadata: Object - Creation and update timestamps
relatedTools: Array - List of related tools for further analysis
|
list_consumers | List all consumers associated with a control plane. INPUT: controlPlaneId: String - ID of the control plane size: Number - Number of consumers to return (1-1000, default: 100) offset: String (optional) - Pagination offset token from previous response
OUTPUT: metadata: Object - Contains controlPlaneId, size, offset, nextOffset, totalCount consumers: Array - List of consumers with details for each including: consumerId: String - Unique identifier for the consumer username: String - Username for this consumer customId: String - Custom identifier for this consumer tags: Array - Tags associated with the consumer enabled: Boolean - Whether the consumer is enabled metadata: Object - Creation and update timestamps
relatedTools: Array - List of related tools for consumer analysis
|
list_plugins | List all plugins associated with a control plane. INPUT: controlPlaneId: String - ID of the control plane size: Number - Number of plugins to return (1-1000, default: 100) offset: String (optional) - Pagination offset token from previous response
OUTPUT: metadata: Object - Contains controlPlaneId, size, offset, nextOffset, totalCount plugins: Array - List of plugins with details for each including: pluginId: String - Unique identifier for the plugin name: String - Name of the plugin (e.g., rate-limiting, cors, etc.) enabled: Boolean - Whether the plugin is enabled config: Object - Plugin-specific configuration protocols: Array - Protocols this plugin applies to tags: Array - Tags associated with the plugin scoping: Object - Defines plugin scope including: consumerId: String - Consumer this plugin applies to (if any) serviceId: String - Service this plugin applies to (if any) routeId: String - Route this plugin applies to (if any) global: Boolean - Whether this is a global plugin
metadata: Object - Creation and update timestamps
relatedTools: Array - List of related tools for plugin configuration
|
list_control_planes | List all control planes in your organization. INPUT: pageSize: Number - Number of control planes per page (1-1000, default: 10) pageNumber: Number (optional) - Page number to retrieve filterName: String (optional) - Filter control planes by name filterClusterType: String (optional) - Filter by cluster type (kubernetes, docker, etc.) filterCloudGateway: Boolean (optional) - Filter by cloud gateway capability labels: String (optional) - Filter by labels (format: 'key:value,existCheck') sort: String (optional) - Sort field and direction (e.g. 'name,created_at desc')
OUTPUT: metadata: Object - Contains pageSize, pageNumber, totalPages, totalCount, filters, sort controlPlanes: Array - List of control planes with details for each 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
usage: Object - Information about how to use these results
|
get_control_plane | Get detailed information about a specific control plane. INPUT: OUTPUT: |
list_control_plane_group_memberships | List all control planes that are members of a specific control plane group. INPUT: groupId: String - ID of the control plane group (control plane that acts as the group) pageSize: Number - Number of members to return per page (1-1000, default: 10) pageAfter: String (optional) - Cursor for pagination after a specific item
OUTPUT: metadata: Object - Contains groupId, pageSize, pageAfter, nextPageAfter, totalCount members: Array - List of member control planes with details for each 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 membershipStatus: Object - Group membership status including: status: String - Current status (OK, CONFLICT, etc.) message: String - Status message conflicts: Array - List of configuration conflicts if any
metadata: Object - Creation and update timestamps
relatedTools: Array - List of related tools for group management
|
check_control_plane_group_membership | Check if a control plane is a member of any group. INPUT: OUTPUT: controlPlaneId: String - ID of the control plane that was checked groupMembership: Object - Membership information including: isMember: Boolean - Whether the control plane is a member of any group groupId: String - ID of the group this control plane belongs to (if any) groupName: String - Name of the group this control plane belongs to status: String - Membership status (OK, CONFLICT, etc.) message: String - Status message conflicts: Array - List of configuration conflicts if any
relatedTools: Array - List of related tools for group management
|