Summary
Add Homebrew tap support so users can install mcp-gitlab via brew install vish288/tap/mcp-gitlab instead of requiring uvx or pip install.
Motivation
- Homebrew is the standard package manager on macOS — brew taps integrate with the existing developer workflow
uvx mcp-gitlab requires uv to be installed; pip install has global env pollution concerns
- A brew formula with proper dependency pinning provides reproducible installs
- Aligns with the distribution pattern used by other MCP servers (e.g.,
npx packages have brew equivalents)
Implementation Details
1. Create a Homebrew tap repo
Create github.com/vish288/homebrew-tap (or add to an existing tap repo) with a formula file:
# Formula/mcp-gitlab.rb
class McpGitlab < Formula
include Language::Python::Virtualenv
desc "MCP server providing 76 tools for the GitLab REST API v4"
homepage "https://github.com/vish288/mcp-gitlab"
url "https://files.pythonhosted.org/packages/.../mcp-gitlab-X.Y.Z.tar.gz"
sha256 "..."
license "MIT"
depends_on "python@3.13"
# virtualenv resources generated via:
# pip-compile --generate-hashes pyproject.toml
# poet mcp-gitlab
def install
virtualenv_install_with_resources
end
test do
assert_match "GitLab MCP Server", shell_output("#{bin}/mcp-gitlab --help")
end
end
2. Automation: Auto-update formula on PyPI release
Add a GitHub Action to the tap repo (or this repo) that:
- Triggers on new PyPI release (or new GitHub release tag)
- Downloads the sdist from PyPI
- Computes sha256
- Updates the formula URL and sha256
- Commits and pushes to the tap repo
Reference: homebrew-releaser or manual brew bump-formula-pr workflow.
3. Alternative: brew install --HEAD support
For development installs, add a head block:
head do
url "https://github.com/vish288/mcp-gitlab.git", branch: "main"
end
4. Consider shared tap
If mcp-atlassian-extended also gets a formula, use a single homebrew-tap repo with multiple formulae:
homebrew-tap/
├── Formula/
│ ├── mcp-gitlab.rb
│ └── mcp-atlassian-extended.rb
Acceptance Criteria
Dependencies
- Package must be published to PyPI first (already done:
mcp-gitlab on PyPI)
- Python 3.13 formula dependency available in Homebrew core (confirmed)
Notes
- This is a follow-up to the MCP best practices compliance work
- Consider adding
mcp-atlassian-extended formula in the same tap repo
Summary
Add Homebrew tap support so users can install mcp-gitlab via
brew install vish288/tap/mcp-gitlabinstead of requiringuvxorpip install.Motivation
uvx mcp-gitlabrequires uv to be installed;pip installhas global env pollution concernsnpxpackages have brew equivalents)Implementation Details
1. Create a Homebrew tap repo
Create
github.com/vish288/homebrew-tap(or add to an existing tap repo) with a formula file:2. Automation: Auto-update formula on PyPI release
Add a GitHub Action to the tap repo (or this repo) that:
Reference: homebrew-releaser or manual
brew bump-formula-prworkflow.3. Alternative:
brew install --HEADsupportFor development installs, add a
headblock:4. Consider shared tap
If
mcp-atlassian-extendedalso gets a formula, use a singlehomebrew-taprepo with multiple formulae:Acceptance Criteria
vish288/homebrew-tapbrew tap vish288/tap && brew install mcp-gitlabinstalls successfullymcp-gitlab --helpworks after brew installDependencies
mcp-gitlabon PyPI)Notes
mcp-atlassian-extendedformula in the same tap repo