modules

package
v1.0.0 Latest Latest
Warning

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

Go to latest
Published: Mar 16, 2026 License: Apache-2.0 Imports: 14 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ModuleEnableToolsets

func ModuleEnableToolsets(m Module, tsg *toolsets.ToolsetGroup) error

ModuleEnableToolsets is a helper function that safely enables toolsets by only enabling toolsets that actually exist in the toolset group

func RegisterAccessControl

func RegisterAccessControl(config *config.McpServerConfig, tsg *toolsets.ToolsetGroup) error

func RegisterAudit

func RegisterAudit(config *config.McpServerConfig, tsg *toolsets.ToolsetGroup) error

func RegisterChaos

func RegisterChaos(config *config.McpServerConfig, tsg *toolsets.ToolsetGroup) error

RegisterChaos registers the chaos toolset

func RegisterCloudCostManagement

func RegisterCloudCostManagement(config *config.McpServerConfig, tsg *toolsets.ToolsetGroup) error

func RegisterConnectors

func RegisterConnectors(config *config.McpServerConfig, tsg *toolsets.ToolsetGroup) error

RegisterConnectors registers the connectors toolset

func RegisterDashboards

func RegisterDashboards(config *config.McpServerConfig, tsg *toolsets.ToolsetGroup) error

RegisterDashboards registers the dashboards toolset

func RegisterDelegateTokens

func RegisterDelegateTokens(config *config.McpServerConfig, tsg *toolsets.ToolsetGroup) error

RegisterDelegateTokens registers the DelegateTokens toolset

func RegisterDelegates

func RegisterDelegates(config *config.McpServerConfig, tsg *toolsets.ToolsetGroup) error

RegisterDelegates registers the delegates toolset

func RegisterEnvironments

func RegisterEnvironments(config *config.McpServerConfig, tsg *toolsets.ToolsetGroup) error

RegisterEnvironments registers the environments toolset

func RegisterFeatureManagementAndExperimentation

func RegisterFeatureManagementAndExperimentation(config *config.McpServerConfig, tsg *toolsets.ToolsetGroup) error

RegisterFeatureManagementAndExperimentation registers the FME toolset

func RegisterGitOps

func RegisterGitOps(config *config.McpServerConfig, tsg *toolsets.ToolsetGroup) error

func RegisterInfrastructure

func RegisterInfrastructure(config *config.McpServerConfig, tsg *toolsets.ToolsetGroup) error

RegisterInfrastructure registers the infrastructure toolset

func RegisterInternalDeveloperPortal

func RegisterInternalDeveloperPortal(config *config.McpServerConfig, tsg *toolsets.ToolsetGroup) error

func RegisterPipelines

func RegisterPipelines(config *config.McpServerConfig, tsg *toolsets.ToolsetGroup) error

RegisterPipelines registers the pipelines toolset

func RegisterPromptTools

func RegisterPromptTools(config *config.McpServerConfig, tsg *toolsets.ToolsetGroup) error

func RegisterPullRequests

func RegisterPullRequests(config *config.McpServerConfig, tsg *toolsets.ToolsetGroup) error

RegisterPullRequests registers the pull requests toolset

func RegisterRegistries

func RegisterRegistries(config *config.McpServerConfig, tsg *toolsets.ToolsetGroup) error

RegisterRegistries registers the HAR registries toolset

func RegisterRepositories

func RegisterRepositories(config *config.McpServerConfig, tsg *toolsets.ToolsetGroup) error

RegisterRepositories registers the repositories toolset

func RegisterSCS

func RegisterSCS(config *config.McpServerConfig, tsg *toolsets.ToolsetGroup) error

RegisterSCS registers the Supply Chain Security toolset

func RegisterSTO

func RegisterSTO(config *config.McpServerConfig, tsg *toolsets.ToolsetGroup) error

RegisterSTO registers the Security Test Orchestration toolset

func RegisterSecrets

func RegisterSecrets(config *config.McpServerConfig, tsg *toolsets.ToolsetGroup) error

func RegisterServices

func RegisterServices(config *config.McpServerConfig, tsg *toolsets.ToolsetGroup) error

