All integrations
GitLab
Issues, merge requests, pipelines and code across your GitLab projects.
Developer
How an agent reaches it
- MCP
Official MCP server. The agent lists its tools and calls them.
- REST API
Always available. The agent calls the API directly with your credential attached.
- CLI
The `glab` command, run on one of your computers with the credential mounted.
How you authenticate
- OAuth
- API key
- In GitLab, open your top-level group, then Settings, then General.
- Under GitLab Duo, set availability to always on and turn on beta and experimental features.
- Still under GitLab Duo, turn on access to the MCP server for the group.
- Without those group settings GitLab answers 404 and the MCP lane cannot come online. The REST lane works regardless.
How agents reach it
- Base URL
- https://gitlab.com/api/v4
- Pagination
- link_header
- MCP server
- https://gitlab.com/api/v4/mcp
- CLI
- glab
Common endpoints
| who am I | GET /user |
| list projects | GET /projects?membership=true |
| list issues | GET /projects/{id}/issues |
| create issue | POST /projects/{id}/issues |
| list merge requests | GET /projects/{id}/merge_requests |
| create merge request | POST /projects/{id}/merge_requests |
| list pipelines | GET /projects/{id}/pipelines |
Worth knowing
- Project ids in paths must be URL-encoded when using the `group/project` form: `mygroup%2Fmyproject`.
- GitLab answers 404 rather than 403 for resources your token cannot see.
- Self-hosted instances use a different base URL. Ask the user rather than assuming gitlab.com.