The [project.scripts] section declares the auth helper as garmin-mcp-auth:
[project.scripts]
garmin-workouts-mcp = "garmin_workouts_mcp:main"
garmin-mcp-auth = "garmin_workouts_mcp.auth_cli:main"
Taxuspt/garmin_mcp (package garmin-mcp) ships an executable with the exact same name. Since both projects serve complementary purposes (general Garmin data vs. workout management), it's natural to install both — and that's when the collision hits.
Repro:
uv tool install git+https://github.com/Taxuspt/garmin_mcp
uv tool install git+https://github.com/brunosantos/garmin-workouts-mcp
# error: Executable already exists: garmin-mcp-auth.exe (use `--force` to overwrite)
The second install is rolled back entirely. Same story with pipx. --force "works" but leaves one package's auth helper shadowing the other's, which breaks upgrades/uninstalls.
Suggested fix: rename the entrypoint to stay in this package's namespace (garmin-workouts-mcp-auth). Renaming is a breaking change for existing users of the standalone auth command, but any fix for the collision necessarily retires the old name, and the package is pre-1.0. PR incoming.
The
[project.scripts]section declares the auth helper asgarmin-mcp-auth:Taxuspt/garmin_mcp (package
garmin-mcp) ships an executable with the exact same name. Since both projects serve complementary purposes (general Garmin data vs. workout management), it's natural to install both — and that's when the collision hits.Repro:
The second install is rolled back entirely. Same story with
pipx.--force"works" but leaves one package's auth helper shadowing the other's, which breaks upgrades/uninstalls.Suggested fix: rename the entrypoint to stay in this package's namespace (
garmin-workouts-mcp-auth). Renaming is a breaking change for existing users of the standalone auth command, but any fix for the collision necessarily retires the old name, and the package is pre-1.0. PR incoming.