GitLab MCP Server
OfficialСервер GitLab MCP
Сервер MCP для API GitLab, обеспечивающий управление проектами, файловые операции и многое другое.
Функции
Автоматическое создание веток : при создании/обновлении файлов или отправке изменений автоматически создаются ветки, если они не существуют.
Комплексная обработка ошибок : понятные сообщения об ошибках для распространенных проблем
Сохранение истории Git : операции поддерживают правильную историю Git без принудительной отправки
Пакетные операции : поддержка как однофайловых, так и многофайловых операций.
Инструменты
create_or_update_fileСоздать или обновить отдельный файл в проекте
Входные данные:
project_id(строка): идентификатор проекта или путь в кодировке URLfile_path(string): Путь, по которому необходимо создать/обновить файл.content(строка): Содержимое файлаcommit_message(строка): сообщение о фиксацииbranch(строка): ветвь для создания/обновления файлаprevious_path(необязательная строка): Путь к файлу для перемещения/переименования
Возвращает: содержимое файла и сведения о фиксации
push_filesОтправка нескольких файлов в один коммит
Входные данные:
project_id(строка): идентификатор проекта или путь в кодировке URLbranch(строка): ветвь, в которую нужно отправитьfiles(массив): файлы для отправки, каждый сfile_pathиcontentcommit_message(строка): сообщение о фиксации
Возврат: обновленная ссылка на ветку
search_repositoriesПоиск проектов GitLab
Входные данные:
search(строка): Поисковый запросpage(необязательное число): Номер страницы для нумерации страницper_page(необязательное число): Результаты на страницу (по умолчанию 20)
Возвращает: Результаты поиска проектов
create_repositoryСоздайте новый проект GitLab
Входные данные:
name(строка): Название проектаdescription(необязательная строка): Описание проектаvisibility(необязательная строка): «частная», «внутренняя» или «публичная»initialize_with_readme(необязательное логическое значение): Инициализировать с помощью README
Возвращает: Созданные детали проекта
get_file_contentsПолучить содержимое файла или каталога
Входные данные:
project_id(строка): идентификатор проекта или путь в кодировке URLfile_path(строка): Путь к файлу/каталогуref(необязательная строка): Ветвь/тег/коммит для получения содержимого
Возвращает: содержимое файла/каталога
create_issueСоздать новый выпуск
Входные данные:
project_id(строка): идентификатор проекта или путь в кодировке URLtitle(строка): Название выпускаdescription(необязательная строка): Описание проблемыassignee_ids(необязательное число[]): идентификаторы пользователей для назначенияlabels(необязательно string[]): Метки для добавленияmilestone_id(необязательное число): идентификатор этапа
Возвраты: Созданные детали проблемы
create_merge_requestСоздать новый запрос на слияние
Входные данные:
project_id(строка): идентификатор проекта или путь в кодировке URLtitle(строка): заголовок MRdescription(необязательная строка): описание MRsource_branch(string): Ветка, содержащая измененияtarget_branch(string): Ветка для слиянияdraft(необязательно логическое значение): создать как черновик MRallow_collaboration(необязательное логическое значение): Разрешить коммиты от вышестоящих участников
Возвращает: Созданные детали запроса на слияние
fork_repositoryФорк проекта
Входные данные:
project_id(строка): идентификатор проекта или путь в кодировке URLnamespace(необязательная строка): пространство имен для разветвления
Возвращает: Подробности разветвленного проекта
create_branchСоздать новую ветку
Входные данные:
project_id(строка): идентификатор проекта или путь в кодировке URLbranch(строка): Имя новой ветвиref(необязательная строка): Исходная ветвь/коммит для новой ветви
Возвращает: Созданная ссылка на ветку
Related MCP server: GitHub MCP Server Plus
Настраивать
Персональный токен доступа
Создайте токен личного доступа GitLab с соответствующими разрешениями:
Перейдите в Настройки пользователя > Токены доступа в GitLab.
Выберите необходимые области:
apiдля полного доступа к APIread_apiдля доступа только для чтенияread_repositoryиwrite_repositoryдля операций с репозиторием
Создайте токен и сохраните его в надежном месте
Использование с Claude Desktop
Добавьте следующее в ваш claude_desktop_config.json :
Докер
{
"mcpServers": {
"gitlab": {
"command": "docker",
"args": [
"run",
"--rm",
"-i",
"-e",
"GITLAB_PERSONAL_ACCESS_TOKEN",
"-e",
"GITLAB_API_URL",
"mcp/gitlab"
],
"env": {
"GITLAB_PERSONAL_ACCESS_TOKEN": "<YOUR_TOKEN>",
"GITLAB_API_URL": "https://gitlab.com/api/v4" // Optional, for self-hosted instances
}
}
}
}НПХ
{
"mcpServers": {
"gitlab": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-gitlab"
],
"env": {
"GITLAB_PERSONAL_ACCESS_TOKEN": "<YOUR_TOKEN>",
"GITLAB_API_URL": "https://gitlab.com/api/v4" // Optional, for self-hosted instances
}
}
}
}Использование с VS Code
Для быстрой установки воспользуйтесь одной из кнопок установки в один клик ниже...
Для ручной установки добавьте следующий блок JSON в файл настроек пользователя (JSON) в VS Code. Это можно сделать, нажав Ctrl + Shift + P и введя Preferences: Open User Settings (JSON) .
При желании вы можете добавить его в файл .vscode/mcp.json в вашем рабочем пространстве. Это позволит вам поделиться конфигурацией с другими.
Обратите внимание, что ключ
mcpне нужен в файле.vscode/mcp.json.
Докер
{
"mcp": {
"inputs": [
{
"type": "promptString",
"id": "gitlab_token",
"description": "GitLab Personal Access Token",
"password": true
},
{
"type": "promptString",
"id": "gitlab_url",
"description": "GitLab API URL (optional)",
"default": "https://gitlab.com/api/v4"
}
],
"servers": {
"gitlab": {
"command": "docker",
"args": [
"run",
"--rm",
"-i",
"mcp/gitlab"
],
"env": {
"GITLAB_PERSONAL_ACCESS_TOKEN": "${input:gitlab_token}",
"GITLAB_API_URL": "${input:gitlab_url}"
}
}
}
}
}НПХ
{
"mcp": {
"inputs": [
{
"type": "promptString",
"id": "gitlab_token",
"description": "GitLab Personal Access Token",
"password": true
},
{
"type": "promptString",
"id": "gitlab_url",
"description": "GitLab API URL (optional)",
"default": "https://gitlab.com/api/v4"
}
],
"servers": {
"gitlab": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-gitlab"
],
"env": {
"GITLAB_PERSONAL_ACCESS_TOKEN": "${input:gitlab_token}",
"GITLAB_API_URL": "${input:gitlab_url}"
}
}
}
}
}Строить
Сборка Docker:
docker build -t vonwig/gitlab:mcp -f src/gitlab/Dockerfile .Переменные среды
GITLAB_PERSONAL_ACCESS_TOKEN: Ваш персональный токен доступа GitLab (обязательно)GITLAB_API_URL: базовый URL для API GitLab (необязательно, по умолчаниюhttps://gitlab.com/api/v4)
Лицензия
Этот сервер MCP лицензирован по лицензии MIT. Это означает, что вы можете свободно использовать, изменять и распространять программное обеспечение в соответствии с условиями лицензии MIT. Для получения более подробной информации см. файл LICENSE в репозитории проекта.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- -license-qualityBmaintenanceMCP Server for the GitHub API, enabling file operations, repository management, search functionality, and more.Last updated134,34689,088MIT
- AlicenseBqualityDmaintenanceMCP Server for the GitHub API, providing features for file operations, repository management, and advanced search, with automatic branch creation and comprehensive error handling.Last updated18308MIT
- AlicenseCqualityCmaintenanceGitLab MCP Server (with activity tracking and group projects listing features) This server is based on the original GitLab MCP server with Group Projects Listing and Activity Tracking enhancementsLast updated8651261MIT
- AlicenseCqualityDmaintenanceAn MCP server that enables communication with GitLab repositories, allowing interaction with GitLab's API to manage projects, issues, and repositories through natural language.Last updated45115,8751MIT
Related MCP Connectors
A MCP server built for developers enabling Git based project management with project and personal…
An MCP server that let you interact with Cycloid.io Internal Development Portal and Platform
A basic MCP server to operate on the Postman API.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/modelcontextprotocol/gitlab'
If you have feedback or need assistance with the MCP directory API, please join our Discord server