mcp-data-platform-v0.15.2
Fixes a crash-on-restart bug introduced in v0.15.1 when OAuth PostgreSQL storage was added. The server would fail to start a second time because pre-registered OAuth clients hit a unique constraint violation on INSERT. Clients are now upserted, so config changes (redirect URIs, secret rotation) also take effect on restart without manual database cleanup.
Bug Fixes
OAuth client registration crash (#78)
CreateClient in pkg/oauth/postgres/store.go used a plain INSERT INTO oauth_clients which fails with a unique constraint violation on client_id when the server starts a second time against the same database. With in-memory storage this never triggered because the map was empty on restart.
Changed to INSERT ... ON CONFLICT (client_id) DO UPDATE SET so:
- First startup inserts the client
- Subsequent startups update the client with current config values
- bcrypt re-hashes the secret each startup (different salt), which is fine since
bcrypt.CompareHashAndPasswordworks regardless of which hash is stored
Zero-value created_at on OAuth clients
The oauth.Client struct in platform.go:initOAuth() was missing CreatedAt, storing 0001-01-01 00:00:00+00 in PostgreSQL. Now set to time.Now().
Upgrading from v0.15.1
No configuration changes needed. Drop-in replacement.
Changelog
Bug Fixes
Others
- 26c5219: ci: bump anchore/sbom-action from 0.22.0 to 0.22.2 (#73) (@dependabot[bot])
- 22adeed: ci: bump github/codeql-action from 4.32.0 to 4.32.2 (#76) (@dependabot[bot])
- 63aa55e: deps: bump github.com/golang-migrate/migrate/v4 from 4.18.3 to 4.19.1 (#72) (@dependabot[bot])
- 754a403: deps: bump github.com/testcontainers/testcontainers-go/modules/postgres (#75) (@dependabot[bot])
Installation
Homebrew (macOS)
brew install txn2/tap/mcp-data-platformClaude Code CLI
claude mcp add mcp-data-platform -- mcp-data-platformDocker
docker pull ghcr.io/txn2/mcp-data-platform:v0.15.2Verification
All release artifacts are signed with Cosign. Verify with:
cosign verify-blob --bundle mcp-data-platform_0.15.2_linux_amd64.tar.gz.sigstore.json \
mcp-data-platform_0.15.2_linux_amd64.tar.gz