This release includes 1 security fix for security teams reviewing exposed deployments.
Topics
Affected surfaces
Summary
AI summaryUpdates Highlights, Breaking changes, and What changed across a mixed release.
Full changelog
First release after the security and tool-expansion refactor (#9).
Highlights
- Security: strict SQL identifier validation, parameterized values throughout, DSN redaction in responses. Closes #7.
- Policy: new
--read-onlyand--allow-destructiveserver flags; every destructive tool now requires per-callconfirm=True. - Tool catalogue: 32 → 87 tools across 13 categories. New: User & Privilege Management, Vector Search (C-SPANN + similarity), Job Management, Backup & Restore, Statistics, Multi-Region, Changefeeds, Cluster Admin, Diagnostics.
- Vector search for CockroachDB v25.2+:
vector_similarity_searchwithcosine/l2/ip/auto(auto-detects index opclass),create_cspann_index,drop_cspann_index. - Operations: configurable pool sizing via
CRDB_POOL_MIN/CRDB_POOL_MAX/CRDB_COMMAND_TIMEOUT, structured logging viaMCP_LOG_LEVEL/MCP_LOG_JSON. - Testing: 197 unit tests covering identifier validation, serializers, URI parsing, output formatting, and tool gating. Ruff lint and format checks.
- CI: GitHub Actions running on Python 3.12 and 3.13. Now required for merging to
main. - Docker: non-root user, HEALTHCHECK, default compose command uses
--read-only.
Breaking changes
- All tools now return a consistent
{success: bool, ...}shape. Tools that previously raised exceptions now return{success: false, error: ...}. --read-onlyis the recommended default for assistant-style deployments. Destructive tools refuse without--allow-destructive+confirm=True.- Dependency
dotenvrenamed topython-dotenvinpyproject.toml. - Minimum Python is 3.12.
Recommended usage
# Read-only assistant agent (recommended default)
uvx --from git+https://github.com/amineelkouhen/[email protected] \
cockroachdb-mcp-server \
--url postgresql://agent@host:26257/mydb \
--read-only
# Administrative agent that can manage schema
uvx --from git+https://github.com/amineelkouhen/[email protected] \
cockroachdb-mcp-server \
--url postgresql://admin@host:26257/mydb \
--allow-destructive
What changed (numbers)
- 38 files changed
- +6,256 insertions, -1,706 deletions
- 19 new files
See the full diff and per-file change list on the merged PR: https://github.com/amineelkouhen/mcp-cockroachdb/pull/9
Breaking Changes
- All tools now return a consistent {success: bool, ...} shape; previously raised exceptions are converted to {success: false, error: ...}.
- `--read-only` is the recommended default; destructive tools refuse execution without `--allow-destructive` and explicit `confirm=True`.
- Dependency `dotenv` renamed to `python-dotenv` in `pyproject.toml`.
- Minimum Python version increased to 3.12.
Security Fixes
- Strict SQL identifier validation and parameterized values throughout close injection vulnerabilities; DSN redaction in responses prevents credential leakage.
Weekly OSS security release digest.
The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.
No spam, unsubscribe anytime.
Share this release
About amineelkouhen/mcp-cockroachdb
A Model Context Protocol server for managing, monitoring, and querying data in CockroachDB.
Related context
Beta — feedback welcome: [email protected]