Summary
Installing dbt-mcp==0.2.20 from the published source distribution currently fails in source-build environments because a transitive dependency requires a prebuilt Flight SQL shared library path at build time.
The failing chain is:
dbt-mcp==0.2.20
- depends on
dbt-sl-sdk[sync]==0.11.0
dbt-sl-sdk==0.11.0 depends on adbc-driver-flightsql>=0.11.0
adbc-driver-flightsql source build aborts unless ADBC_FLIGHTSQL_LIBRARY points to libadbc_driver_flightsql.{so,dylib,dll}
Reproduction
In a Homebrew source-build formula environment on macOS with Python 3.13:
brew install --build-from-source ./Formula/d/dbt-mcp.rb
The build fails while preparing the adbc-driver-flightsql wheel.
Failure
The relevant error is:
ValueError: Must provide ADBC_FLIGHTSQL_LIBRARY
This comes from the adbc-driver-flightsql build step, which expects an already-built Flight SQL shared library to exist before pip install runs.
Why this is a blocker
This prevents dbt-mcp from being packaged in source-only environments unless they also independently provide the native Flight SQL driver library and wire the environment variable correctly.
Possible fixes
Any of these would unblock source-based packaging:
- Make the semantic-layer / Flight SQL dependency optional instead of unconditional in the base install.
- Split the semantic-layer support behind an extra that downstream packagers can opt into.
- Provide a supported source-build path for the native Flight SQL dependency chain in the published sdist/wheel workflow.
- Document a stable packaging contract for the required native library path and supported provider packages.
If useful, I can also provide the exact Homebrew formula patch I was testing and the full failing log excerpt.