Bitbucket MCP
Сервер Model Context Protocol (MCP) для интеграции с Bitbucket Cloud и API сервера. Этот сервер MCP позволяет помощникам ИИ, таким как Cursor, взаимодействовать с вашими репозиториями Bitbucket, запросами на извлечение и другими ресурсами.
Безопасность прежде всего
Это безопасный и ответственный пакет — операции DELETE не используются, поэтому нет риска потери данных. Каждый запрос на извлечение анализируется с помощью CodeQL, чтобы гарантировать безопасность кода.
Related MCP server: GitHub MCP Server
Обзор
Ознакомьтесь с официальным пакетом npm Этот сервер реализует стандарт Model Context Protocol для предоставления помощникам ИИ доступа к данным и операциям Bitbucket. Он включает в себя инструменты для:
Список и извлечение репозиториев
Получение данных репозитория
Получение запросов на извлечение
И многое другое...
Установка
Использование NPX (рекомендуется)
Самый простой способ использовать этот сервер MCP — через NPX, что позволяет запускать его без глобальной установки:
Ручная установка
Кроме того, вы можете установить его глобально или как часть своего проекта:
Затем запустите его с помощью:
Конфигурация
Переменные среды
Настройте сервер, используя следующие переменные среды:
Переменная | Описание | Необходимый |
| Базовый URL Bitbucket (например, « https://bitbucket.org/your-workspace ») | Да |
| Ваше имя пользователя Bitbucket | Да* |
| Ваш пароль к приложению Bitbucket | Да* |
| Ваш токен доступа Bitbucket (альтернатива имени пользователя/паролю) | Нет |
| Рабочее пространство по умолчанию, используемое, если не указано иное | Нет |
* Необходимо указать либо BITBUCKET_TOKEN , либо BITBUCKET_USERNAME и BITBUCKET_PASSWORD .
Создание пароля приложения Bitbucket
Войдите в свою учетную запись Bitbucket
Перейдите в раздел «Персональные настройки» > «Пароли приложений».
Создайте новый пароль приложения со следующими разрешениями:
Репозитории: Читать
Запросы на извлечение: чтение, запись
Скопируйте сгенерированный пароль и используйте его как переменную среды
BITBUCKET_PASSWORD
Интеграция с курсором
Чтобы интегрировать этот MCP-сервер с Cursor:
Открытый курсор
Перейдите в Настройки > Расширения.
Нажмите «Протокол контекста модели».
Добавьте новую конфигурацию MCP:
Сохранить конфигурацию
Используйте команду «/bitbucket» в Cursor для доступа к репозиториям Bitbucket и запросам на извлечение.
Использование локальной сборки с курсором
Если вы ведете локальную разработку и хотите протестировать свои изменения:
Доступные инструменты
Этот сервер MCP предоставляет инструменты для взаимодействия с репозиториями Bitbucket и pull-запросами. Ниже приведен полный список доступных операций:
Операции репозитория
listRepositories
Перечисляет репозитории в рабочей области.
Параметры:
workspace(необязательно): имя рабочего пространства Bitbucketlimit(необязательно): максимальное количество возвращаемых репозиториев
getRepository
Получает сведения о конкретном репозитории.
Параметры:
workspace: Имя рабочего пространства Bitbucketrepo_slug: Слаг репозитория
Операции по запросу на извлечение
getPullRequests
Получает запросы на извлечение изменений для репозитория.
Параметры:
workspace: Имя рабочего пространства Bitbucketrepo_slug: Слаг репозиторияstate(необязательно): состояние запроса на извлечение (OPEN,MERGED,DECLINED,SUPERSEDED)limit(необязательно): максимальное количество возвращаемых запросов на извлечение
createPullRequest
Создает новый запрос на извлечение.
Параметры:
workspace: Имя рабочего пространства Bitbucketrepo_slug: Слаг репозиторияtitle: заголовок запроса на извлечениеdescription: Описание запроса на извлечениеsourceBranch: Имя исходной веткиtargetBranch: Имя целевой веткиreviewers(необязательно): список имен пользователей рецензентов
getPullRequest
Получает сведения о конкретном запросе на извлечение.
Параметры:
workspace: Имя рабочего пространства Bitbucketrepo_slug: Слаг репозиторияpull_request_id: идентификатор запроса на извлечение
updatePullRequest
Обновляет запрос на извлечение.
Параметры:
workspace: Имя рабочего пространства Bitbucketrepo_slug: Слаг репозиторияpull_request_id: идентификатор запроса на извлечениеРазличные необязательные параметры обновления (название, описание и т. д.)
getPullRequestActivity
Получает журнал активности для запроса на извлечение.
Параметры:
workspace: Имя рабочего пространства Bitbucketrepo_slug: Слаг репозиторияpull_request_id: идентификатор запроса на извлечение
approvePullRequest
Одобряет запрос на извлечение.
Параметры:
workspace: Имя рабочего пространства Bitbucketrepo_slug: Слаг репозиторияpull_request_id: идентификатор запроса на извлечение
unapprovePullRequest
Удаляет одобрение из запроса на извлечение.
Параметры:
workspace: Имя рабочего пространства Bitbucketrepo_slug: Слаг репозиторияpull_request_id: идентификатор запроса на извлечение
declinePullRequest
Отклоняет запрос на извлечение.
Параметры:
workspace: Имя рабочего пространства Bitbucketrepo_slug: Слаг репозиторияpull_request_id: идентификатор запроса на извлечениеmessage(необязательно): Причина отклонения
mergePullRequest
Объединяет запрос на извлечение.
Параметры:
workspace: Имя рабочего пространства Bitbucketrepo_slug: Слаг репозиторияpull_request_id: идентификатор запроса на извлечениеmessage(необязательно): сообщение о слиянииstrategy(необязательно): стратегия слияния (merge-commit,squash,fast-forward)
requestChanges
Запрашивает изменения по запросу на извлечение.
Параметры:
workspace: Имя рабочего пространства Bitbucketrepo_slug: Слаг репозиторияpull_request_id: идентификатор запроса на извлечение
removeChangeRequest
Удаляет запрос на изменение из запроса на извлечение.
Параметры:
workspace: Имя рабочего пространства Bitbucketrepo_slug: Слаг репозиторияpull_request_id: идентификатор запроса на извлечение
Операции по комментированию запросов на извлечение
getPullRequestComments
Список комментариев к запросу на извлечение.
Параметры:
workspace: Имя рабочего пространства Bitbucketrepo_slug: Слаг репозиторияpull_request_id: идентификатор запроса на извлечение
createPullRequestComment
Создает комментарий к запросу на извлечение.
Параметры:
workspace: Имя рабочего пространства Bitbucketrepo_slug: Слаг репозиторияpull_request_id: идентификатор запроса на извлечениеcontent: Содержание комментарияinline(необязательно): Встроенная информация о комментарии
getPullRequestComment
Получает конкретный комментарий к запросу на извлечение.
Параметры:
workspace: Имя рабочего пространства Bitbucketrepo_slug: Слаг репозиторияpull_request_id: идентификатор запроса на извлечениеcomment_id: идентификатор комментария
updatePullRequestComment
Обновляет комментарий к запросу на извлечение.
Параметры:
workspace: Имя рабочего пространства Bitbucketrepo_slug: Слаг репозиторияpull_request_id: идентификатор запроса на извлечениеcomment_id: идентификатор комментарияcontent: Обновленное содержание комментария
deletePullRequestComment
Удаляет комментарий к запросу на извлечение.
Параметры:
workspace: Имя рабочего пространства Bitbucketrepo_slug: Слаг репозиторияpull_request_id: идентификатор запроса на извлечениеcomment_id: идентификатор комментария
resolveComment
Закрывает ветку комментариев по запросу на извлечение.
Параметры:
workspace: Имя рабочего пространства Bitbucketrepo_slug: Слаг репозиторияpull_request_id: идентификатор запроса на извлечениеcomment_id: идентификатор комментария
reopenComment
Повторно открывает решенную ветку комментариев по запросу на извлечение.
Параметры:
workspace: Имя рабочего пространства Bitbucketrepo_slug: Слаг репозиторияpull_request_id: идентификатор запроса на извлечениеcomment_id: идентификатор комментария
Операции по изменению запроса на извлечение
getPullRequestDiff
Получает разницу для запроса на извлечение.
Параметры:
workspace: Имя рабочего пространства Bitbucketrepo_slug: Слаг репозиторияpull_request_id: идентификатор запроса на извлечение
getPullRequestDiffStat
Получает статистику различий для запроса на извлечение.
Параметры:
workspace: Имя рабочего пространства Bitbucketrepo_slug: Слаг репозиторияpull_request_id: идентификатор запроса на извлечение
getPullRequestPatch
Получает патч для запроса на извлечение.
Параметры:
workspace: Имя рабочего пространства Bitbucketrepo_slug: Слаг репозиторияpull_request_id: идентификатор запроса на извлечение
Операции по выполнению задач запроса на извлечение
getPullRequestTasks
Перечисляет задачи по запросу на извлечение.
Параметры:
workspace: Имя рабочего пространства Bitbucketrepo_slug: Слаг репозиторияpull_request_id: идентификатор запроса на извлечение
createPullRequestTask
Создает задачу по запросу на извлечение.
Параметры:
workspace: Имя рабочего пространства Bitbucketrepo_slug: Слаг репозиторияpull_request_id: идентификатор запроса на извлечениеcontent: Содержание задачиcomment(необязательно): идентификатор комментария для связи с задачейpending(необязательно): находится ли задача в ожидании
getPullRequestTask
Получает конкретную задачу по запросу на извлечение.
Параметры:
workspace: Имя рабочего пространства Bitbucketrepo_slug: Слаг репозиторияpull_request_id: идентификатор запроса на извлечениеtask_id: идентификатор задачи
updatePullRequestTask
Обновляет задачу по запросу на извлечение.
Параметры:
workspace: Имя рабочего пространства Bitbucketrepo_slug: Слаг репозиторияpull_request_id: идентификатор запроса на извлечениеtask_id: идентификатор задачиcontent(необязательно): обновленное содержимое задачиstate(необязательно): обновленное состояние задачи
deletePullRequestTask
Удаляет задачу по запросу на извлечение.
Параметры:
workspace: Имя рабочего пространства Bitbucketrepo_slug: Слаг репозиторияpull_request_id: идентификатор запроса на извлечениеtask_id: идентификатор задачи
Другие операции по запросу на извлечение
getPullRequestCommits
Список коммитов по запросу на извлечение.
Параметры:
workspace: Имя рабочего пространства Bitbucketrepo_slug: Слаг репозиторияpull_request_id: идентификатор запроса на извлечение
getPullRequestStatuses
Список статусов коммитов для запроса на извлечение.
Параметры:
workspace: Имя рабочего пространства Bitbucketrepo_slug: Слаг репозиторияpull_request_id: идентификатор запроса на извлечение
Разработка
Предпосылки
Node.js 18 или выше
нпм или пряжа
Настраивать
Лицензия
Данный проект лицензирован по лицензии MIT — подробности см. в файле LICENSE .