dbt-labs / dbt-labs/dbt-mcp

[Bug]: Can't call `uvx --env-file .env git+https://github.com/dbt-labs/dbt-mcp@main` with OAuth due to ui files built at release time

Open
#560 2 comments 0 reactions 0 assignees View on GitHub
bug
Dominant language
Python
Stars
603
Forks
131
Avg merge
4h 26m
Merged PRs (30d)
18

Description

### What happened?

I tried to run dbt-mcp from `@main` on github, with OAuth and got an error due to the fact that the `ui` file are not stored in GitHub but are generated during the release process via `task build`.

Allowing dbt-mcp from GitHub can be a great way sometimes to test code that has been merged but not yet released to PyPi.

If we wanted to keep supporting this approach we would need to either:
1. add the ui files to the repo
- as the js/css files contain hashes, this would lead to deleted/new files every time we change the UI
- we could hard code the js/css file names but in that case we might have some issues with cache invalidation not working for those when we update the UI
2. or add a hatchling build hook that would run `pnpm install` and `pnpm build`
- we could then remove `(cd ui && pnpm install && pnpm build)` from the build task
- but this would require for users to have `pmpm` installed on their machine when building from GitHub

I think that we could potentially go with either options (a slight preference for option 2), but what do people think?

### Steps to Reproduce

1. set an env var file with just the DBT_HOST
2. run `uvx --env-file .env git+https://github.com/dbt-labs/dbt-mcp@main`

### Deployment

Local MCP server

### Environment

_No response_

### Relevant log output

```shell

```

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.