RegisterServices registers the services toolset

func RegisterSettings

func RegisterSettings(config *config.McpServerConfig, tsg *toolsets.ToolsetGroup) error

func RegisterSoftwareEngineeringInsights

func RegisterSoftwareEngineeringInsights(config *config.McpServerConfig, tsg *toolsets.ToolsetGroup) error

RegisterSoftwareEngineeringInsights creates and registers SEI tools

func RegisterTemplates

func RegisterTemplates(config *config.McpServerConfig, tsg *toolsets.ToolsetGroup) error

RegisterTemplates registers the templates toolset

func SetGlobalRegistry

func SetGlobalRegistry(registry *ModuleRegistry)

SetGlobalRegistry sets the global module registry instance

Types

type CCMModule

type CCMModule struct {
	// contains filtered or unexported fields
}

CCMModule implements the Module interface for Cloud Cost Management

func NewCCMModule

func NewCCMModule(config *config.McpServerConfig, tsg *toolsets.ToolsetGroup) *CCMModule

NewCCMModule creates a new instance of CCMModule

func (*CCMModule) EnableToolsets

func (m *CCMModule) EnableToolsets(tsg *toolsets.ToolsetGroup) error

EnableToolsets enables all toolsets in the CCM module

func (*CCMModule) ID

func (m *CCMModule) ID() string

ID returns the identifier for this module

func (*CCMModule) IsDefault

func (m *CCMModule) IsDefault() bool

IsDefault indicates if this module should be enabled by default

func (*CCMModule) Name

func (m *CCMModule) Name() string

Name returns the name of module

func (*CCMModule) RegisterToolsets

func (m *CCMModule) RegisterToolsets() error

RegisterToolsets registers all toolsets in the CCM module

func (*CCMModule) Toolsets

func (m *CCMModule) Toolsets() []string

Toolsets returns the names of toolsets provided by this module

type CDModule

type CDModule struct {
	// contains filtered or unexported fields
}

CDModule implements the Module interface for Continuous Delivery

func NewCDModule

func NewCDModule(config *config.McpServerConfig, tsg *toolsets.ToolsetGroup) *CDModule

NewCDModule creates a new instance of CDModule

func (*CDModule) EnableToolsets

func (m *CDModule) EnableToolsets(tsg *toolsets.ToolsetGroup) error

EnableToolsets enables all toolsets in the CD module

func (*CDModule) ID

func (m *CDModule) ID() string

ID returns the identifier for this module

func (*CDModule) IsDefault

func (m *CDModule) IsDefault() bool

IsDefault indicates if this module should be enabled by default

func (*CDModule) Name

func (m *CDModule) Name() string

Name returns the name of module

func (*CDModule) RegisterToolsets

func (m *CDModule) RegisterToolsets() error

RegisterToolsets registers all toolsets in the CD module

func (*CDModule) Toolsets

func (m *CDModule) Toolsets() []string

Toolsets returns the names of toolsets provided by this module

type CHAOSModule

type CHAOSModule struct {
	// contains filtered or unexported fields
}

CHAOSModule implements the Module interface for Chaos Engineering

func NewCHAOSModule

func NewCHAOSModule(config *config.McpServerConfig, tsg *toolsets.ToolsetGroup) *CHAOSModule

NewCHAOSModule creates a new instance of CHAOSModule

func (*CHAOSModule) EnableToolsets

func (m *CHAOSModule) EnableToolsets(tsg *toolsets.ToolsetGroup) error

EnableToolsets enables all toolsets in the CHAOS module

func (*CHAOSModule) ID

func (m *CHAOSModule) ID() string

ID returns the identifier for this module

func (*CHAOSModule) IsDefault

func (m *CHAOSModule) IsDefault() bool

IsDefault indicates if this module should be enabled by default

func (*CHAOSModule) Name

func (m *CHAOSModule) Name() string

Name returns the name of module

func (*CHAOSModule) RegisterToolsets

func (m *CHAOSModule) RegisterToolsets() error

RegisterToolsets registers all toolsets in the CHAOS module

