<!-- Provide a brief summary of your changes --> ## Motivation and Context <!-- Why is this change needed? What problem does it solve? --> The following PR: * Deprecates the existing OCI reference parser * Deprecates the existing OCI way of authenticating and accessing the image manifest * Replaces the above by leveraging go-containerregistry * Introduces support for Google Artifact Registry * Enables us to easily add support for other OCI-compliant registries in the future * Introduces better error handling * Introduces custom context timeouts for validation ## How Has This Been Tested? <!-- Have you tested this in a real application? Which scenarios were tested? --> ## Breaking Changes <!-- Will users need to update their code or configurations? --> ## Types of changes <!-- What types of changes does your code introduce? Put an `x` in all the boxes that apply: --> - [ ] Bug fix (non-breaking change which fixes an issue) - [x] New feature (non-breaking change which adds functionality) - [ ] Breaking change (fix or feature that would cause existing functionality to change) - [ ] Documentation update ## Checklist <!-- Go over all the following points, and put an `x` in all the boxes that apply. --> - [ ] I have read the [MCP Documentation](https://modelcontextprotocol.io) - [ ] My code follows the repository's style guidelines - [ ] New and existing tests pass locally - [ ] I have added appropriate error handling - [ ] I have added or updated documentation as needed ## Additional context <!-- Add any other context, implementation notes, or design decisions --> Related to #427 --------- Signed-off-by: Radoslav Dimitrov <radoslav@stacklok.com>
42 lines
1.2 KiB
Go
42 lines
1.2 KiB
Go
package model
|
|
|
|
// Registry Types - supported package registry types
|
|
const (
|
|
RegistryTypeNPM = "npm"
|
|
RegistryTypePyPI = "pypi"
|
|
RegistryTypeOCI = "oci"
|
|
RegistryTypeNuGet = "nuget"
|
|
RegistryTypeMCPB = "mcpb"
|
|
)
|
|
|
|
// Registry Base URLs - supported package registry base URLs
|
|
const (
|
|
RegistryURLNPM = "https://registry.npmjs.org"
|
|
RegistryURLPyPI = "https://pypi.org"
|
|
RegistryURLNuGet = "https://api.nuget.org"
|
|
RegistryURLGitHub = "https://github.com"
|
|
RegistryURLGitLab = "https://gitlab.com"
|
|
)
|
|
|
|
// Transport Types - supported remote transport protocols
|
|
const (
|
|
TransportTypeStreamableHTTP = "streamable-http"
|
|
TransportTypeSSE = "sse"
|
|
TransportTypeStdio = "stdio"
|
|
)
|
|
|
|
// Runtime Hints - supported package runtime hints
|
|
const (
|
|
RuntimeHintNPX = "npx"
|
|
RuntimeHintUVX = "uvx"
|
|
RuntimeHintDocker = "docker"
|
|
RuntimeHintDNX = "dnx"
|
|
)
|
|
|
|
// Schema versions
|
|
const (
|
|
// CurrentSchemaVersion is the current supported schema version date
|
|
CurrentSchemaVersion = "2025-10-17"
|
|
// CurrentSchemaURL is the full URL to the current schema
|
|
CurrentSchemaURL = "https://static.modelcontextprotocol.io/schemas/" + CurrentSchemaVersion + "/server.schema.json"
|
|
)
|