{"id":23522,"library":"dbt-mcp","title":"dbt-mcp","description":"A MCP (Model Context Protocol) server for interacting with dbt resources. Current version: 1.16.0. Released 2026-04-27. Follows semantic versioning with frequent releases (biweekly).","status":"active","version":"1.16.0","language":"python","source_language":"en","source_url":"https://github.com/dbt-labs/dbt-mcp","tags":["mcp","dbt","analytics engineering","data mesh","ai agent"],"install":[{"cmd":"pip install dbt-mcp","lang":"bash","label":"pip install"}],"dependencies":[],"imports":[{"note":"Incorrect direct import common in early docs.","wrong":"from dbt_mcp import MCPServer","symbol":"MCPServer","correct":"from dbt_mcp.server import MCPServer"}],"quickstart":{"code":"import os\nfrom dbt_mcp.server import MCPServer\n\nserver = MCPServer()\nserver.run()","lang":"python","description":"Start a basic dbt MCP server. Requires dbt Cloud account ID and token set in environment."},"warnings":[{"fix":"Use `list_artifacts` and `get_artifact` (if available) or custom API calls.","message":"In v1.15.0, the `get_job_run_artifact` tool was removed. If you rely on it, pin to <1.15.0 or migrate to alternative tooling.","severity":"breaking","affected_versions":">=1.15.0"},{"fix":"Migrate to multi-project server config with `config_override` or use `list_projects`.","message":"In v1.13.0, `get_project_details` tool was removed. Multi-project config now uses Admin API Client.","severity":"breaking","affected_versions":">=1.13.0"},{"fix":"Remove `DBT_LSP_PATH`; use default Fusion LSP or editor storage paths.","message":"The `DBT_LSP_PATH` environment variable is deprecated in favor of built-in Fusion LSP support. Will be removed in future version.","severity":"deprecated","affected_versions":">=1.16.0"},{"fix":"Ensure Python 3.12 or later.","message":"Python 3.12+ required. The server will fail to start on Python <3.12.","severity":"gotcha","affected_versions":">=1.15.0"},{"fix":"Upgrade to >=1.15.0 or avoid symlinked paths for `~/.dbt/mcp.lock`.","message":"If the `mcp.lock` file is a symbolic link, creation of FileLock may raise OSError on some systems. Fixed in v1.15.0 by resolving symlinks before locking.","severity":"gotcha","affected_versions":"<1.15.0"},{"fix":"Update metric parsing to handle CSV (or update to use new threshold `DBT_MCP_SL_FULL_CONFIG_THRESHOLD`).","message":"`list_metrics` response format changed from JSON to CSV in v1.15.1 to reduce payload size. Parsing code expecting JSON will break.","severity":"gotcha","affected_versions":">=1.15.1"}],"env_vars":null,"last_verified":"2026-05-01T00:00:00.000Z","next_check":"2026-07-30T00:00:00.000Z","problems":[{"fix":"Run `pip install dbt-mcp` in the correct environment.","cause":"Environment missing the dbt-mcp package or wrong Python environment active.","error":"ModuleNotFoundError: No module named 'dbt_mcp'"},{"fix":"Set `DBT_CLOUD_ACCOUNT_ID` and `DBT_CLOUD_TOKEN` (or `DBT_CLOUD_API_KEY`).","cause":"Required environment variables not configured.","error":"RuntimeError: DBT_CLOUD_ACCOUNT_ID environment variable not set"},{"fix":"Check that the server is running and reachable, and handle None returns explicitly.","cause":"Attempting to access tool result without checking if result is None, common when network issues occur.","error":"TypeError: 'NoneType' object is not subscriptable"},{"fix":"Use `from dbt_mcp.server import MCPServer`.","cause":"Wrong import path; `MCPServer` is in `dbt_mcp.server`.","error":"ImportError: cannot import name 'MCPServer' from 'dbt_mcp'"}],"ecosystem":"pypi","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}