func (*CHAOSModule) Toolsets

func (m *CHAOSModule) Toolsets() []string

Toolsets returns the names of toolsets provided by this module

type CIModule

type CIModule struct {
	// contains filtered or unexported fields
}

CIModule implements the Module interface for Continuous Integration

func NewCIModule

func NewCIModule(config *config.McpServerConfig, tsg *toolsets.ToolsetGroup) *CIModule

NewCIModule creates a new instance of CIModule

func (*CIModule) EnableToolsets

func (m *CIModule) EnableToolsets(tsg *toolsets.ToolsetGroup) error

EnableToolsets enables all toolsets in the CI module

func (*CIModule) ID

func (m *CIModule) ID() string

ID returns the identifier for this module

func (*CIModule) IsDefault

func (m *CIModule) IsDefault() bool

IsDefault indicates if this module should be enabled by default

func (*CIModule) Name

func (m *CIModule) Name() string

Name returns the name of module

func (*CIModule) RegisterToolsets

func (m *CIModule) RegisterToolsets() error

RegisterToolsets registers all toolsets in the CI module

func (*CIModule) Toolsets

func (m *CIModule) Toolsets() []string

Toolsets returns the names of toolsets provided by this module

type CODEModule

type CODEModule struct {
	// contains filtered or unexported fields
}

CODEModule implements the Module interface for Code Repository Management

func NewCODEModule

func NewCODEModule(config *config.McpServerConfig, tsg *toolsets.ToolsetGroup) *CODEModule

NewCODEModule creates a new instance of CODEModule

func (*CODEModule) EnableToolsets

func (m *CODEModule) EnableToolsets(tsg *toolsets.ToolsetGroup) error

EnableToolsets enables all toolsets in the CODE module

func (*CODEModule) ID

func (m *CODEModule) ID() string

ID returns the identifier for this module

func (*CODEModule) IsDefault

func (m *CODEModule) IsDefault() bool

IsDefault indicates if this module should be enabled by default

func (*CODEModule) Name

func (m *CODEModule) Name() string

Name returns the name of module

func (*CODEModule) RegisterToolsets

func (m *CODEModule) RegisterToolsets() error

RegisterToolsets registers all toolsets in the CODE module

func (*CODEModule) Toolsets

func (m *CODEModule) Toolsets() []string

Toolsets returns the names of toolsets provided by this module

type ClientProvider

type ClientProvider interface {
	CreateClient(config *config.McpServerConfig, servicePath string, timeout ...time.Duration) (*client.Client, error)

	CreateClientWithIdentity(config *config.McpServerConfig, servicePath string, serviceIdentity string, timeout ...time.Duration) (*client.Client, error)
}

ClientProvider defines the interface for creating module clients Different implementations can be provided for internal and external modes

var DefaultClientProvider ClientProvider

DefaultClientProvider holds the active client provider implementation This will be set by the external or internal package during initialization

type CodeClientFactory

type CodeClientFactory func(config *config.McpServerConfig) (*client.Client, error)

CodeClientFactory is a function type for creating code clients This allows different implementations in internal vs external modes

var DefaultCodeClientFactory CodeClientFactory = func(config *config.McpServerConfig) (*client.Client, error) {
	return DefaultClientProvider.CreateClient(config, "code")
}

DefaultCodeClientFactory is the default implementation for creating code clients This can be overridden by consuming code to provide custom implementations

type CoreModule

type CoreModule struct {
	// contains filtered or unexported fields
}

CoreModule implements the Module interface and contains all default toolsets

func NewCoreModule

func NewCoreModule(config *config.McpServerConfig, tsg *toolsets.ToolsetGroup) *CoreModule

NewCoreModule creates a new instance of CoreModule

func (*CoreModule) EnableToolsets

func (m *CoreModule) EnableToolsets(tsg *toolsets.ToolsetGroup) error

EnableToolsets enables all toolsets in the Core module

func (*CoreModule) ID

func (m *CoreModule) ID() string

ID returns the identifier for this module

func (*CoreModule) IsDefault

