mcp

package
v0.4.0 Latest Latest
Warning

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

Go to latest
Published: Nov 16, 2025 License: Apache-2.0 Imports: 4 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewHTTPServer

func NewHTTPServer(tools *Toolsets) http.Handler

func NewSTDIO

func NewSTDIO(tools *Toolsets) *mcp.Server

Types

type BuildToolsetHandler

type BuildToolsetHandler interface {
	ListBuildTemplates(ctx context.Context, orgName string) (string, error)
	TriggerBuild(ctx context.Context, orgName, projectName, componentName, commit string) (string, error)
	ListBuilds(ctx context.Context, orgName, projectName, componentName string) (string, error)
	GetBuildObserverURL(ctx context.Context, orgName, projectName, componentName string) (string, error)
	ListBuildPlanes(ctx context.Context, orgName string) (string, error)
}

BuildToolsetHandler handles build operations

type ComponentToolsetHandler

type ComponentToolsetHandler interface {
	CreateComponent(ctx context.Context, orgName, projectName string, req *models.CreateComponentRequest) (string, error)
	ListComponents(ctx context.Context, orgName, projectName string) (string, error)
	GetComponent(
		ctx context.Context, orgName, projectName, componentName string, additionalResources []string,
	) (string, error)
	GetComponentBinding(ctx context.Context, orgName, projectName, componentName, environment string) (string, error)
	UpdateComponentBinding(
		ctx context.Context, orgName, projectName, componentName, bindingName string,
		req *models.UpdateBindingRequest,
	) (string, error)
	GetComponentWorkloads(ctx context.Context, orgName, projectName, componentName string) (string, error)
}

ComponentToolsetHandler handles component operations

type DeploymentToolsetHandler

type DeploymentToolsetHandler interface {
	GetProjectDeploymentPipeline(ctx context.Context, orgName, projectName string) (string, error)
	GetComponentObserverURL(
		ctx context.Context, orgName, projectName, componentName, environmentName string,
	) (string, error)
}

DeploymentToolsetHandler handles deployment operations

type InfrastructureToolsetHandler

type InfrastructureToolsetHandler interface {
	// Environment operations
	ListEnvironments(ctx context.Context, orgName string) (string, error)
	GetEnvironment(ctx context.Context, orgName, envName string) (string, error)
	CreateEnvironment(ctx context.Context, orgName string, req *models.CreateEnvironmentRequest) (string, error)

	// DataPlane operations
	ListDataPlanes(ctx context.Context, orgName string) (string, error)
	GetDataPlane(ctx context.Context, orgName, dpName string) (string, error)
	CreateDataPlane(ctx context.Context, orgName string, req *models.CreateDataPlaneRequest) (string, error)
}

InfrastructureToolsetHandler handles infrastructure operations

type OrganizationToolsetHandler

type OrganizationToolsetHandler interface {
	GetOrganization(ctx context.Context, name string) (string, error)
}

OrganizationToolsetHandler handles organization operations

type ProjectToolsetHandler

type ProjectToolsetHandler interface {
	// Project operations
	ListProjects(ctx context.Context, orgName string) (string, error)
	GetProject(ctx context.Context, orgName, projectName string) (string, error)
	CreateProject(ctx context.Context, orgName string, req *models.CreateProjectRequest) (string, error)
}

ProjectToolsetHandler handles organization and project operations

type RegisterFunc

type RegisterFunc func(s *mcp.Server)

RegisterFunc is a function type for registering MCP tools

type SchemaToolsetHandler

type SchemaToolsetHandler interface {
	ExplainSchema(ctx context.Context, kind, path string) (string, error)
}

SchemaToolsetHandler handles schema and resource explanation operations

type ToolsetType

type ToolsetType string

ToolsetType represents a type of toolset that can be enabled

const (
	ToolsetOrganization   ToolsetType = "organization"
	ToolsetProject        ToolsetType = "project"
	ToolsetComponent      ToolsetType = "component"
	ToolsetBuild          ToolsetType = "build"
	ToolsetDeployment     ToolsetType = "deployment"
	ToolsetInfrastructure ToolsetType = "infrastructure"
	ToolsetSchema         ToolsetType = "schema"
)

type Toolsets

type Toolsets struct {
	OrganizationToolset   OrganizationToolsetHandler
	ProjectToolset        ProjectToolsetHandler
	ComponentToolset      ComponentToolsetHandler
	BuildToolset          BuildToolsetHandler
	DeploymentToolset     DeploymentToolsetHandler
	InfrastructureToolset InfrastructureToolsetHandler
	SchemaToolset         SchemaToolsetHandler
}

func (*Toolsets) Register

func (t *Toolsets) Register(s *mcp.Server)

func (*Toolsets) RegisterComponentBinding

func (t *Toolsets) RegisterComponentBinding(s *mcp.Server)

func (*Toolsets) RegisterCreateProject

func (t *Toolsets) RegisterCreateProject(s *mcp.Server)

func (*Toolsets) RegisterExplainSchema

func (t *Toolsets) RegisterExplainSchema(s *mcp.Server)

func (*Toolsets) RegisterGetBuildObserverURL

func (t *Toolsets) RegisterGetBuildObserverURL(s *mcp.Server)

func (*Toolsets) RegisterGetComponent

func (t *Toolsets) RegisterGetComponent(s *mcp.Server)

func (*Toolsets) RegisterGetComponentObserverURL

func (t *Toolsets) RegisterGetComponentObserverURL(s *mcp.Server)

func (*Toolsets) RegisterGetComponentWorkloads

func (t *Toolsets) RegisterGetComponentWorkloads(s *mcp.Server)

func (*Toolsets) RegisterGetDataPlane

func (t *Toolsets) RegisterGetDataPlane(s *mcp.Server)

func (*Toolsets) RegisterGetDeploymentPipeline

func (t *Toolsets) RegisterGetDeploymentPipeline(s *mcp.Server)

func (*Toolsets) RegisterGetEnvironments

func (t *Toolsets) RegisterGetEnvironments(s *mcp.Server)

func (*Toolsets) RegisterGetOrganization

func (t *Toolsets) RegisterGetOrganization(s *mcp.Server)

func (*Toolsets) RegisterGetProject

func (t *Toolsets) RegisterGetProject(s *mcp.Server)

func (*Toolsets) RegisterListBuildPlanes

func (t *Toolsets) RegisterListBuildPlanes(s *mcp.Server)

func (*Toolsets) RegisterListBuildTemplates

func (t *Toolsets) RegisterListBuildTemplates(s *mcp.Server)

func (*Toolsets) RegisterListBuilds

func (t *Toolsets) RegisterListBuilds(s *mcp.Server)

func (*Toolsets) RegisterListComponents

func (t *Toolsets) RegisterListComponents(s *mcp.Server)

func (*Toolsets) RegisterListDataPlanes

func (t *Toolsets) RegisterListDataPlanes(s *mcp.Server)

func (*Toolsets) RegisterListEnvironments

func (t *Toolsets) RegisterListEnvironments(s *mcp.Server)

func (*Toolsets) RegisterListProjects

func (t *Toolsets) RegisterListProjects(s *mcp.Server)

func (*Toolsets) RegisterTriggerBuild

func (t *Toolsets) RegisterTriggerBuild(s *mcp.Server)

Jump to

Keyboard shortcuts

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