ToolTrust
B17/100
dbt-labs

dbt-mcp

mcp2.0.0-beta.1

@dbt-labs

A MCP (Model Context Protocol) server for interacting with dbt.

By dbt-labs | 90 findings | Scanned 7/31/2026 | tooltrust-scanner/v0.3.19 | 596

9 High19 Low62 Info

Risk Summary

Safe With Normal Controls

Dep Visibility is the main signal, but overall risk remains within an acceptable range.

Potential impact: This finding indicates the tool should be reviewed before it is trusted.

Recommended action: No high-risk findings were detected in this scan, but you should still apply least-privilege defaults and rescan after changes.

Suggested policy: keep this tool behind manual approval, do not allow unattended runs, and re-scan after narrowing risky permissions.

Security Findings (90)

  • HighAS-003

    🔀Scope Mismatch ×9

    tool name "get_job_details" implies read-only operation but declares exec permission

    get_job_details

    tool name "get_job_run_details" implies read-only operation but declares exec permission

    get_job_run_details

    tool name "get_metrics_compiled_sql" implies read-only operation but declares exec permission

    get_metrics_compiled_sql

    tool name "get_model_health" implies read-only operation but declares exec permission

    get_model_health

    tool name "get_model_performance" implies read-only operation but declares exec permission

    get_model_performance

    tool name "list_job_run_artifacts" implies read-only operation but declares exec permission

    list_job_run_artifacts

    tool name "list_jobs" implies read-only operation but declares exec permission

    list_jobs

    tool name "list_jobs_runs" implies read-only operation but declares exec permission

    list_jobs_runs

    tool name "list_saved_queries" implies read-only operation but declares exec permission

    list_saved_queries

    Fix: Ensure tool names, descriptions, and permission declarations are internally consistent. Use explicit naming conventions that fully reflect actual capabilities.

  • LowAS-011

    ℹ️Missing Rate-Limit / Timeout ×19

    tool performs network or execution operations but declares no rate-limit, timeout, or retry configuration

    cancel_job_runget_dimensionsget_entitiesget_exposuresget_job_detailsget_job_run_detailsget_metrics_compiled_sqlget_model_healthget_model_performanceget_product_doc_pageslist_job_run_artifactslist_jobslist_jobs_runslist_metricslist_saved_queriesquery_metricsretry_job_runsearch_product_docstrigger_job_run

    Fix: Declare explicit rate-limit, timeout, and retry configuration for all network and execution tools. Implement exponential back-off and surface resource state to the calling agent.

  • InfoAS-002

    ⚠️Excessive Permissions ×24

    declared capabilities: code/command execution

    cancel_job_runget_job_run_detailsget_model_healthlist_jobslist_jobs_runslist_saved_queriestrigger_job_run

    declared capabilities: database access

    get_all_macrosget_all_sourcesget_dimension_valuesget_job_run_error

    declared capabilities: filesystem access, database access, HTTP requests

    get_dimensions

    declared capabilities: HTTP requests

    get_entities

    declared capabilities: network access

    get_exposures

    declared capabilities: code/command execution, HTTP requests

    get_job_detailsretry_job_run

    declared capabilities: code/command execution, database access

    get_metrics_compiled_sql

    declared capabilities: code/command execution, network access

    get_model_performance

    declared capabilities: network access, database access

    get_product_doc_pagesquery_metricssearch_product_docs

    declared capabilities: code/command execution, network access, filesystem access, database access

    list_job_run_artifacts

    declared capabilities: network access, database access, HTTP requests

    list_metrics

    declared capabilities: filesystem access

    list_projects

    Fix: Tool requests broad permissions (exec/fs/network). Validate input parameters using Enums where possible, and restrict file system operations to explicit allowed directories.

  • InfoAS-014

    ℹ️Dependency Inventory Unavailable ×38

    Tool did not expose metadata.dependencies or repo_url, so supply-chain coverage is limited.

    cancel_job_runget_all_macrosget_all_modelsget_all_sourcesget_dimension_valuesget_dimensionsget_entitiesget_exposure_detailsget_exposuresget_job_detailsget_job_run_detailsget_job_run_errorget_lineageget_macro_detailsget_mart_modelsget_metrics_compiled_sqlget_model_childrenget_model_detailsget_model_healthget_model_parentsget_model_performanceget_node_detailsget_product_doc_pagesget_seed_detailsget_semantic_model_detailsget_snapshot_detailsget_source_detailsget_test_detailslist_job_run_artifactslist_jobslist_jobs_runslist_metricslist_projectslist_saved_queriesquery_metricsretry_job_runsearch_product_docstrigger_job_run

    Fix: Review and remediate the identified issue.

Scan this tool yourself

Reproduce this audit locally, integrate into CI, or let your agent audit its own tools.

Install once, then scan any MCP server:

$ curl -sfL https://raw.githubusercontent.com/AgentSafe-AI/tooltrust-scanner/main/install.sh | bash
$ tooltrust-scanner scan --server "npx -y dbt-mcp"

Adjust the package name if your npm registry name differs from the tool ID. View source

Add badge to your README

Copy this Markdown to show your ToolTrust grade on GitHub.

[![ToolTrust Grade B](https://raw.githubusercontent.com/AgentSafe-AI/tooltrust-directory/main/docs/badges/grade-b.svg)](https://github.com/AgentSafe-AI/tooltrust-directory)