Documentation
¶
Index ¶
- Constants
- type ApplyTemplateResult
- type CommentEntityResult
- type CreateAlertResult
- type CreateCaseResult
- type CreateCaseTemplateResult
- type CreateObservableResult
- type CreatePageResult
- type CreateProcedureResult
- type CreateTaskResult
- type DeleteEntityResult
- type FilteredOutputAlert
- type FilteredOutputCase
- type FilteredOutputCaseTemplate
- type FilteredOutputObservable
- type FilteredOutputPage
- type FilteredOutputProcedure
- type FilteredOutputTask
- type ManageEntityParams
- type ManageEntityResult
- type ManageTool
- func (t *ManageTool) Definition() mcp.Tool
- func (t *ManageTool) Handle(ctx context.Context, request mcp.CallToolRequest, params ManageEntityParams) (ManageEntityResult, error)
- func (t *ManageTool) Handler() server.ToolHandlerFunc
- func (t *ManageTool) HasUntrustedData() bool
- func (t *ManageTool) Name() string
- func (t *ManageTool) ValidateParams(params *ManageEntityParams) error
- func (t *ManageTool) ValidatePermissions(ctx context.Context, params ManageEntityParams) error
- type MergeAlertsIntoCaseResult
- type MergeCasesResult
- type MergeObservablesResult
- type PromoteAlertResult
- type SingleEntityCommentResult
- type SingleEntityDeleteResult
- type SingleEntityUpdateResult
- type UpdateEntityResult
Constants ¶
View Source
const ( OperationCreate = "create" OperationUpdate = "update" OperationDelete = "delete" OperationComment = "comment" OperationPromote = "promote" OperationMerge = "merge" OperationApplyTemplate = "apply-template" )
View Source
const ManageToolDescription = `` /* 7543-byte string literal not displayed */
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ApplyTemplateResult ¶ added in v0.3.3
type ApplyTemplateResult struct {
Operation string `json:"operation"`
EntityType string `json:"entityType"`
TemplateID string `json:"templateId"`
CaseIDs []string `json:"caseIds"`
Message string `json:"message,omitempty"`
}
func NewApplyTemplateResult ¶ added in v0.3.3
func NewApplyTemplateResult(templateID string, caseIDs []string) *ApplyTemplateResult
type CommentEntityResult ¶ added in v0.3.1
type CommentEntityResult struct {
Operation string `json:"operation"`
EntityType string `json:"entityType"`
Results []SingleEntityCommentResult `json:"results,omitempty"`
}
func NewCommentEntityResult ¶ added in v0.3.1
func NewCommentEntityResult(entityType string, results []SingleEntityCommentResult) *CommentEntityResult
type CreateAlertResult ¶ added in v0.3.1
type CreateAlertResult struct {
Operation string `json:"operation"`
EntityType string `json:"entityType"`
Result *FilteredOutputAlert `json:"result,omitempty"`
Message string `json:"message,omitempty"`
}
func NewCreateAlertResult ¶ added in v0.3.1
func NewCreateAlertResult(alert *thehive.OutputAlert) *CreateAlertResult
type CreateCaseResult ¶ added in v0.3.1
type CreateCaseResult struct {
Operation string `json:"operation"`
EntityType string `json:"entityType"`
Result *FilteredOutputCase `json:"result,omitempty"`
Message string `json:"message,omitempty"`
}
func NewCreateCaseResult ¶ added in v0.3.1
func NewCreateCaseResult(caseEntity *thehive.OutputCase) *CreateCaseResult
type CreateCaseTemplateResult ¶ added in v0.3.3
type CreateCaseTemplateResult struct {
Operation string `json:"operation"`
EntityType string `json:"entityType"`
Result *FilteredOutputCaseTemplate `json:"result,omitempty"`
Message string `json:"message,omitempty"`
}
func NewCreateCaseTemplateResult ¶ added in v0.3.3
func NewCreateCaseTemplateResult(ct *thehive.OutputCaseTemplate) *CreateCaseTemplateResult
type CreateObservableResult ¶ added in v0.3.1
type CreateObservableResult struct {
Operation string `json:"operation"`
EntityType string `json:"entityType"`
Result []FilteredOutputObservable `json:"result,omitempty"`
Message string `json:"message,omitempty"`
}
func NewCreateObservableResult ¶ added in v0.3.1
func NewCreateObservableResult(observable []thehive.OutputObservable) *CreateObservableResult
type CreatePageResult ¶ added in v0.3.3
type CreatePageResult struct {
Operation string `json:"operation"`
EntityType string `json:"entityType"`
Result *FilteredOutputPage `json:"result,omitempty"`
Message string `json:"message,omitempty"`
}
func NewCreatePageResult ¶ added in v0.3.3
func NewCreatePageResult(page *thehive.OutputPage) *CreatePageResult
type CreateProcedureResult ¶ added in v0.3.3
type CreateProcedureResult struct {
Operation string `json:"operation"`
EntityType string `json:"entityType"`
Result FilteredOutputProcedure `json:"result"`
Message string `json:"message,omitempty"`
}
func NewCreateProcedureResult ¶ added in v0.3.3
func NewCreateProcedureResult(procedure *thehive.OutputProcedure) *CreateProcedureResult
type CreateTaskResult ¶ added in v0.3.1
type CreateTaskResult struct {
Operation string `json:"operation"`
EntityType string `json:"entityType"`
Result *FilteredOutputTask `json:"result,omitempty"`
Message string `json:"message,omitempty"`
}
func NewCreateTaskResult ¶ added in v0.3.1
func NewCreateTaskResult(task *thehive.OutputTask) *CreateTaskResult
type DeleteEntityResult ¶ added in v0.3.1
type DeleteEntityResult struct {
Operation string `json:"operation"`
EntityType string `json:"entityType"`
Results []SingleEntityDeleteResult `json:"results,omitempty"`
}
func NewDeleteEntityResult ¶ added in v0.3.1
func NewDeleteEntityResult(entityType string, results []SingleEntityDeleteResult) *DeleteEntityResult
type FilteredOutputAlert ¶ added in v0.3.1
type FilteredOutputAlert struct {
UnderscoreId string `json:"_id"`
Title string `json:"title"`
CreatedAt int64 `json:"_createdAt"`
Severity int32 `json:"severity"`
Status string `json:"status"`
}
func NewFilteredOutputAlert ¶ added in v0.3.1
func NewFilteredOutputAlert(alert *thehive.OutputAlert) *FilteredOutputAlert
type FilteredOutputCase ¶ added in v0.3.1
type FilteredOutputCase struct {
UnderscoreId string `json:"_id"`
Title string `json:"title"`
CreatedAt int64 `json:"_createdAt"`
Status string `json:"status"`
Severity int32 `json:"severity"`
}
func NewFilteredOutputCase ¶ added in v0.3.1
func NewFilteredOutputCase(caseEntity *thehive.OutputCase) *FilteredOutputCase
type FilteredOutputCaseTemplate ¶ added in v0.3.3
type FilteredOutputCaseTemplate struct {
UnderscoreId string `json:"_id"`
Name string `json:"name"`
DisplayName string `json:"displayName"`
Description *string `json:"description,omitempty"`
Severity *int32 `json:"severity,omitempty"`
}
func NewFilteredOutputCaseTemplate ¶ added in v0.3.3
func NewFilteredOutputCaseTemplate(ct *thehive.OutputCaseTemplate) *FilteredOutputCaseTemplate
type FilteredOutputObservable ¶ added in v0.3.1
type FilteredOutputObservable struct {
UnderscoreId string `json:"_id"`
DataType string `json:"dataType"`
CreatedAt int64 `json:"_createdAt"`
}
func NewFilteredOutputObservable ¶ added in v0.3.1
func NewFilteredOutputObservable(observable *thehive.OutputObservable) *FilteredOutputObservable
type FilteredOutputPage ¶ added in v0.3.3
type FilteredOutputPage struct {
UnderscoreId string `json:"_id"`
Title string `json:"title"`
Category string `json:"category"`
Order int32 `json:"order"`
CreatedAt int64 `json:"_createdAt"`
}
func NewFilteredOutputPage ¶ added in v0.3.3
func NewFilteredOutputPage(page *thehive.OutputPage) *FilteredOutputPage
type FilteredOutputProcedure ¶ added in v0.3.3
type FilteredOutputProcedure struct {
UnderscoreId string `json:"_id"`
CreatedAt int64 `json:"_createdAt"`
PatternId string `json:"patternId"`
Tactic string `json:"tactic,omitempty"`
}
func NewFilteredOutputProcedure ¶ added in v0.3.3
func NewFilteredOutputProcedure(procedure *thehive.OutputProcedure) *FilteredOutputProcedure
type FilteredOutputTask ¶ added in v0.3.1
type FilteredOutputTask struct {
UnderscoreId string `json:"_id"`
Title string `json:"title"`
Status string `json:"status"`
CreatedAt int64 `json:"_createdAt"`
Assignee *string `json:"assignee,omitempty"`
}
func NewFilteredOutputTask ¶ added in v0.3.1
func NewFilteredOutputTask(task *thehive.OutputTask) *FilteredOutputTask
type ManageEntityParams ¶ added in v0.3.1
type ManageEntityParams struct {
Operation string `` /* 201-byte string literal not displayed */
EntityType string `` /* 191-byte string literal not displayed */
EntityIDs []string `` /* 398-byte string literal not displayed */
EntityData map[string]interface{} `` /* 323-byte string literal not displayed */
Comment string `` /* 184-byte string literal not displayed */
TargetID string `` /* 372-byte string literal not displayed */
}
type ManageEntityResult ¶ added in v0.3.1
type ManageEntityResult struct {
CreateAlertResult *CreateAlertResult `json:"createAlertResult,omitempty"`
CreateCaseResult *CreateCaseResult `json:"createCaseResult,omitempty"`
CreateTaskResult *CreateTaskResult `json:"createTaskResult,omitempty"`
CreateObservableResult *CreateObservableResult `json:"createObservableResult,omitempty"`
CreateProcedureResult *CreateProcedureResult `json:"createProcedureResult,omitempty"`
CreateCaseTemplateResult *CreateCaseTemplateResult `json:"createCaseTemplateResult,omitempty"`
CreatePageResult *CreatePageResult `json:"createPageResult,omitempty"`
UpdateResults *UpdateEntityResult `json:"updateResults,omitempty"`
DeleteResults *DeleteEntityResult `json:"deleteResults,omitempty"`
CommentResults *CommentEntityResult `json:"commentResults,omitempty"`
PromoteAlertResult *PromoteAlertResult `json:"promoteAlertResult,omitempty"`
MergeCasesResult *MergeCasesResult `json:"mergeCasesResult,omitempty"`
MergeAlertsResult *MergeAlertsIntoCaseResult `json:"mergeAlertsResult,omitempty"`
MergeObservablesResult *MergeObservablesResult `json:"mergeObservablesResult,omitempty"`
ApplyTemplateResult *ApplyTemplateResult `json:"applyTemplateResult,omitempty"`
}
func (ManageEntityResult) Unwrap ¶ added in v0.3.1
func (r ManageEntityResult) Unwrap() any
Unwrap implements utils.Unwrapper to flatten the union for serialization.
type ManageTool ¶
type ManageTool struct{}
func NewManageTool ¶
func NewManageTool() *ManageTool
func (*ManageTool) Definition ¶
func (t *ManageTool) Definition() mcp.Tool
func (*ManageTool) Handle ¶
func (t *ManageTool) Handle(ctx context.Context, request mcp.CallToolRequest, params ManageEntityParams) (ManageEntityResult, error)
func (*ManageTool) Handler ¶ added in v0.3.1
func (t *ManageTool) Handler() server.ToolHandlerFunc
func (*ManageTool) HasUntrustedData ¶ added in v0.3.4
func (t *ManageTool) HasUntrustedData() bool
func (*ManageTool) Name ¶ added in v0.3.1
func (t *ManageTool) Name() string
func (*ManageTool) ValidateParams ¶ added in v0.3.1
func (t *ManageTool) ValidateParams(params *ManageEntityParams) error
func (*ManageTool) ValidatePermissions ¶ added in v0.3.1
func (t *ManageTool) ValidatePermissions(ctx context.Context, params ManageEntityParams) error
type MergeAlertsIntoCaseResult ¶ added in v0.3.1
type MergeAlertsIntoCaseResult struct {
Operation string `json:"operation"`
EntityType string `json:"entityType"`
EntityIds []string `json:"entityIds,omitempty"`
TargetId string `json:"targetId,omitempty"`
Result *FilteredOutputCase `json:"result,omitempty"`
Message string `json:"message,omitempty"`
}
func NewMergeAlertsResult ¶ added in v0.3.1
func NewMergeAlertsResult(caseEntity *thehive.OutputCase, alertIds []string, targetCaseId string) *MergeAlertsIntoCaseResult
type MergeCasesResult ¶ added in v0.3.1
type MergeCasesResult struct {
Operation string `json:"operation"`
EntityType string `json:"entityType"`
EntityIds []string `json:"entityIds,omitempty"`
Result *FilteredOutputCase `json:"result,omitempty"`
Message string `json:"message,omitempty"`
}
func NewMergeCasesResult ¶ added in v0.3.1
func NewMergeCasesResult(caseEntity *thehive.OutputCase, mergedIds []string) *MergeCasesResult
type MergeObservablesResult ¶ added in v0.3.1
type MergeObservablesResult struct {
Operation string `json:"operation"`
EntityType string `json:"entityType"`
TargetId string `json:"targetId,omitempty"`
Result string `json:"result,omitempty"`
Message string `json:"message,omitempty"`
}
func NewMergeObservablesResult ¶ added in v0.3.1
func NewMergeObservablesResult(resultData, targetCaseId string) *MergeObservablesResult
type PromoteAlertResult ¶ added in v0.3.1
type PromoteAlertResult struct {
Operation string `json:"operation"`
EntityType string `json:"entityType"`
Result *FilteredOutputCase `json:"result,omitempty"`
}
func NewPromoteAlertResult ¶ added in v0.3.1
func NewPromoteAlertResult(caseEntity *thehive.OutputCase) *PromoteAlertResult
type SingleEntityCommentResult ¶ added in v0.3.1
type SingleEntityDeleteResult ¶ added in v0.3.1
type SingleEntityUpdateResult ¶ added in v0.3.1
type UpdateEntityResult ¶ added in v0.3.1
type UpdateEntityResult struct {
Operation string `json:"operation"`
EntityType string `json:"entityType"`
Results []SingleEntityUpdateResult `json:"results,omitempty"`
}
func NewUpdateEntityResult ¶ added in v0.3.1
func NewUpdateEntityResult(entityType string, results []SingleEntityUpdateResult) *UpdateEntityResult
Click to show internal directories.
Click to hide internal directories.