Skip to main content

Available Tools

Tool Configuration

By default, both execute_sql and search_objects are enabled for each database source. You can customize which tools are available using [[tools]] entries in your dbhub.toml:

Default Behavior

If no [[tools]] entries are defined for a source, both execute_sql and search_objects are enabled by default:

Selective Tool Exposure

Control which tools are exposed for each database source:
This is useful when you want to restrict AI models to read-only schema exploration without allowing SQL execution.

Per-Tool Settings

Configure built-in tools with specific settings like readonly and max_rows:
See execute_sql documentation for details on readonly and max_rows settings.

Mixed Configuration

Different sources can have different tool configurations:

Custom Tools

You can also define custom tools alongside built-in tools:
This approach gives you fine-grained control: disable general SQL execution while providing specific, safe operations through custom tools.

Tool Naming

The tool name varies based on your configuration: Single database without --id:
Tool name: execute_sql Single database with --id:
Tool name: execute_sql_prod Multiple databases via TOML config:
Tool names: execute_sql_prod_pg and execute_sql_staging_mysql
Special characters in source IDs (hyphens, dots, etc.) are converted to underscores in tool names. For example, prod-pg becomes execute_sql_prod_pg.

Next Steps

Execute SQL

Execute SQL queries and statements on your database

Search Objects

Search and explore database schemas, tables, and objects

Custom Tools

Create reusable parameterized SQL operations