CVE-2026-44970
LowCVSS 3.1Exploitation Probability (EPSS)
Low risk11th percentile - higher than 11% of all known CVEs
Summary
In dbt-mcp before 1.17.1, DefaultUsageTracker.emit_tool_called_event() serializes the complete arguments dictionary of every MCP tool call and sends it via dbtlabs_vortex.producer.log_proto without redaction, including sql_query, vars, and node_selection. Telemetry is enabled by default unless DBT_SEND_ANONYMOUS_USAGE_STATS=false or DO_NOT_TRACK=1 is set.
Risk Assessment
Sensitive data such as SQL queries and variables may be sent to an external telemetry system without user knowledge, compromising confidentiality.
Recommendation
Update dbt-mcp to version 1.17.1 or later, and consider disabling telemetry by setting appropriate environment variables.
Other vulnerabilities in dbt-mcp
See all- CVE-2026-55837Medium
In dbt-mcp prior to 1.20.0, the local OAuth helper in src/dbt_mcp/oauth/fastapi_app.py exposes GET /dbt_platform_context without authentication or Host validation after a user completes the dbt Platform OAuth flow. The endpoint returns the full DbtPlatformContext, including access_token and refresh_token values, to any process that can reach 127.0.0.1:6785. The absence of TrustedHostMiddleware allows a remote attacker to use DNS rebinding against a victim's browser, while a co-located process can request the endpoint directly. The stolen tokens provide immediate dbt Platform API access as the victim and persistent access through the refresh token, allowing access to or modification of projects, jobs, environment secrets, and related account data.
- CVE-2026-44969Low
In dbt-mcp (MCP server for dbt) before version 1.17.1, the call_tool() function logs raw arguments at INFO level, and configure_file_logging() writes them to dbt-mcp.log, potentially exposing sensitive SQL queries, variables, and node selections in plaintext without automatic rotation or deletion.
- CVE-2026-44968Medium
dbt-mcp before version 1.17.1 does not sanitize node_selection and resource_type values before appending them to the dbt subprocess argument list. An MCP client can inject global dbt flags (e.g., --profiles-dir) despite shell=False.
Original NVD description (English source)
dbt-mcp is a Model Context Protocol server for interacting with dbt. Prior to 1.17.1, DefaultUsageTracker.emit_tool_called_event() in src/dbt_mcp/tracking/tracking.py serialized every MCP tool call's complete arguments dictionary and sent it through dbtlabs_vortex.producer.log_proto without redaction, including sql_query from show, vars from run, build, and test, and node_selection from compile, while usage_tracking_enabled in settings.py enabled telemetry by default unless DBT_SEND_ANONYMOUS_USAGE_STATS=false or DO_NOT_TRACK=1 was set. This issue is fixed in version 1.17.1.
Vulnerability data from NVD (NIST) · CISA KEV · EPSS

