v0.0.1
modelcontextprotocol/registryv0.0.1Sep 8, 2025by rdimitrov
AI Summary
The v0.0.1 release introduces the initial Model Context Protocol Registry, featuring a basic API server with Swagger documentation and authentication flows via GitHub OAuth and DNS verification. It includes a publisher CLI for creating server manifests, support for multiple package types (NuGet, MCP Bundles), and foundational infrastructure for deployment and monitoring.
Key Highlights
- Init world. Basic registry API server <WIP>
- Implement GitHub OAuth and publish endpoint functionality
- Add NuGet to the MCP Registry, similar to npm and Python
- feat: Add support for MCP Bundles (MCPB) in registry
- infra: Add Pulumi-based Kubernetes deployment infrastructure
New Features
- Basic Registry API Server
- Swagger API Documentation
- GitHub OAuth Authentication
- DNS Authentication
- Publisher CLI Tool
- MongoDB Data Importer
- NuGet Package Support
- MCP Bundle (MCPB) Support
- Kubernetes Deployment Infrastructure
- OpenTelemetry Instrumentation
Full Release Notes
## What's Changed * Init world. Basic registry API server <WIP> by @sridharavinash in https://github.com/modelcontextprotocol/registry/pull/4 * Update README to reflect binary name change by @sridharavinash in https://github.com/modelcontextprotocol/registry/pull/5 * Add count to server response and fix Makefile paths by @sridharavinash in https://github.com/modelcontextprotocol/registry/pull/6 * Add Swagger API documentation and handlers for v0 by @sridharavinash in https://github.com/modelcontextprotocol/registry/pull/7 * Use Docker compose and caarlos0/env by @toby in https://github.com/modelcontextprotocol/registry/pull/8 * feat: add MongoDB data importer tool and update README by @sridharavinash in https://github.com/modelcontextprotocol/registry/pull/9 * Add basic CONTRIBUTING.md file by @tadasant in https://github.com/modelcontextprotocol/registry/pull/16 * Implement GitHub OAuth and publish endpoint functionality by @sridharavinash in https://github.com/modelcontextprotocol/registry/pull/10 * Auto-import `seed.json` by @toby in https://github.com/modelcontextprotocol/registry/pull/17 * Require GitHub Client ID for authentication by @sridharavinash in https://github.com/modelcontextprotocol/registry/pull/18 * docs: update env var docs in readme by @toby in https://github.com/modelcontextprotocol/registry/pull/23 * OpenAPI spec for official registry API by @tadasant in https://github.com/modelcontextprotocol/registry/pull/3 * feat: refine representation of commands in the API by @connor4312 in https://github.com/modelcontextprotocol/registry/pull/33 * Add a description of the API directory in the project structure. by @luoxiner in https://github.com/modelcontextprotocol/registry/pull/35 * Api-schema-updates-1 by @sridharavinash in https://github.com/modelcontextprotocol/registry/pull/46 * feat: use new seed file in docker build by @toby in https://github.com/modelcontextprotocol/registry/pull/47 * docs: update readme with new schema, some cleanup by @toby in https://github.com/modelcontextprotocol/registry/pull/48 * fix: add needed env vars to docker-compose.yml by @toby in https://github.com/modelcontextprotocol/registry/pull/66 * Fix naming to use reverse DNS instead of deprecated `@` syntax by @tadasant in https://github.com/modelcontextprotocol/registry/pull/58 * Remove package_canonical by @tadasant in https://github.com/modelcontextprotocol/registry/pull/59 * Enhance health check endpoint with GitHub client ID by @sridharavinash in https://github.com/modelcontextprotocol/registry/pull/67 * Ignore local MongoDB .db directory during re-build And refactor Dockerfile by @ayoyu in https://github.com/modelcontextprotocol/registry/pull/72 * fix(model): inline ServerDetail fields in PublishRequest by @yshngg in https://github.com/modelcontextprotocol/registry/pull/62 * Integrate GitHub Client ID into device flow authentication and fix inline model handling during publish by @sridharavinash in https://github.com/modelcontextprotocol/registry/pull/73 * docs: update readme and mcp.json with repository url by @debin-ge in https://github.com/modelcontextprotocol/registry/pull/76 * Add MCP Developers Summit slides and rename `api` folder to `docs` by @tadasant in https://github.com/modelcontextprotocol/registry/pull/77 * Tests and linters by @sridharavinash in https://github.com/modelcontextprotocol/registry/pull/80 * Publish Auth Interface by @sridharavinash in https://github.com/modelcontextprotocol/registry/pull/112 * chore(docker-compose): enhance environment variable configuration using interpolation by @yshngg in https://github.com/modelcontextprotocol/registry/pull/78 * fix: make repository optional in openapi spec by @toby in https://github.com/modelcontextprotocol/registry/pull/119 * Rename mcp.json to server.json by @chenmingyong0423 in https://github.com/modelcontextprotocol/registry/pull/106 * feat(config): specify to use in-memory database by @yshngg in https://github.com/modelcontextprotocol/registry/pull/74 * feat(database): support SeedFile import for memory database by @chenmingyong0423 in https://github.com/modelcontextprotocol/registry/pull/128 * Add docs: design principles, FAQ, roadmap, architecture by @tadasant in https://github.com/modelcontextprotocol/registry/pull/134 * First cut at server.json by @tadasant in https://github.com/modelcontextprotocol/registry/pull/153 * Add `create` command to publisher CLI for generating server.json files by @Copilot in https://github.com/modelcontextprotocol/registry/pull/152 * Add NuGet to the MCP Registry, similar to npm and Python by @joelverhagen in https://github.com/modelcontextprotocol/registry/pull/163 * Resolve packages and remove unknown registries by @connor4312 in https://github.com/modelcontextprotocol/registry/pull/138 * Add more information about the value field under Input in the API doc by @luoxiner in https://github.com/modelcontextprotocol/registry/pull/164 * Align the server.json schema with the YAML by @joelverhagen in https://github.com/modelcontextprotocol/registry/pull/168 * Split "general" server.json from "registry-specific" server.json by @tadasant in https://github.com/modelcontextprotocol/registry/pull/167 * Add CLAUDE.md file for Claude Code guidance by @tadasant in https://github.com/modelcontextprotocol/registry/pull/170 * Split OpenAPI specs into base and official registry versions by @tadasant in https://github.com/modelcontextprotocol/registry/pull/171 * Make value_hint optional to allow constant positional arguments by @joelverhagen in https://github.com/modelcontextprotocol/registry/pull/172 * Add documentation for the repository section by @joelverhagen in https://github.com/modelcontextprotocol/registry/pull/174 * Add linting documentation and pre-commit hooks by @tadasant in https://github.com/modelcontextprotocol/registry/pull/177 * Add validation tools for server.json schemas and examples by @tadasant in https://github.com/modelcontextprotocol/registry/pull/176 * End-to-end publish test using examples from docs by @chlowell in https://github.com/modelcontextprotocol/registry/pull/199 * Add automatic runtime_hint setting to publisher create command by @Copilot in https://github.com/modelcontextprotocol/registry/pull/205 * Add a status field indicating if a server is deprecated or active by @rdimitrov in https://github.com/modelcontextprotocol/registry/pull/210 * auto build image by @kofj in https://github.com/modelcontextprotocol/registry/pull/147 * Do not gitignore all folders and files named publisher by @rdimitrov in https://github.com/modelcontextprotocol/registry/pull/215 * fix: fix missing seed.json on startup by renaming file by @chenmingyong0423 in https://github.com/modelcontextprotocol/registry/pull/75 * fix: resolve registry image conflict in docker-compose by @8806667653 in https://github.com/modelcontextprotocol/registry/pull/114 * feat: migrate golangci-lint from v1 to v2 by @TomCN0803 in https://github.com/modelcontextprotocol/registry/pull/144 * Configure the Dockerfile to run the application as a non-root user. by @hurricane1988 in https://github.com/modelcontextprotocol/registry/pull/202 * Add redirect from root path to Swagger UI documentation by @domdomegg in https://github.com/modelcontextprotocol/registry/pull/223 * Add helpful targets via Makefile by @rdimitrov in https://github.com/modelcontextprotocol/registry/pull/211 * Consolidate documentation and remove redundancy by @domdomegg in https://github.com/modelcontextprotocol/registry/pull/222 * Add Docker image documentation and workflow by @domdomegg in https://github.com/modelcontextprotocol/registry/pull/225 * Simplify seed data configuration by removing command line flags and renaming environment variable by @Copilot in https://github.com/modelcontextprotocol/registry/pull/175 * Add Claude Code GitHub workflow for @claude mentions by @domdomegg in https://github.com/modelcontextprotocol/registry/pull/231 * Update Claude workflow configuration by @domdomegg in https://github.com/modelcontextprotocol/registry/pull/234 * Add development setup improvements and automated testing script by @domdomegg in https://github.com/modelcontextprotocol/registry/pull/243 * Remove tracked binaries and fix build output directory by @domdomegg in https://github.com/modelcontextprotocol/registry/pull/248 * Clean up API documentation by @domdomegg in https://github.com/modelcontextprotocol/registry/pull/236 * feat(infra): Add Pulumi-based Kubernetes deployment infrastructure by @domdomegg in https://github.com/modelcontextprotocol/registry/pull/237 * deploy: Deploy the registry to GCP by @domdomegg in https://github.com/modelcontextprotocol/registry/pull/255 * chore(deps): bump github.com/golang/glog from 0.0.0-20160126235308-23def4e6c14b to 1.2.4 by @dependabot[bot] in https://github.com/modelcontextprotocol/registry/pull/254 * chore(deps): bump google.golang.org/protobuf from 1.27.1 to 1.33.0 by @dependabot[bot] in https://github.com/modelcontextprotocol/registry/pull/253 * chore(deps): bump google.golang.org/grpc from 1.51.0 to 1.56.3 by @dependabot[bot] in https://github.com/modelcontextprotocol/registry/pull/252 * infra/ci: Add GitHub Actions workflow for staging and production deployment by @domdomegg in https://github.com/modelcontextprotocol/registry/pull/256 * fix(ci): Fix dev-local target in the Makefile by @andreyvelich in https://github.com/modelcontextprotocol/registry/pull/259 * chore(deps): bump the go_modules group across 2 directories with 5 updates by @dependabot[bot] in https://github.com/modelcontextprotocol/registry/pull/261 * api: Use Huma to generate swagger docs and parse JSON automatically by @domdomegg in https://github.com/modelcontextprotocol/registry/pull/262 * infra: Always pull latest images by @domdomegg in https://github.com/modelcontextprotocol/registry/pull/265 * infra: Update Ingress configuration to support prod registry domain at registry.modelcontextprotocol.io by @domdomegg in https://github.com/modelcontextprotocol/registry/pull/266 * infra: Improve local development flow and avoid false positive infra diffs by @domdomegg in https://github.com/modelcontextprotocol/registry/pull/267 * auth: New auth flow by @domdomegg in https://github.com/modelcontextprotocol/registry/pull/273 * infra: Recreate pods on infra deploys by @domdomegg in https://github.com/modelcontextprotocol/registry/pull/275 * feat: Add creds for GitHub auth, add "none" auth to publisher by @domdomegg in https://github.com/modelcontextprotocol/registry/pull/276 * auth: Add GitHub OIDC auth by @domdomegg in https://github.com/modelcontextprotocol/registry/pull/278 * 102 Otel instrumentation by @pree-dew in https://github.com/modelcontextprotocol/registry/pull/290 * Update LICENSE copyright holder to MCP Contributors by @domdomegg in https://github.com/modelcontextprotocol/registry/pull/293 * chore: bump golangci-lint to v2.4.0 by @domdomegg in https://github.com/modelcontextprotocol/registry/pull/288 * build: Optimize Dockerfile by splitting out dependency installation and go build by @domdomegg in https://github.com/modelcontextprotocol/registry/pull/286 * Remove requirement of repository.id from server.json by @domdomegg in https://github.com/modelcontextprotocol/registry/pull/285 * auth: Add DNS auth by @domdomegg in https://github.com/modelcontextprotocol/registry/pull/279 * auth: Add HTTP-based authentication support to validate domain ownership by @domdomegg in https://github.com/modelcontextprotocol/registry/pull/282 * Refactor database implementation to use PostgreSQL instead of MongoDB by @domdomegg in https://github.com/modelcontextprotocol/registry/pull/289 * Allow for vendor extensions via x-publisher by @rdimitrov in https://github.com/modelcontextprotocol/registry/pull/298 * Add database backup functionality with GCS integration by @domdomegg in https://github.com/modelcontextprotocol/registry/pull/297 * Add OpenAPI example demonstrating publisher extensions by @JAORMX in https://github.com/modelcontextprotocol/registry/pull/299 * feat: implement server versioning approach with semantic versioning support by @domdomegg in https://github.com/modelcontextprotocol/registry/pull/296 * Update server names in examples to use reverse DNS format by @domdomegg in https://github.com/modelcontextprotocol/registry/pull/303 * Disable ireturn linter rule by @domdomegg in https://github.com/modelcontextprotocol/registry/pull/307 * Update documentation structure and content by @domdomegg in https://github.com/modelcontextprotocol/registry/pull/302 * feat: implement DNS namespace validation and remote URL uniqueness checks by @domdomegg in https://github.com/modelcontextprotocol/registry/pull/306 * Add $schema to server.json specification to enable versioning, IDE autocomplete by @domdomegg in https://github.com/modelcontextprotocol/registry/pull/308 * Add formatting and validation for free-form fields by @Avish34 in https://github.com/modelcontextprotocol/registry/pull/272 * feat: Add support for MCP Bundles (MCPB) in registry by @joan-anthropic in https://github.com/modelcontextprotocol/registry/pull/295 * Replace Codecov with GitHub Actions artifacts by @domdomegg in https://github.com/modelcontextprotocol/registry/pull/310 * feat: add version field to OpenAPI specification by @JAORMX in https://github.com/modelcontextprotocol/registry/pull/312 * Fix the path for openapi.yaml in README by @rdimitrov in https://github.com/modelcontextprotocol/registry/pull/314 * feat: implement OIDC authentication for admin users by @domdomegg in https://github.com/modelcontextprotocol/registry/pull/316 * feat: add admin edit endpoint for server moderation by @domdomegg in https://github.com/modelcontextprotocol/registry/pull/315 * feat: add namespace blocking functionality for JWT authentication by @domdomegg in https://github.com/modelcontextprotocol/registry/pull/313 * Deduplicate server JSON structs between publisher and registry by @rdimitrov in https://github.com/modelcontextprotocol/registry/pull/318 * Rename api/v1 -> api/v0 to match API paths by @domdomegg in https://github.com/modelcontextprotocol/registry/pull/320 * Clean up publish and edit handler and service logic by @domdomegg in https://github.com/modelcontextprotocol/registry/pull/319 * Reflect the latest changes in the README by @rdimitrov in https://github.com/modelcontextprotocol/registry/pull/322 * feat: add admin operations documentation and scripts for server management by @domdomegg in https://github.com/modelcontextprotocol/registry/pull/323 * fix: Named arguments should identify the argument name by @domdomegg in https://github.com/modelcontextprotocol/registry/pull/321 * Tidy up command structure for MCP Publisher by @domdomegg in https://github.com/modelcontextprotocol/registry/pull/324 * Move publisher CLI from tools/ to cmd/ by @domdomegg in https://github.com/modelcontextprotocol/registry/pull/326 * Remove leftover bson tags from the Go structs by @rdimitrov in https://github.com/modelcontextprotocol/registry/pull/327 * refactor: update registry type from 'docker-hub' to 'oci' across seed data by @domdomegg in https://github.com/modelcontextprotocol/registry/pull/325 * Use constants instead of hardcoded strings by @rdimitrov in https://github.com/modelcontextprotocol/registry/pull/330 * docs: fix grammar in README description by @oheriko in https://github.com/modelcontextprotocol/registry/pull/329 * Implement flattened _meta format for server extensions by @domdomegg in https://github.com/modelcontextprotocol/registry/pull/331 * Update examples.md for more realism by @domdomegg in https://github.com/modelcontextprotocol/registry/pull/332 * Database implementation cleanup by @domdomegg in https://github.com/modelcontextprotocol/registry/pull/335 * 102 infra for monitoring by @pree-dew in https://github.com/modelcontextprotocol/registry/pull/328 * fix: remove id property from Server schema by @domdomegg in https://github.com/modelcontextprotocol/registry/pull/339 * fix: use path.Join instead of filepath.Join for embedded migrations by @domdomegg in https://github.com/modelcontextprotocol/registry/pull/338 * Add transport type property to Packages by @rdimitrov in https://github.com/modelcontextprotocol/registry/pull/340 * deploy: Reduce resource requests and limits to unblock scheduling pods by @domdomegg in https://github.com/modelcontextprotocol/registry/pull/341 * deploy: fix: update Grafana ingress host format for consistency by @domdomegg in https://github.com/modelcontextprotocol/registry/pull/342 * deploy: feat: set Grafana root_url to make oauth flow smoother by @domdomegg in https://github.com/modelcontextprotocol/registry/pull/344 * Update the schema to remove stdio transport type for remote servers by @rdimitrov in https://github.com/modelcontextprotocol/registry/pull/343 * Remove Azure/AKS deployment configuration from deploy by @domdomegg in https://github.com/modelcontextprotocol/registry/pull/347 * Validate server registry urls are allowlisted for that registry type by @domdomegg in https://github.com/modelcontextprotocol/registry/pull/348 * config: remove unused database and logging configuration options by @domdomegg in https://github.com/modelcontextprotocol/registry/pull/349 * Add registry validators by @domdomegg in https://github.com/modelcontextprotocol/registry/pull/350 * Bump release date by @domdomegg in https://github.com/modelcontextprotocol/registry/pull/357 * Add terms of service documentation by @domdomegg in https://github.com/modelcontextprotocol/registry/pull/346 * Check for localhost in remote url by @Avish34 in https://github.com/modelcontextprotocol/registry/pull/355 * Update docs for new package registry contributions by @domdomegg in https://github.com/modelcontextprotocol/registry/pull/362 * Reflect the latest registry changes in openapi.yaml by @rdimitrov in https://github.com/modelcontextprotocol/registry/pull/345 * Add optional subfolder field to Repository schema by @KalleBylin in https://github.com/modelcontextprotocol/registry/pull/363 * Add embedded CLI example by @KalleBylin in https://github.com/modelcontextprotocol/registry/pull/352 * Improve stdio transport validation and function naming by @domdomegg in https://github.com/modelcontextprotocol/registry/pull/365 * Big docs tidy up in preparation for launch by @domdomegg in https://github.com/modelcontextprotocol/registry/pull/364 * Introduce Goreleaser by @rdimitrov in https://github.com/modelcontextprotocol/registry/pull/366 * Enforce and document file hash requirement for MCPB packages by @domdomegg in https://github.com/modelcontextprotocol/registry/pull/368 * Fix _meta field format for MCP spec compliance by @domdomegg in https://github.com/modelcontextprotocol/registry/pull/367 * Move releases.md and update the deployment image reference from latest to main by @rdimitrov in https://github.com/modelcontextprotocol/registry/pull/369 ## New Contributors * @sridharavinash made their first contribution in https://github.com/modelcontextprotocol/registry/pull/4 * @toby made their first contribution in https://github.com/modelcontextprotocol/registry/pull/8 * @tadasant made their first contribution in https://github.com/modelcontextprotocol/registry/pull/16 * @connor4312 made their first contribution in https://github.com/modelcontextprotocol/registry/pull/33 * @luoxiner made their first contribution in https://github.com/modelcontextprotocol/registry/pull/35 * @ayoyu made their first contribution in https://github.com/modelcontextprotocol/registry/pull/72 * @yshngg made their first contribution in https://github.com/modelcontextprotocol/registry/pull/62 * @debin-ge made their first contribution in https://github.com/modelcontextprotocol/registry/pull/76 * @chenmingyong0423 made their first contribution in https://github.com/modelcontextprotocol/registry/pull/106 * @Copilot made their first contribution in https://github.com/modelcontextprotocol/registry/pull/152 * @joelverhagen made their first contribution in https://github.com/modelcontextprotocol/registry/pull/163 * @chlowell made their first contribution in https://github.com/modelcontextprotocol/registry/pull/199 * @rdimitrov made their first contribution in https://github.com/modelcontextprotocol/registry/pull/210 * @kofj made their first contribution in https://github.com/modelcontextprotocol/registry/pull/147 * @8806667653 made their first contribution in https://github.com/modelcontextprotocol/registry/pull/114 * @TomCN0803 made their first contribution in https://github.com/modelcontextprotocol/registry/pull/144 * @hurricane1988 made their first contribution in https://github.com/modelcontextprotocol/registry/pull/202 * @domdomegg made their first contribution in https://github.com/modelcontextprotocol/registry/pull/223 * @dependabot[bot] made their first contribution in https://github.com/modelcontextprotocol/registry/pull/254 * @andreyvelich made their first contribution in https://github.com/modelcontextprotocol/registry/pull/259 * @pree-dew made their first contribution in https://github.com/modelcontextprotocol/registry/pull/290 * @JAORMX made their first contribution in https://github.com/modelcontextprotocol/registry/pull/299 * @Avish34 made their first contribution in https://github.com/modelcontextprotocol/registry/pull/272 * @joan-anthropic made their first contribution in https://github.com/modelcontextprotocol/registry/pull/295 * @oheriko made their first contribution in https://github.com/modelcontextprotocol/registry/pull/329 * @KalleBylin made their first contribution in https://github.com/modelcontextprotocol/registry/pull/363 **Full Changelog**: https://github.com/modelcontextprotocol/registry/commits/v0.0.1