productivity
GitLab MCP Integration for CrewAI
Connect GitLab to CrewAI through the local KosmoKrator MCP gateway with scoped tools, credentials, and write policy.
Connect GitLab to CrewAI
Expose KosmoKrator integrations to CrewAI workers as scoped local tools.
Wrap kosmo integrations:call for specific tasks or connect workers to a local MCP gateway. The gateway is local, scoped to this integration, and starts with
--write=deny so CrewAI can inspect read-capable tools without receiving write access by default.
GitLab MCP Config for CrewAI
Use per-worker integration scopes to avoid giving every worker every tool.
{
"mcpServers": {
"kosmokrator-gitlab": {
"type": "stdio",
"command": "kosmo",
"args": [
"mcp:serve",
"--integration=gitlab",
"--write=deny"
]
}
}
} Run the Gateway Manually
kosmokrator mcp:serve --integration=gitlab --write=deny Why Use KosmoKrator Here
Expose only GitLab instead of a broad multi-service tool list.
Reuse credentials already configured for the KosmoKrator CLI and Lua runtime.
Start read-only, then opt into ask or allow for trusted workspaces.
GitLab Tools Visible to CrewAI
CrewAI sees stable MCP tool names generated from the GitLab integration catalog.
| MCP tool | Source function | Type | Description |
|---|---|---|---|
integration__gitlab__gitlab_create_issue | gitlab.gitlab_create_issue | Write | Create a new issue in a GitLab project. Requires a project ID and title. Optionally set description, labels, assignees, milestone, and weight. |
integration__gitlab__gitlab_get_issue | gitlab.gitlab_get_issue | Read | Get detailed information about a specific GitLab issue, including title, description, labels, assignees, milestone, and state. |
integration__gitlab__gitlab_update_issue | gitlab.gitlab_update_issue | Write | Update an existing issue in a GitLab project. Can change title, description, labels, state (close/reopen), and assignees. |
integration__gitlab__gitlab_list_issues | gitlab.gitlab_list_issues | Read | List issues in a GitLab project. Supports filtering by state (opened, closed, all), labels, and search text. Paginated. |
integration__gitlab__gitlab_search_issues | gitlab.gitlab_search_issues | Read | Search for issues in a GitLab project by keyword. Searches issue titles and descriptions. Optionally filter by state. |
integration__gitlab__gitlab_create_issue_comment | gitlab.gitlab_create_issue_comment | Write | Add a comment (note) to a GitLab issue. The comment body supports GitLab Markdown. |
integration__gitlab__gitlab_create_merge_request | gitlab.gitlab_create_merge_request | Write | Create a new merge request in a GitLab project. Requires source branch, target branch, and title. |
integration__gitlab__gitlab_get_merge_request | gitlab.gitlab_get_merge_request | Read | Get detailed information about a specific GitLab merge request, including title, description, source/target branches, and state. |
integration__gitlab__gitlab_list_merge_requests | gitlab.gitlab_list_merge_requests | Read | List merge requests in a GitLab project. Supports filtering by state (opened, closed, merged, all). Paginated. |
integration__gitlab__gitlab_update_merge_request | gitlab.gitlab_update_merge_request | Write | Update an existing merge request in a GitLab project. Can change title, description, labels, and state (close/reopen). |
integration__gitlab__gitlab_accept_merge_request | gitlab.gitlab_accept_merge_request | Write | Accept (merge) a GitLab merge request. Optionally set a custom merge commit message. |
integration__gitlab__gitlab_list_branches | gitlab.gitlab_list_branches | Read | List branches in a GitLab project repository. Supports searching by branch name and pagination. |
integration__gitlab__gitlab_create_branch | gitlab.gitlab_create_branch | Write | Create a new branch in a GitLab project repository. Requires a branch name and a ref (branch name or commit SHA) to create from. |
integration__gitlab__gitlab_list_commits | gitlab.gitlab_list_commits | Read | List commits in a GitLab project repository. Supports filtering by branch or tag name. Paginated. |
integration__gitlab__gitlab_get_file | gitlab.gitlab_get_file | Read | Get a file from a GitLab project repository. Returns file content (base64-encoded), file name, size, and encoding. |
integration__gitlab__gitlab_list_projects | gitlab.gitlab_list_projects | Read | List GitLab projects visible to the authenticated user. Supports filtering by membership, search text, and pagination. |
integration__gitlab__gitlab_get_project | gitlab.gitlab_get_project | Read | Get details for a specific GitLab project, including name, description, default branch, visibility, and statistics. |
integration__gitlab__gitlab_list_groups | gitlab.gitlab_list_groups | Read | List GitLab groups visible to the authenticated user. Paginated. |
integration__gitlab__gitlab_list_project_members | gitlab.gitlab_list_project_members | Read | List members of a GitLab project and their access levels. Paginated. |
integration__gitlab__gitlab_list_labels | gitlab.gitlab_list_labels | Read | List all labels for a GitLab project, including name, color, description, and open/closed issue counts. |