manage

package
v0.3.4 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 22, 2026 License: MIT Imports: 10 Imported by: 0

Documentation

Index

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 (*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 SingleEntityCommentResult struct {
	CommentID string                 `json:"commentId,omitempty"`
	EntityID  string                 `json:"entityId"`
	Result    string                 `json:"result,omitempty"`
	Error     map[string]interface{} `json:"error,omitempty"`
}

type SingleEntityDeleteResult added in v0.3.1

type SingleEntityDeleteResult struct {
	EntityID string                 `json:"_id"`
	Deleted  bool                   `json:"deleted,omitempty"`
	Error    map[string]interface{} `json:"error,omitempty"`
}

type SingleEntityUpdateResult added in v0.3.1

type SingleEntityUpdateResult struct {
	EntityID string                 `json:"_id"`
	Result   string                 `json:"result,omitempty"`
	Error    map[string]interface{} `json:"error,omitempty"`
}

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

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL