Table of Contents
Capability: contract:tracker + contract:source-control + contract:change-request
Coverage: partial
Kind: implementation
Vendor: GitLab
Read-only client for the GitLab REST API v4.
This bridge implements a partial read-only foundation for repository metadata context under contract:source-control, issue listing and fetching under contract:tracker, and merge request discovery, diffs, commits, and CI pipeline status under contract:change-request. Partial adapters may implement named contract verbs, but they do not satisfy the complete contract and must not be advertised as complete/selectable backends. Write operations and issue/MR mutations remain out of scope for this foundation.
uv.uv.GITLAB_TOKEN (Personal Access Token, OAuth Bearer token) or CI_JOB_TOKEN with API access. Tokens are optional for unauthenticated reads on public projects.GITLAB_AUTH_SCHEME (PrivateToken, Bearer, JobToken) can be set to override header selection explicitly.GITLAB_INSTANCE_URL defaults to https://gitlab.com.Set GITLAB_TOKEN in your environment:
export GITLAB_TOKEN="glpat-..."
For self-hosted instances (e.g. Debian Salsa, GNOME):
export GITLAB_INSTANCE_URL="https://salsa.debian.org"
To explicitly force an authentication scheme (e.g. OAuth Bearer token vs Private Token):
export GITLAB_AUTH_SCHEME="Bearer"
See tool.md for the full operations catalogue and contract mapping.
List open issues for a project:
uv run --project tools/gitlab magpie-gitlab issue list <project>
Get a merge request diff:
uv run --project tools/gitlab magpie-gitlab mr diff <project> <mr_iid>