func (m *CoreModule) IsDefault() bool

IsDefault indicates if this module should be enabled by default

func (*CoreModule) Name

func (m *CoreModule) Name() string

Name returns the name of module

func (*CoreModule) RegisterToolsets

func (m *CoreModule) RegisterToolsets() error

RegisterToolsets registers all toolsets in the default module

func (*CoreModule) Toolsets

func (m *CoreModule) Toolsets() []string

Toolsets returns the names of toolsets provided by this module

type FMEModule

type FMEModule struct {
	// contains filtered or unexported fields
}

FMEModule implements the Module interface for Feature Management and Experimentation

func NewFMEModule

func NewFMEModule(config *config.McpServerConfig, tsg *toolsets.ToolsetGroup) *FMEModule

NewFMEModule creates a new instance of FMEModule

func (*FMEModule) EnableToolsets

func (m *FMEModule) EnableToolsets(tsg *toolsets.ToolsetGroup) error

EnableToolsets enables all toolsets in the FME module

func (*FMEModule) ID

func (m *FMEModule) ID() string

ID returns the identifier for this module

func (*FMEModule) IsDefault

func (m *FMEModule) IsDefault() bool

IsDefault indicates if this module should be enabled by default

func (*FMEModule) Name

func (m *FMEModule) Name() string

Name returns the name of module

func (*FMEModule) RegisterToolsets

func (m *FMEModule) RegisterToolsets() error

RegisterToolsets registers all toolsets in the FME module

func (*FMEModule) Toolsets

func (m *FMEModule) Toolsets() []string

Toolsets returns the names of toolsets provided by this module

type GitOpsModule

type GitOpsModule struct {
	// contains filtered or unexported fields
}

func NewGitOpsModule

func NewGitOpsModule(config *config.McpServerConfig, tsg *toolsets.ToolsetGroup) *GitOpsModule

func (*GitOpsModule) EnableToolsets

func (m *GitOpsModule) EnableToolsets(tsg *toolsets.ToolsetGroup) error

func (*GitOpsModule) ID

func (m *GitOpsModule) ID() string

func (*GitOpsModule) IsDefault

func (m *GitOpsModule) IsDefault() bool

func (*GitOpsModule) Name

func (m *GitOpsModule) Name() string

func (*GitOpsModule) RegisterToolsets

func (m *GitOpsModule) RegisterToolsets() error

func (*GitOpsModule) Toolsets

func (m *GitOpsModule) Toolsets() []string

type HARModule

type HARModule struct {
	// contains filtered or unexported fields
}

HARModule implements the Module interface for Harness Artifact Registry

func NewHARModule

func NewHARModule(config *config.McpServerConfig, tsg *toolsets.ToolsetGroup) *HARModule

NewHARModule creates a new instance of HARModule

func (*HARModule) EnableToolsets

func (m *HARModule) EnableToolsets(tsg *toolsets.ToolsetGroup) error

EnableToolsets enables all toolsets in the HAR module

func (*HARModule) ID

func (m *HARModule) ID() string

ID returns the identifier for this module

func (*HARModule) IsDefault

func (m *HARModule) IsDefault() bool

IsDefault indicates if this module should be enabled by default

func (*HARModule) Name

func (m *HARModule) Name() string

Name returns the name of module

func (*HARModule) RegisterToolsets

func (m *HARModule) RegisterToolsets() error

RegisterToolsets registers all toolsets in the HAR module

func (*HARModule) Toolsets

func (m *HARModule) Toolsets() []string

Toolsets returns the names of toolsets provided by this module

type IDPModule

type IDPModule struct {
	// contains filtered or unexported fields
}

IDPModule implements the Module interface for Internal Developer Portal

func NewIDPModule

func NewIDPModule(config *config.McpServerConfig, tsg *toolsets.ToolsetGroup) *IDPModule

NewIDPModule creates a new instance of IDPModule

func (*IDPModule) EnableToolsets

func (m *IDPModule) EnableToolsets(tsg *toolsets.ToolsetGroup) error

EnableToolsets enables all toolsets in the IDP module

func (*IDPModule) ID

