feat: Add creds for GitHub auth, add "none" auth to publisher (#276)

## Motivation and Context

- Adds credentials for the new MCP Registry Login GitHub Apps (local,
staging, prod)
- Adds support for "none" auth to publisher

## How Has This Been Tested?

- Tested publisher workflows locally
- Unit and integration tests passing

## Breaking Changes

None

## 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. -->
- [x] I have read the [MCP
Documentation](https://modelcontextprotocol.io)
- [x] My code follows the repository's style guidelines
- [x] New and existing tests pass locally
- [x] I have added appropriate error handling
- [x] I have added or updated documentation as needed

---

Merging based on Tadas's approval review, and only making minor docs changes on top of that.
This commit is contained in:
adam jones 2025-08-18 15:49:04 +01:00 • committed by GitHub
commit e9fe6f9ab8
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -2,6 +2,8 @@
# Server configuration
MCP_REGISTRY_SERVER_ADDRESS=:8080
MCP_REGISTRY_VERSION=dev
MCP_REGISTRY_LOG_LEVEL=info
# Database configuration
MCP_REGISTRY_DATABASE_TYPE=mongodb
@ -9,20 +11,21 @@ MCP_REGISTRY_DATABASE_URL=mongodb://username:password@localhost:27017
MCP_REGISTRY_DATABASE_NAME=mcp-registry
MCP_REGISTRY_COLLECTION_NAME=servers_v2
# Application configuration
MCP_REGISTRY_LOG_LEVEL=info
MCP_REGISTRY_SEED_FILE_PATH=data/seed.json
MCP_REGISTRY_SEED_IMPORT=true
MCP_REGISTRY_VERSION=dev
# Path or URL to import seed data (supports local files and HTTP URLs)
MCP_REGISTRY_SEED_FROM=data/seed.json
# GitHub OAuth configuration
MCP_REGISTRY_GITHUB_CLIENT_ID=
MCP_REGISTRY_GITHUB_CLIENT_SECRET=
# These creds are for local development with the 'MCP Registry Login (Local)' GitHub App
# They don't provide any real privileged access, hence why it's okay that they're here
# The staging and prod credentials client secrets are sensitive and are stored in encrypted form in ./deploy
MCP_REGISTRY_GITHUB_CLIENT_ID=Iv23licy3GSiM9Km5jtd
MCP_REGISTRY_GITHUB_CLIENT_SECRET=0e8db54879b02c29adef51795586f3c510a9341d
# JWT configuration
# This should be a 32-byte Ed25519 seed (not the full private key). Generate a new seed with: `openssl rand -hex 32`
MCP_REGISTRY_JWT_PRIVATE_KEY=bb2c6b424005acd5df47a9e2c87f446def86dd740c888ea3efb825b23f7ef47c
# Anonymous authentication (for development/testing only)
# Anonymous authentication for development/testing only
# When enabled, allows anyone to get tokens for publishing to io.modelcontextprotocol.anonymous/* namespace
# This should be disabled in prod
MCP_REGISTRY_ENABLE_ANONYMOUS_AUTH=false