-
Notifications
You must be signed in to change notification settings - Fork 10
Open
Labels
enhancementNew feature or requestNew feature or requestpriority: mediumImportant but not urgentImportant but not urgent
Description
Overview
The Model Context Protocol (MCP) is becoming the standard way for LLMs to call tools. Adding an MCP server entry point would let Claude Desktop, Cursor, and other MCP-compatible clients use dbt Cloud commands directly without any custom integration code.
Background
- dbt Labs has their own MCP server but it is currently unstable and not widely adopted
dbt-cloud-clialready has all the building blocks: Pydantic command models,TOOL_REGISTRY,execute_tool_call(Add dbt_cloud/tools.py: auto-generate OpenAI/Anthropic tool definitions #135)- An MCP server is essentially a JSON-RPC wrapper around
get_anthropic_tools()+execute_tool_call()
Proposed approach
Add an optional mcp extra and a dbt-cloud-mcp entry point:
pip install dbt-cloud-cli[mcp]
The server would:
- Expose
tools/list→ delegates toget_anthropic_tools() - Handle
tools/call→ delegates toexecute_tool_call(tool_name, tool_input) - Read auth from env vars (
DBT_CLOUD_API_TOKEN,DBT_CLOUD_HOST) - Respect
DBT_CLOUD_READONLYto expose a read-only subset
Dependencies
mcpPython SDK (optional dependency)
Related
- RFC: First-class support for agentic / autonomous agent use #107 — parent RFC
- Add dbt_cloud/tools.py: auto-generate OpenAI/Anthropic tool definitions #135 — tools.py (provides TOOL_REGISTRY and execute_tool_call)
- Add DBT_CLOUD_READONLY env var to restrict destructive commands #134 — DBT_CLOUD_READONLY
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or requestpriority: mediumImportant but not urgentImportant but not urgent