func (m *IDPModule) ID() string

ID returns the identifier for this module

func (*IDPModule) IsDefault

func (m *IDPModule) IsDefault() bool

IsDefault indicates if this module should be enabled by default

func (*IDPModule) Name

func (m *IDPModule) Name() string

Name returns the name of module

func (*IDPModule) RegisterToolsets

func (m *IDPModule) RegisterToolsets() error

RegisterToolsets registers all toolsets in the IDP module

func (*IDPModule) Toolsets

func (m *IDPModule) Toolsets() []string

Toolsets returns the names of toolsets provided by this module

type Module

type Module interface {
	// ID returns the identifier for this module
	ID() string
	// Name returns the name of module
	Name() string

	// Toolsets returns the names of toolsets provided by this module
	Toolsets() []string

	// RegisterToolsets registers all toolsets in this module with the toolset group
	// It creates necessary clients and adds tools to the toolset group
	RegisterToolsets() error

	// EnableToolsets enables all toolsets in this module in the toolset group
	// This is called after RegisterToolsets to activate the toolsets
	EnableToolsets(tsg *toolsets.ToolsetGroup) error

	// IsDefault indicates if this module should be enabled by default
	// when no specific modules are requested
	IsDefault() bool
}

Module interface defines the contract that all modules must implement

type ModuleRegistry

type ModuleRegistry struct {
	Modules          []Module
	Config           *config.McpServerConfig
	Tsg              *toolsets.ToolsetGroup
	ModuleToToolsets map[string][]string // Maps module IDs to their toolsets
	ToolsetToModule  map[string]string   // Maps toolset names to their modules
}

ModuleRegistry holds all available modules

func GetGlobalRegistry

func GetGlobalRegistry() *ModuleRegistry

GetGlobalRegistry returns the global module registry instance

func (*ModuleRegistry) GetAllModules

func (r *ModuleRegistry) GetAllModules() []Module

GetAllModules returns all available modules

func (*ModuleRegistry) GetToolsetGroup

func (r *ModuleRegistry) GetToolsetGroup() *toolsets.ToolsetGroup

GetToolsetGroup returns the underlying toolset group

func (*ModuleRegistry) GetToolsetsForModule

func (r *ModuleRegistry) GetToolsetsForModule(moduleID string) []string

GetToolsetsForModule returns the toolsets associated with a module ID

func (*ModuleRegistry) ValidateToolsets

func (r *ModuleRegistry) ValidateToolsets(
	requestedToolsets []string,
	licensedModules map[string]bool,
) (allowedToolsets []string, deniedToolsets map[string]string)

ValidateToolsets checks if the given toolsets are allowed based on licensed modules Returns: - allowedToolsets: list of toolsets the user can use - deniedToolsets: list of toolsets the user cannot use (with reasons)

type NgManagerAuthProviderFactory

type NgManagerAuthProviderFactory func(config *config.McpServerConfig) auth.Provider

NgManagerAuthProviderFactory is a function type for creating NgManager auth providers This allows different implementations in internal vs external modes

var DefaultNgManagerAuthProviderFactory NgManagerAuthProviderFactory = func(config *config.McpServerConfig) auth.Provider {
	return auth.NewAPIKeyProvider(config.APIKey)
}

DefaultNgManagerAuthProviderFactory is the default implementation for creating NgManager auth providers This can be overridden by consuming repositories to provide custom implementations

type SEIModule

type SEIModule struct {
	// contains filtered or unexported fields
}

SEIModule implements the Module interface for Software Engineering Insights

func NewSEIModule

func NewSEIModule(config *config.McpServerConfig, tsg *toolsets.ToolsetGroup) *SEIModule

NewSEIModule creates a new instance of SEIModule

func (*SEIModule) EnableToolsets

func (m *SEIModule) EnableToolsets(tsg *toolsets.ToolsetGroup) error

EnableToolsets enables all toolsets in the SEI module

func (*SEIModule) ID

func (m *SEIModule) ID() string

ID returns the identifier for this module

func (*SEIModule) IsDefault

func (m *SEIModule) IsDefault() bool

