registry/docs
Repository files (latest commit first)
Filename Latest commit message Latest commit date
adam jones 7b211a46d6
feat: implement server versioning approach with semantic versioning support (#296)
This implements the versioning approach agreed upon in issue #158:

## Key Changes

### Documentation
- Added comprehensive versioning guide (docs/versioning.md)
- Updated FAQ with versioning guidance and best practices 
- Enhanced schema description with SHOULD recommendations

### Schema Updates
- Added 255-character limit for version strings in schema.json
- Enhanced version field description with semantic versioning guidance

### Implementation 
- New isSemanticVersion() function for proper semver detection
- Enhanced compareSemanticVersions() with prerelease support
- Implemented compareVersions() strategy:
  * Both semver: use semantic comparison
  * Neither semver: use timestamp comparison
  * Mixed: semver versions always take precedence
- Updated publish logic to determine "latest" using new strategy
- Added version length validation (255 char max)

### Versioning Strategy
1. Version MUST be string up to 255 characters
2. SHOULD use semantic versioning for predictable ordering
3. SHOULD align with package versions to reduce confusion 
4. MAY use prerelease labels for registry-specific versions
5. Registry attempts semver parsing, falls back to timestamp ordering
6. Clients SHOULD follow same comparison logic

Resolves #158

---------

Co-authored-by: claude[bot] <209825114+claude[bot]@users.noreply.github.com>
Co-authored-by: adam jones <domdomegg@users.noreply.github.com>
2025-08-26 14:55:38 +01:00
..
server-json feat: implement server versioning approach with semantic versioning support (#296) 2025-08-26 14:55:38 +01:00
server-registry-api Add OpenAPI example demonstrating publisher extensions (#299) 2025-08-25 16:29:41 +00:00
architecture.md Refactor database implementation to use PostgreSQL instead of MongoDB (#289) 2025-08-22 01:40:28 +01:00
design_principles.md Add NuGet to the MCP Registry, similar to npm and Python 2025-07-07 12:28:19 -06:00
faq.md feat: implement server versioning approach with semantic versioning support (#296) 2025-08-26 14:55:38 +01:00
MCP Developers Summit 2025 - Registry Talk Slides.pdf Add 2025-05-26 15:42:55 -07:00
new_package_registry.md Add new package registry document 2025-07-07 12:28:19 -06:00
README.md Add new package registry document 2025-07-07 12:28:19 -06:00
roadmap.md Rogue section 2025-06-26 17:18:34 -07:00
versioning.md feat: implement server versioning approach with semantic versioning support (#296) 2025-08-26 14:55:38 +01:00

Official Registry Documentation

Project Documentation

design_principles.md - Core constraints and principles guiding the registry design

faq.md - Frequently asked questions about the MCP Registry

roadmap.md - High-level roadmap for the MCP Registry development

MCP Developers Summit 2025 - Registry Talk Slides.pdf - Slides from a talk given at the MCP Developers Summit on May 23, 2025, with an up-to-date vision of how we are thinking about the official registry.

API & Technical Specifications

openapi.yaml - OpenAPI specification for the official registry API

api_examples.md - Examples of what data will actually look like coming from the official registry API

architecture.md - Technical architecture, deployment strategies, and data flows

server.json README - description of the server.json purpose and schema

new_package_registry.md - steps to add a new package registry for local server packages