generate_source
Generate source YAML by introspecting database schemas
Part of the dbt MCP server. Enforce policies on this tool with Intercept, the open-source MCP proxy.
WHEN AI AGENTS USE THIS TOOL
AI agents use generate_source to create or modify resources in dbt. Write operations carry medium risk because an autonomous agent could trigger bulk unintended modifications. Rate limits prevent a single agent session from making hundreds of changes in rapid succession. Argument validation ensures the agent passes expected values.
WHY ENFORCE A POLICY ON GENERATE_SOURCE
Without a policy, an AI agent could call generate_source repeatedly, creating or modifying resources faster than any human could review. Intercept's rate limiting ensures write operations happen at a controlled pace, and argument validation catches malformed or unexpected inputs before they reach dbt.
RECOMMENDED POLICY
Write tools can modify data. A rate limit prevents runaway bulk operations from AI agents.
tools:
generate_source:
rules:
- action: allow
rate_limit:
max: 30
window: 60 See the full dbt policy for all 48 tools.
DETAILS
MORE DBT TOOLS
generate_model_yaml Write generate_staging_model Write get_dimensions Read get_entities Read get_metrics_compiled_sql Read list_metrics Read list_saved_queries Read get_all_macros Read SIMILAR WRITE TOOLS ON OTHER SERVERS
RELATED READING
FREQUENTLY ASKED QUESTIONS
What does the generate_source tool do?
Generate source YAML by introspecting database schemas. It is categorised as a Write tool in the dbt MCP Server, which means it can create or modify data. Consider rate limits to prevent runaway writes.
How do I enforce a policy on generate_source?
Add a rule in your Intercept YAML policy under the tools section for generate_source. You can allow, deny, rate-limit, or validate arguments. Then run Intercept as a proxy in front of the dbt MCP server.
What risk level is generate_source?
generate_source is a Write tool with medium risk. Write tools should be rate-limited to prevent accidental bulk modifications.
Can I rate-limit generate_source?
Yes. Add a rate_limit block to the generate_source rule in your Intercept policy. For example, setting max: 10 and window: 60 limits the tool to 10 calls per minute. Rate limits are tracked per agent session and reset automatically.
How do I block generate_source completely?
Set action: deny in the Intercept policy for generate_source. The AI agent will receive a policy violation error and cannot call the tool. You can also include a reason field to explain why the tool is blocked.
What MCP server provides generate_source?
generate_source is provided by the dbt MCP server (dbt-labs/dbt-mcp). Intercept sits as a proxy in front of this server to enforce policies before tool calls reach the server.
ENFORCE POLICIES ON DBT
Open source. One binary. Zero dependencies.