Documentation
¶
Index ¶
- Constants
- type AnalyzerJobResult
- type AnalyzerJobStatusResult
- type ExecuteAutomationParams
- type ExecuteAutomationResult
- type ExecuteAutomationTool
- func (t *ExecuteAutomationTool) Definition() mcp.Tool
- func (t *ExecuteAutomationTool) Handle(ctx context.Context, request mcp.CallToolRequest, ...) (ExecuteAutomationResult, error)
- func (t *ExecuteAutomationTool) Handler() server.ToolHandlerFunc
- func (t *ExecuteAutomationTool) Name() string
- func (t *ExecuteAutomationTool) ValidateParams(params *ExecuteAutomationParams) error
- func (t *ExecuteAutomationTool) ValidatePermissions(ctx context.Context, params ExecuteAutomationParams) error
- type FilteredOutputAction
- type FilteredOutputJob
- type ResponderActionResult
- type ResponderActionStatusResult
Constants ¶
View Source
const ( OperationRunAnalyzer = "run-analyzer" OperationRunResponder = "run-responder" OperationGetJobStatus = "get-job-status" OperationGetActionStatus = "get-action-status" )
View Source
const ExecuteAutomationToolDescription = `` /* 1937-byte string literal not displayed */
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AnalyzerJobResult ¶ added in v0.3.1
type AnalyzerJobResult struct {
Operation string `json:"operation"`
Job *FilteredOutputJob `json:"job"`
Message string `json:"message"`
}
func NewAnalyzerJobResult ¶ added in v0.3.1
func NewAnalyzerJobResult(job *thehive.OutputJob) *AnalyzerJobResult
type AnalyzerJobStatusResult ¶ added in v0.3.1
type AnalyzerJobStatusResult struct {
Operation string `json:"operation"`
JobID string `json:"jobId"`
AnalyzerID string `json:"analyzerId"`
AnalyzerName string `json:"analyzerName"`
Status string `json:"status"`
Result map[string]interface{} `json:"result,omitempty"`
Message string `json:"message"`
}
func NewAnalyzerJobStatusResult ¶ added in v0.3.1
func NewAnalyzerJobStatusResult(job *thehive.OutputJob) *AnalyzerJobStatusResult
type ExecuteAutomationParams ¶ added in v0.3.1
type ExecuteAutomationParams struct {
Operation string `` /* 174-byte string literal not displayed */
AnalyzerID string `` /* 160-byte string literal not displayed */
ResponderID string `` /* 165-byte string literal not displayed */
CortexID string `` /* 268-byte string literal not displayed */
ObservableID string `` /* 144-byte string literal not displayed */
EntityType string `` /* 155-byte string literal not displayed */
EntityID string `` /* 148-byte string literal not displayed */
JobID string `json:"job-id,omitempty" jsonschema_description:"Job ID for get-job-status operations."`
ActionID string `json:"action-id,omitempty" jsonschema_description:"Action ID for get-action-status operations."`
Parameters map[string]interface{} `` /* 158-byte string literal not displayed */
}
Parameter extraction and validation
type ExecuteAutomationResult ¶ added in v0.3.1
type ExecuteAutomationResult struct {
AnalyzerResult *AnalyzerJobResult `json:"analyzerResult,omitempty"`
ResponderResult *ResponderActionResult `json:"responderResult,omitempty"`
JobStatusResult *AnalyzerJobStatusResult `json:"jobStatusResult,omitempty"`
ActionStatusResult *ResponderActionStatusResult `json:"actionStatusResult,omitempty"`
}
Union type for different operation results
func (ExecuteAutomationResult) Unwrap ¶ added in v0.3.1
func (r ExecuteAutomationResult) Unwrap() any
Unwrap implements utils.Unwrapper to flatten the union for serialization.
type ExecuteAutomationTool ¶
type ExecuteAutomationTool struct{}
func NewExecuteAutomationTool ¶
func NewExecuteAutomationTool() *ExecuteAutomationTool
func (*ExecuteAutomationTool) Definition ¶
func (t *ExecuteAutomationTool) Definition() mcp.Tool
func (*ExecuteAutomationTool) Handle ¶
func (t *ExecuteAutomationTool) Handle(ctx context.Context, request mcp.CallToolRequest, params ExecuteAutomationParams) (ExecuteAutomationResult, error)
func (*ExecuteAutomationTool) Handler ¶ added in v0.3.1
func (t *ExecuteAutomationTool) Handler() server.ToolHandlerFunc
func (*ExecuteAutomationTool) Name ¶ added in v0.3.1
func (t *ExecuteAutomationTool) Name() string
func (*ExecuteAutomationTool) ValidateParams ¶ added in v0.3.1
func (t *ExecuteAutomationTool) ValidateParams(params *ExecuteAutomationParams) error
func (*ExecuteAutomationTool) ValidatePermissions ¶ added in v0.3.1
func (t *ExecuteAutomationTool) ValidatePermissions(ctx context.Context, params ExecuteAutomationParams) error
type FilteredOutputAction ¶ added in v0.3.1
type FilteredOutputAction struct {
UnderscoreId string `json:"_id"`
ResponderId string `json:"responderId"`
ResponderName string `json:"responderName,omitempty"`
CortexId string `json:"cortexId,omitempty"`
CortexJobId string `json:"cortexJobId,omitempty"`
ObjectType string `json:"objectType"`
ObjectId string `json:"objectId"`
Status string `json:"status"`
StartDate int64 `json:"startDate"`
EndDate int64 `json:"endDate,omitempty"`
}
func NewFilteredOutputAction ¶ added in v0.3.1
func NewFilteredOutputAction(action *thehive.OutputAction) *FilteredOutputAction
type FilteredOutputJob ¶ added in v0.3.1
type FilteredOutputJob struct {
UnderscoreId string `json:"_id"`
AnalyzerId string `json:"analyzerId"`
AnalyzerName string `json:"analyzerName"`
Status string `json:"status"`
StartDate int64 `json:"startDate"`
EndDate int64 `json:"endDate,omitempty"`
Report map[string]interface{} `json:"report,omitempty"`
CortexId string `json:"cortexId"`
CortexJobId string `json:"cortexJobId"`
}
func NewFilteredOutputJob ¶ added in v0.3.1
func NewFilteredOutputJob(job *thehive.OutputJob) *FilteredOutputJob
type ResponderActionResult ¶ added in v0.3.1
type ResponderActionResult struct {
Operation string `json:"operation"`
Action *FilteredOutputAction `json:"action"`
Message string `json:"message"`
}
func NewResponderActionResult ¶ added in v0.3.1
func NewResponderActionResult(action *thehive.OutputAction) *ResponderActionResult
type ResponderActionStatusResult ¶ added in v0.3.1
type ResponderActionStatusResult struct {
Operation string `json:"operation"`
ActionID string `json:"actionId"`
ResponderID string `json:"responderId"`
ResponderName string `json:"responderName"`
EntityType string `json:"entityType"`
EntityID string `json:"entityId"`
Status string `json:"status"`
Result string `json:"result,omitempty"`
Message string `json:"message"`
}
func NewResponderActionStatusResult ¶ added in v0.3.1
func NewResponderActionStatusResult(action *thehive.OutputAction) *ResponderActionStatusResult
Click to show internal directories.
Click to hide internal directories.