Documentation
¶
Index ¶
- func RegisterTools(s *server.MCPServer, kubeconfig string, readOnly bool)
- type CheckStatus
- type HealthCheckResult
- type KubescapeTool
- func (k *KubescapeTool) HandleCheckHealth(ctx context.Context, request mcp.CallToolRequest) (*mcp.CallToolResult, error)
- func (k *KubescapeTool) HandleGetApplicationProfile(ctx context.Context, request mcp.CallToolRequest) (*mcp.CallToolResult, error)
- func (k *KubescapeTool) HandleGetConfigurationScan(ctx context.Context, request mcp.CallToolRequest) (*mcp.CallToolResult, error)
- func (k *KubescapeTool) HandleGetNetworkNeighborhood(ctx context.Context, request mcp.CallToolRequest) (*mcp.CallToolResult, error)
- func (k *KubescapeTool) HandleGetVulnerabilityDetails(ctx context.Context, request mcp.CallToolRequest) (*mcp.CallToolResult, error)
- func (k *KubescapeTool) HandleListApplicationProfiles(ctx context.Context, request mcp.CallToolRequest) (*mcp.CallToolResult, error)
- func (k *KubescapeTool) HandleListConfigurationScans(ctx context.Context, request mcp.CallToolRequest) (*mcp.CallToolResult, error)
- func (k *KubescapeTool) HandleListNetworkNeighborhoods(ctx context.Context, request mcp.CallToolRequest) (*mcp.CallToolResult, error)
- func (k *KubescapeTool) HandleListVulnerabilitiesInManifest(ctx context.Context, request mcp.CallToolRequest) (*mcp.CallToolResult, error)
- func (k *KubescapeTool) HandleListVulnerabilityManifests(ctx context.Context, request mcp.CallToolRequest) (*mcp.CallToolResult, error)
- type KubescapeToolInterface
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type CheckStatus ¶
type CheckStatus struct {
Status string `json:"status"`
Message string `json:"message"`
Details interface{} `json:"details,omitempty"`
}
CheckStatus represents the status of a single check
type HealthCheckResult ¶
type HealthCheckResult struct {
Healthy bool `json:"healthy"`
Checks map[string]CheckStatus `json:"checks"`
Summary string `json:"summary"`
Recommendations []string `json:"recommendations,omitempty"`
}
HealthCheckResult represents the result of a health check
type KubescapeTool ¶
type KubescapeTool struct {
// contains filtered or unexported fields
}
KubescapeTool holds the clients for Kubescape and Kubernetes APIs
func NewKubescapeTool ¶
func NewKubescapeTool(kubeconfig string) *KubescapeTool
NewKubescapeTool creates a new KubescapeTool with Kubernetes clients
func NewKubescapeToolWithClients ¶
func NewKubescapeToolWithClients( k8sClient kubernetes.Interface, apiExtClient apiextensionsclientset.Interface, spdxClient spdxv1beta1.SpdxV1beta1Interface, ) *KubescapeTool
NewKubescapeToolWithClients creates a KubescapeTool with pre-configured clients for testing
func NewKubescapeToolWithError ¶
func NewKubescapeToolWithError(err error) *KubescapeTool
NewKubescapeToolWithError creates a KubescapeTool with an initialization error for testing error paths
func (*KubescapeTool) HandleCheckHealth ¶
func (k *KubescapeTool) HandleCheckHealth(ctx context.Context, request mcp.CallToolRequest) (*mcp.CallToolResult, error)
Export handler methods for testing
func (*KubescapeTool) HandleGetApplicationProfile ¶
func (k *KubescapeTool) HandleGetApplicationProfile(ctx context.Context, request mcp.CallToolRequest) (*mcp.CallToolResult, error)
func (*KubescapeTool) HandleGetConfigurationScan ¶
func (k *KubescapeTool) HandleGetConfigurationScan(ctx context.Context, request mcp.CallToolRequest) (*mcp.CallToolResult, error)
func (*KubescapeTool) HandleGetNetworkNeighborhood ¶
func (k *KubescapeTool) HandleGetNetworkNeighborhood(ctx context.Context, request mcp.CallToolRequest) (*mcp.CallToolResult, error)
func (*KubescapeTool) HandleGetVulnerabilityDetails ¶
func (k *KubescapeTool) HandleGetVulnerabilityDetails(ctx context.Context, request mcp.CallToolRequest) (*mcp.CallToolResult, error)
func (*KubescapeTool) HandleListApplicationProfiles ¶
func (k *KubescapeTool) HandleListApplicationProfiles(ctx context.Context, request mcp.CallToolRequest) (*mcp.CallToolResult, error)
func (*KubescapeTool) HandleListConfigurationScans ¶
func (k *KubescapeTool) HandleListConfigurationScans(ctx context.Context, request mcp.CallToolRequest) (*mcp.CallToolResult, error)
func (*KubescapeTool) HandleListNetworkNeighborhoods ¶
func (k *KubescapeTool) HandleListNetworkNeighborhoods(ctx context.Context, request mcp.CallToolRequest) (*mcp.CallToolResult, error)
func (*KubescapeTool) HandleListVulnerabilitiesInManifest ¶
func (k *KubescapeTool) HandleListVulnerabilitiesInManifest(ctx context.Context, request mcp.CallToolRequest) (*mcp.CallToolResult, error)
func (*KubescapeTool) HandleListVulnerabilityManifests ¶
func (k *KubescapeTool) HandleListVulnerabilityManifests(ctx context.Context, request mcp.CallToolRequest) (*mcp.CallToolResult, error)
type KubescapeToolInterface ¶
type KubescapeToolInterface interface {
HandleCheckHealth(ctx context.Context, request mcp.CallToolRequest) (*mcp.CallToolResult, error)
HandleListVulnerabilityManifests(ctx context.Context, request mcp.CallToolRequest) (*mcp.CallToolResult, error)
HandleListVulnerabilitiesInManifest(ctx context.Context, request mcp.CallToolRequest) (*mcp.CallToolResult, error)
HandleGetVulnerabilityDetails(ctx context.Context, request mcp.CallToolRequest) (*mcp.CallToolResult, error)
HandleListConfigurationScans(ctx context.Context, request mcp.CallToolRequest) (*mcp.CallToolResult, error)
HandleGetConfigurationScan(ctx context.Context, request mcp.CallToolRequest) (*mcp.CallToolResult, error)
HandleListApplicationProfiles(ctx context.Context, request mcp.CallToolRequest) (*mcp.CallToolResult, error)
HandleGetApplicationProfile(ctx context.Context, request mcp.CallToolRequest) (*mcp.CallToolResult, error)
HandleListNetworkNeighborhoods(ctx context.Context, request mcp.CallToolRequest) (*mcp.CallToolResult, error)
HandleGetNetworkNeighborhood(ctx context.Context, request mcp.CallToolRequest) (*mcp.CallToolResult, error)
}
Interfaces for testing - allows mocking the Kubernetes clients
Click to show internal directories.
Click to hide internal directories.