IsDefault indicates if this module should be enabled by default

func (*SEIModule) Name

func (m *SEIModule) Name() string

Name returns the name of module

func (*SEIModule) RegisterToolsets

func (m *SEIModule) RegisterToolsets() error

RegisterToolsets registers all toolsets in the SEI module

func (*SEIModule) Toolsets

func (m *SEIModule) Toolsets() []string

Toolsets returns the names of toolsets provided by this module

type SSCAModule

type SSCAModule struct {
	// contains filtered or unexported fields
}

SSCAModule implements the Module interface for Software Supply Chain Assurance

func NewSSCAModule

func NewSSCAModule(config *config.McpServerConfig, tsg *toolsets.ToolsetGroup) *SSCAModule

NewSSCAModule creates a new instance of SSCAModule

func (*SSCAModule) EnableToolsets

func (m *SSCAModule) EnableToolsets(tsg *toolsets.ToolsetGroup) error

EnableToolsets enables all toolsets in the SSCA module

func (*SSCAModule) ID

func (m *SSCAModule) ID() string

ID returns the identifier for this module

func (*SSCAModule) IsDefault

func (m *SSCAModule) IsDefault() bool

IsDefault indicates if this module should be enabled by default

func (*SSCAModule) Name

func (m *SSCAModule) Name() string

Name returns the name of module

func (*SSCAModule) RegisterToolsets

func (m *SSCAModule) RegisterToolsets() error

RegisterToolsets registers all toolsets in the SSCA module

func (*SSCAModule) Toolsets

func (m *SSCAModule) Toolsets() []string

Toolsets returns the names of toolsets provided by this module

type STOModule

type STOModule struct {
	// contains filtered or unexported fields
}

STOModule implements the Module interface for Security Test Orchestration

func NewSTOModule

func NewSTOModule(config *config.McpServerConfig, tsg *toolsets.ToolsetGroup) *STOModule

NewSTOModule creates a new instance of STOModule

func (*STOModule) EnableToolsets

func (m *STOModule) EnableToolsets(tsg *toolsets.ToolsetGroup) error

EnableToolsets enables all toolsets in the STO module

func (*STOModule) ID

func (m *STOModule) ID() string

ID returns the identifier for this module

func (*STOModule) IsDefault

func (m *STOModule) IsDefault() bool

IsDefault indicates if this module should be enabled by default

func (*STOModule) Name

func (m *STOModule) Name() string

Name returns the name of module

func (*STOModule) RegisterToolsets

func (m *STOModule) RegisterToolsets() error

RegisterToolsets registers all toolsets in the STO module

func (*STOModule) Toolsets

func (m *STOModule) Toolsets() []string

Toolsets returns the names of toolsets provided by this module

type UnlicensedModule

type UnlicensedModule struct {
	// contains filtered or unexported fields
}

UnlicensedModule implements the Module interface for "Unlicensed Module"

func NewUnlicensedModule

func NewUnlicensedModule(config *config.McpServerConfig, tsg *toolsets.ToolsetGroup) *UnlicensedModule

NewUnlicensedModule creates a new instance of UnlicensedModule

func (*UnlicensedModule) EnableToolsets

func (m *UnlicensedModule) EnableToolsets(tsg *toolsets.ToolsetGroup) error

EnableToolsets enables all toolsets in the Unlicensed module

func (*UnlicensedModule) ID

func (m *UnlicensedModule) ID() string

ID returns the identifier for this module

func (*UnlicensedModule) IsDefault

func (m *UnlicensedModule) IsDefault() bool

IsDefault indicates if this module should be enabled by default

func (*UnlicensedModule) Name

func (m *UnlicensedModule) Name() string

Name returns the name of module

func (*UnlicensedModule) RegisterToolsets

func (m *UnlicensedModule) RegisterToolsets() error

RegisterToolsets registers all toolsets in the Unlicensed module

func (*UnlicensedModule) Toolsets

func (m *UnlicensedModule) Toolsets() []string

Toolsets returns the names of toolsets provided by this module

Jump to

Keyboard shortcuts

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