registries

package
v1.3.0 Latest Latest
Warning

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

Go to latest
Published: Oct 14, 2025 License: MIT Imports: 13 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	ErrMissingIdentifierForMCPB = fmt.Errorf("package identifier is required for MCPB packages")
	ErrMissingFileSHA256ForMCPB = fmt.Errorf("must include a fileSha256 hash for integrity verification")
)
View Source
var (
	ErrMissingIdentifierForNPM = errors.New("package identifier is required for NPM packages")
	ErrMissingVersionForNPM    = errors.New("package version is required for NPM packages")
)
View Source
var (
	ErrMissingIdentifierForNuget = errors.New("package identifier is required for NuGet packages")
	ErrMissingVersionForNuget    = errors.New("package version is required for NuGet packages")
)
View Source
var (
	ErrMissingIdentifierForOCI = errors.New("package identifier is required for OCI packages")
	ErrMissingVersionForOCI    = errors.New("package version is required for OCI packages")
)
View Source
var (
	ErrMissingIdentifierForPyPI = errors.New("package identifier is required for PyPI packages")
	ErrMissingVersionForPyPi    = errors.New("package version is required for PyPI packages")
)
View Source
var ErrRateLimited = errors.New("rate limited by registry")

ErrRateLimited is returned when a registry rate limits our requests

Functions

func ValidateMCPB

func ValidateMCPB(ctx context.Context, pkg model.Package, _ string) error

func ValidateNPM

func ValidateNPM(ctx context.Context, pkg model.Package, serverName string) error

ValidateNPM validates that an NPM package contains the correct MCP server name

func ValidateNuGet

func ValidateNuGet(ctx context.Context, pkg model.Package, serverName string) error

ValidateNuGet validates that a NuGet package contains the correct MCP server name

func ValidateOCI

func ValidateOCI(ctx context.Context, pkg model.Package, serverName string) error

ValidateOCI validates that an OCI image contains the correct MCP server name annotation. Supports canonical OCI references including:

  • registry/namespace/image:tag
  • registry/namespace/image@sha256:digest
  • registry/namespace/image:tag@sha256:digest
  • namespace/image:tag (defaults to docker.io)

func ValidatePyPI

func ValidatePyPI(ctx context.Context, pkg model.Package, serverName string) error

ValidatePyPI validates that a PyPI package contains the correct MCP server name

Types

type NPMPackageResponse

type NPMPackageResponse struct {
	MCPName string `json:"mcpName"`
}

NPMPackageResponse represents the structure returned by the NPM registry API

type OCIAuthResponse

type OCIAuthResponse struct {
	Token string `json:"token"`
}

OCIAuthResponse represents an OCI registry authentication response

type OCIImageConfig

type OCIImageConfig struct {
	Config struct {
		Labels map[string]string `json:"Labels"`
	} `json:"config"`
}

OCIImageConfig represents an OCI image configuration

type OCIManifest

type OCIManifest struct {
	Manifests []struct {
		Digest string `json:"digest"`
	} `json:"manifests,omitempty"`
	Config struct {
		Digest string `json:"digest"`
	} `json:"config,omitempty"`
}

OCIManifest represents an OCI image manifest

type OCIReference added in v1.3.0

type OCIReference struct {
	Registry  string // e.g., "ghcr.io", "docker.io"
	Namespace string // e.g., "owner", "library"
	Image     string // e.g., "repo"
	Tag       string // e.g., "v1.0.0", "latest" (optional)
	Digest    string // e.g., "sha256:abc..." (optional)
}

OCIReference represents a parsed OCI image reference

func ParseOCIReference added in v1.3.0

func ParseOCIReference(ref string) (*OCIReference, error)

ParseOCIReference parses a canonical OCI image reference using github.com/distribution/reference. Supported formats:

  • registry/namespace/image:tag
  • registry/namespace/image@digest
  • registry/namespace/image:tag@digest
  • namespace/image:tag (defaults to docker.io)
  • image:tag (defaults to docker.io/library)

func (*OCIReference) GetRegistryBaseURL added in v1.3.0

func (r *OCIReference) GetRegistryBaseURL() string

GetRegistryBaseURL returns the full registry URL (e.g., "https://docker.io" or "https://ghcr.io")

func (*OCIReference) String added in v1.3.0

func (r *OCIReference) String() string

String returns the canonical string representation of the OCI reference

type PyPIPackageResponse

type PyPIPackageResponse struct {
	Info struct {
		Description string `json:"description"`
	} `json:"info"`
}

PyPIPackageResponse represents the structure returned by the PyPI JSON API

type RegistryConfig added in v1.1.0

type RegistryConfig struct {
	APIBaseURL string
	AuthURL    string
	Service    string
	Scope      string
}

RegistryConfig holds configuration for different OCI registries

Jump to

Keyboard shortcuts

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