dbt Tools Documentation
This document lists all available dbt tools and their usage.
Configuration Requirements
To use these tools, you must have a valid dbt project configured and accessible by the extension.
Tools
Tool Name | Description | Parameters |
---|---|---|
get_projects |
Returns detailed information about all available dbt projects. This must be called first to get the projectRoot parameter needed for all other tools. | None |
get_columns_of_model |
Returns the column names and data types for a specified dbt model. Use this to understand a model's schema before querying it. | - projectRoot (string): The root directory path of the dbt project- modelName (string): The name of the dbt model |
get_columns_of_source |
Returns the column names and data types for a specified dbt source. Use this to understand a source's schema before querying it. | - projectRoot (string): The root directory path of the dbt project- sourceName (string): The name of the dbt source- tableName (string): The name of the table in the source |
get_column_values |
Returns the distinct values for a specified column in a model or source. Use this to understand the data distribution and possible values in a column. | - projectRoot (string): The root directory path of the dbt project- model (string): The model or source name- column (string): The column name |
execute_sql |
Executes SQL queries against the database, returning processed results immediately. Use this to test queries and retrieve data from the database. | - projectRoot (string): The root directory path of the dbt project- query (string): The SQL query to execute- modelName (string): The model name (for context) |
compile_model |
Converts a dbt model's Jinja SQL into raw SQL. Use this to inspect the generated SQL before executing it. | - projectRoot (string): The root directory path of the dbt project- modelName (string): The name of the dbt model |
compile_query |
Compile query, this will only convert the Jinja SQL to SQL, not determine if the SQL actually works. | - projectRoot (string): The root directory path of the dbt project- query (string): The Jinja SQL query- originalModelName (string, optional): The original model name |
run_model |
Executes a dbt model in the database. Use + for plusOperatorLeft to include parent models, and + for plusOperatorRight to include child models in the run. | - projectRoot (string): The root directory path of the dbt project- plusOperatorLeft (enum: "", "+"): Include parent models- modelName (string): The model name- plusOperatorRight (enum: "", "+"): Include child models |
build_model |
Builds a dbt model in the database. Use + for plusOperatorLeft to include parent models, and + for plusOperatorRight to include child models in the build. | - projectRoot (string): The root directory path of the dbt project- plusOperatorLeft (enum: "", "+"): Include parent models- modelName (string): The model name- plusOperatorRight (enum: "", "+"): Include child models |
build_project |
Builds the dbt project, this will run seeds, models and all related tests. | - projectRoot (string): The root directory path of the dbt project |
run_test |
Run an individual test based on the test name in the dbt manifest. | - projectRoot (string): The root directory path of the dbt project- testName (string): The name of the test |
run_model_test |
Run model tests, use this tool to run the existing tests defined for the dbt model. | - projectRoot (string): The root directory path of the dbt project- modelName (string): The name of the dbt model |
add_dbt_packages |
Add dbt package(s) to the project, the dbt package string should be in the form of packageName@version. | - projectRoot (string): The root directory path of the dbt project- packages (string[]): Array of package strings |
install_deps |
Install dbt package dependencies based on the dbt project's packages.yml file. | - projectRoot (string): The root directory path of the dbt project |
get_children_models |
Returns the list of models that depend on the specified model (its children). Use this to understand a model's downstream impact and lineage. | - projectRoot (string): The root directory path of the dbt project- table (string): The model name |
get_parent_models |
Returns the list of models that the specified model depends on (its parents). Use this to understand a model's upstream dependencies and lineage. | - projectRoot (string): The root directory path of the dbt project- table (string): The model name |