Release v0.9.13 - Fix db-mcp update SSL verification
Overview
Patch release that makes db-mcp update actually work. v0.9.12 shipped the new update and uninstall commands but the update path failed inside the PyInstaller binary because frozen Python can't read the system CA store, so every HTTPS call returned SSL: CERTIFICATE_VERIFY_FAILED.
Highlights
db-mcp updateanddb-mcp update --version X.Y.Znow succeed againstapi.github.comandgithub.com/.../releases/download/...from the bundled binary.- When a fetch does fail, the underlying error (SSL, network, parse) is surfaced in the CLI output instead of being swallowed as a generic "Could not contact GitHub" message.
Bug Fixes
- SSL CERTIFICATE_VERIFY_FAILED in
db-mcp update— wrapped everyurlopen()call ininstall_cmd.pywith anSSLContextbuilt fromcertifi.where(). Bundledcertifi>=2024.2.2as an explicit dependency ofpackages/cliso PyInstaller picks up the CA file. Both the GitHub API call and the binary download now verify cleanly inside the frozen bundle. - Silent fetch failures —
_fetch_latest_version()now returns(version, error)and the CLI surfaceserrorso users can diagnose SSL/network problems without rebuilding.
Files Changed
| File | Change |
|---|---|
packages/cli/pyproject.toml |
Add certifi>=2024.2.2 to dependencies. |
packages/cli/src/db_mcp_cli/commands/install_cmd.py |
New _ssl_context() helper; pass context= to all urlopen calls; return (version, error) from _fetch_latest_version. |
packages/cli/tests/test_install_cmd.py |
3 new regression tests covering SSL context wiring; existing tests updated for the new tuple return. |
packages/core/pyproject.toml |
Version bump to 0.9.13. |
packages/core/src/db_mcp/__init__.py |
Version bump to 0.9.13. |
uv.lock |
Regenerated. |
Testing
- CLI: 71 tests passing (3 new SSL regression tests)
- Core: 1157 tests passing
- Data: 299 tests passing
- Knowledge: 249 tests passing
- MCP-server: 47 tests passing
- Lint: clean (
uv run ruff check .) - Live source-mode round-trip:
_fetch_latest_version()againstapi.github.comreturns("0.9.12", None)(will return("0.9.13", None)once this release is published).
Upgrade
From v0.9.12: db-mcp update itself doesn't work in v0.9.12 (that's the bug we're fixing), so users must reinstall via the install script:
curl -fsSL https://raw.githubusercontent.com/apelogic-ai/db-mcp/main/scripts/install.sh | shAfter upgrading to v0.9.13, future patch releases can be installed with db-mcp update.