Сервер Atlassian Bitbucket MCP
Сервер Node.js/TypeScript Model Context Protocol (MCP) для Atlassian Bitbucket Cloud. Позволяет системам ИИ (например, LLM, таким как Claude или Cursor AI) безопасно взаимодействовать с вашими репозиториями, запросами на извлечение, рабочими пространствами и кодом в режиме реального времени.
Зачем использовать этот сервер?
Минимальный ввод, максимальный вывод : простые идентификаторы предоставляют исчерпывающую информацию без необходимости дополнительных флагов.
Расширенная визуализация кода : получите подробную информацию об изменениях кода с помощью статистики файлов, представлений различий и интеллектуального контекста.
Безопасная локальная аутентификация : работайте локально с вашими учетными данными, никогда не храня токены на удаленных серверах.
Интуитивно понятные ответы Markdown : хорошо структурированное, единообразное форматирование Markdown для всех выходных данных.
Полная интеграция с Bitbucket : доступ к рабочим областям, репозиториям, запросам на извлечение, комментариям, поиску кода и многому другому.
Related MCP server: Atlassian Bitbucket MCP Server
Что такое МКП?
Model Context Protocol (MCP) — открытый стандарт для безопасного подключения систем ИИ к внешним инструментам и источникам данных. Этот сервер реализует MCP для Bitbucket Cloud, позволяя помощникам ИИ взаимодействовать с вашими данными Bitbucket программным способом.
Предпосылки
Node.js (>=18.x): Загрузить
Учетная запись облака Bitbucket
Настраивать
Шаг 1: Аутентификация
Выберите один из следующих методов аутентификации:
Вариант A: Пароль приложения Bitbucket (рекомендуется)
Сгенерируйте один из Bitbucket App Passwords . Минимальные разрешения:
Рабочие пространства: Читать
Репозитории: Читать
Запросы на извлечение: Читать
Вы также можете задать BITBUCKET_DEFAULT_WORKSPACE , чтобы указать рабочее пространство по умолчанию, если оно не указано явно.
Вариант B: токен API Atlassian
Сгенерируйте его с помощью токенов API Atlassian .
Примечание: настоятельно рекомендуется использовать пароли приложений Bitbucket, поскольку они обеспечивают более детальные разрешения, специфичные для Bitbucket.
Шаг 2: Настройте учетные данные
Вариант A: Файл конфигурации MCP (рекомендуется)
Отредактируйте или создайте ~/.mcp/configs.json :
Использование пароля приложения Bitbucket:
{
"bitbucket": {
"environments": {
"ATLASSIAN_BITBUCKET_USERNAME": "<your_username>",
"ATLASSIAN_BITBUCKET_APP_PASSWORD": "<your_app_password>"
}
}
}Использование токена API Atlassian:
{
"bitbucket": {
"environments": {
"ATLASSIAN_SITE_NAME": "bitbucket",
"ATLASSIAN_USER_EMAIL": "<your_email>",
"ATLASSIAN_API_TOKEN": "<your_api_token>"
}
}
}Вариант B: Переменные среды
export ATLASSIAN_BITBUCKET_USERNAME="<your_username>"
export ATLASSIAN_BITBUCKET_APP_PASSWORD="<your_app_password>"Шаг 3: Установка и запуск
Быстрый старт с npx
npx -y @aashari/mcp-server-atlassian-bitbucket ls-workspacesГлобальная установка
npm install -g @aashari/mcp-server-atlassian-bitbucket
mcp-atlassian-bitbucket ls-workspacesШаг 4: Подключитесь к AI Assistant
Настройте MCP-совместимый клиент (например, Claude, Cursor AI):
{
"mcpServers": {
"bitbucket": {
"command": "npx",
"args": ["-y", "@aashari/mcp-server-atlassian-bitbucket"]
}
}
}Инструменты МКП
Инструменты MCP используют имена snake_case , параметры camelCase и возвращают ответы в формате Markdown.
bb_ls_workspaces : Список доступных рабочих пространств (
query: str opt). Использование: Просмотр доступных рабочих пространств.bb_get_workspace : Получает сведения о рабочей области (
workspaceSlug: str req). Использование: Просмотр информации о рабочей области.bb_ls_repos : Список репозиториев (
workspaceSlug: str opt,projectKey: str opt,query: str opt,role: str opt). Использование: Поиск репозиториев.bb_get_repo : Получает данные репозитория (
workspaceSlug: str req,repoSlug: str req). Использование: Доступ к информации о репозитории.bb_search : Поиск содержимого Bitbucket (
workspaceSlug: str req,query: str req,scope: str opt,language: str opt,extension: str opt). Использование: Поиск кода или PR.bb_ls_prs : Список запросов на извлечение (
workspaceSlug: str req,repoSlug: str req,state: str opt). Использование: Просмотр открытых или объединенных PR.bb_get_pr : Получает сведения о PR (
workspaceSlug: str req,repoSlug: str req,prId: str req). Использование: Просмотр сведений о PR с различиями.bb_ls_pr_comments : Список комментариев PR (
workspaceSlug: str req,repoSlug: str req,prId: str req). Использование: Просмотр обсуждений PR.bb_add_pr_comment : Добавляет комментарий к PR (
workspaceSlug: str req,repoSlug: str req,prId: str req,content: str req,inline: obj opt). Использование: Добавить отзыв к PR.bb_add_pr : Создает PR (
workspaceSlug: str req,repoSlug: str req,title: str req,sourceBranch: str req,targetBranch: str opt). Использование: Создание новых PR.bb_add_branch : Создает ветку (
workspaceSlug: str req,repoSlug: str req,newBranchName: str req,sourceBranchOrCommit: str opt). Использование: Создать ветку функции.bb_clone_repo : Клонирует репозиторий (
workspaceSlug: str req,repoSlug: str req,targetPath: str req). Использование: Клонировать код локально.bb_get_commit_history : Получает историю коммитов (
workspaceSlug: str req,repoSlug: str req,revision: str opt,path: str opt). Использование: Просмотр истории кода.bb_get_file : Получает содержимое файла (
workspaceSlug: str req,repoSlug: str req,filePath: str req,revision: str opt). Использование: Просмотр определенного файла.bb_diff_branches : Показывает разницу между ветвями (
workspaceSlug: str req,repoSlug: str req,sourceBranch: str req,targetBranch: str req). Использование: Сравнение ветвей.bb_diff_commits : Показывает разницу между коммитами (
workspaceSlug: str req,repoSlug: str req,sourceCommit: str req,targetCommit: str req). Использование: Сравнение коммитов.bb_list_branches : Список ветвей (
workspaceSlug: str req,repoSlug: str req,query: str opt,sort: str opt). Использование: Просмотр всех ветвей.
bb_ls_workspaces
Список всех рабочих пространств:
{}Поиск рабочих пространств:
{ "query": "devteam" }bb_get_workspace
Получить сведения о рабочем пространстве:
{ "workspaceSlug": "acme-corp" }bb_ls_repos
Список репозиториев в рабочей области:
{ "workspaceSlug": "acme-corp", "projectKey": "PROJ" }Список репозиториев с использованием рабочего пространства по умолчанию:
{ "projectKey": "PROJ" }bb_get_repo
Получить данные репозитория:
{ "workspaceSlug": "acme-corp", "repoSlug": "backend-api" }bb_search
Поисковый код:
{
"workspaceSlug": "acme-corp",
"query": "Logger",
"scope": "code",
"language": "typescript"
}bb_ls_prs
Список открытых PR:
{ "workspaceSlug": "acme-corp", "repoSlug": "frontend-app", "state": "OPEN" }bb_get_pr
Получить PR-подробности:
{ "workspaceSlug": "acme-corp", "repoSlug": "frontend-app", "prId": "42" }bb_ls_pr_comments
Список PR-комментариев:
{ "workspaceSlug": "acme-corp", "repoSlug": "frontend-app", "prId": "42" }bb_add_pr_comment
Добавить общий комментарий:
{
"workspaceSlug": "acme-corp",
"repoSlug": "frontend-app",
"prId": "42",
"content": "Looks good."
}Добавить встроенный комментарий:
{
"workspaceSlug": "acme-corp",
"repoSlug": "frontend-app",
"prId": "42",
"content": "Consider refactoring.",
"inline": { "path": "src/utils.js", "line": 42 }
}bb_add_pr
Создать запрос на извлечение:
{
"workspaceSlug": "acme-corp",
"repoSlug": "frontend-app",
"title": "Add login screen",
"sourceBranch": "feature/login"
}bb_add_branch
Создать новую ветку:
{
"workspaceSlug": "acme-corp",
"repoSlug": "frontend-app",
"newBranchName": "feature/new-feature",
"sourceBranchOrCommit": "main"
}bb_clone_repo
Клонировать репозиторий:
{
"workspaceSlug": "acme-corp",
"repoSlug": "backend-api",
"targetPath": "/Users/me/projects"
}bb_get_commit_history
Просмотреть историю коммитов:
{
"workspaceSlug": "acme-corp",
"repoSlug": "backend-api"
}Отфильтрованная история коммитов:
{
"workspaceSlug": "acme-corp",
"repoSlug": "backend-api",
"revision": "develop",
"path": "src/main/java/com/acme/service/UserService.java"
}bb_get_file
Получить содержимое файла:
{
"workspaceSlug": "acme-corp",
"repoSlug": "backend-api",
"filePath": "src/main/java/com/acme/service/Application.java",
"revision": "main"
}bb_diff_branches
Сравнить ветки:
{
"workspaceSlug": "acme-corp",
"repoSlug": "web-app",
"sourceBranch": "develop",
"targetBranch": "main"
}bb_diff_commits
Сравнить коммиты:
{
"workspaceSlug": "acme-corp",
"repoSlug": "web-app",
"sourceCommit": "a1b2c3d",
"targetCommit": "e4f5g6h"
}bb_list_branches
Список всех филиалов:
{
"workspaceSlug": "acme-corp",
"repoSlug": "frontend-app"
}Отфильтрованные ветки:
{
"workspaceSlug": "acme-corp",
"repoSlug": "frontend-app",
"query": "feature/",
"sort": "name"
}Команды CLI
Команды CLI используют kebab-case . Запустите --help для получения подробной информации (например, mcp-atlassian-bitbucket ls-workspaces --help ).
ls-workspaces : Выводит список рабочих пространств (
--query). Пример:mcp-atlassian-bitbucket ls-workspaces.get-workspace : Получает сведения о рабочей области (
--workspace-slug). Пример:mcp-atlassian-bitbucket get-workspace --workspace-slug acme-corp.ls-repos : Выводит список репозиториев (
--workspace-slug,--project-key,--query). Пример:mcp-atlassian-bitbucket ls-repos --workspace-slug acme-corp.get-repo : Получает сведения о репозитории (
--workspace-slug,--repo-slug). Пример:mcp-atlassian-bitbucket get-repo --workspace-slug acme-corp --repo-slug backend-api.search : Поиск кода (
--workspace-slug,--query,--scope,--language). Пример:mcp-atlassian-bitbucket search --workspace-slug acme-corp --query "auth".ls-prs : выводит список PR (
--workspace-slug,--repo-slug,--state). Пример:mcp-atlassian-bitbucket ls-prs --workspace-slug acme-corp --repo-slug backend-api.get-pr : Получает сведения о PR (
--workspace-slug,--repo-slug,--pr-id). Пример:mcp-atlassian-bitbucket get-pr --workspace-slug acme-corp --repo-slug backend-api --pr-id 42.ls-pr-comments : выводит список комментариев PR (
--workspace-slug,--repo-slug,--pr-id). Пример:mcp-atlassian-bitbucket ls-pr-comments --workspace-slug acme-corp --repo-slug backend-api --pr-id 42.add-pr-comment : Добавляет комментарий PR (
--workspace-slug,--repo-slug,--pr-id,--content). Пример:mcp-atlassian-bitbucket add-pr-comment --workspace-slug acme-corp --repo-slug backend-api --pr-id 42 --content "Looks good".add-pr : Создает PR (
--workspace-slug,--repo-slug,--title,--source-branch). Пример:mcp-atlassian-bitbucket add-pr --workspace-slug acme-corp --repo-slug backend-api --title "New feature" --source-branch feature/login.get-file : Получает содержимое файла (
--workspace-slug,--repo-slug,--file-path). Пример:mcp-atlassian-bitbucket get-file --workspace-slug acme-corp --repo-slug backend-api --file-path src/main.js.add-branch : Создает ветку (
--workspace-slug,--repo-slug,--new-branch-name). Пример:mcp-atlassian-bitbucket add-branch --workspace-slug acme-corp --repo-slug backend-api --new-branch-name feature/new.
Список и просмотр рабочих пространств/репозиториев
# List all workspaces
mcp-atlassian-bitbucket ls-workspaces
# Get details of a specific workspace
mcp-atlassian-bitbucket get-workspace --workspace-slug acme-corp
# List repositories in a workspace
mcp-atlassian-bitbucket ls-repos --workspace-slug acme-corp --project-key PROJ
# Get details of a specific repository
mcp-atlassian-bitbucket get-repo --workspace-slug acme-corp --repo-slug backend-apiРабота с запросами на извлечение
# List open pull requests in a repository
mcp-atlassian-bitbucket ls-prs --workspace-slug acme-corp --repo-slug frontend-app --state OPEN
# Get details of a specific pull request with code changes
mcp-atlassian-bitbucket get-pr --workspace-slug acme-corp --repo-slug frontend-app --pr-id 42
# List comments on a pull request
mcp-atlassian-bitbucket ls-pr-comments --workspace-slug acme-corp --repo-slug frontend-app --pr-id 42
# Add a comment to a pull request
mcp-atlassian-bitbucket add-pr-comment --workspace-slug acme-corp --repo-slug frontend-app --pr-id 42 --content "Looks good to merge."
# Create a new pull request
mcp-atlassian-bitbucket add-pr --workspace-slug acme-corp --repo-slug frontend-app --title "Add login screen" --source-branch feature/loginКод и коммиты
# Search for code
mcp-atlassian-bitbucket search --workspace-slug acme-corp --query "Logger" --scope code --language typescript
# View commit history
mcp-atlassian-bitbucket get-commit-history --workspace-slug acme-corp --repo-slug backend-api --revision develop
# Get file content
mcp-atlassian-bitbucket get-file --workspace-slug acme-corp --repo-slug backend-api --file-path "src/Application.java" --revision main
# Compare branches
mcp-atlassian-bitbucket diff-branches --workspace-slug acme-corp --repo-slug web-app --source-branch develop --target-branch main
# Compare commits
mcp-atlassian-bitbucket diff-commits --workspace-slug acme-corp --repo-slug web-app --source-commit a1b2c3d --target-commit e4f5g6hУправление филиалом
# List branches
mcp-atlassian-bitbucket list-branches --workspace-slug acme-corp --repo-slug frontend-app --query "feature/" --sort name
# Create a new branch
mcp-atlassian-bitbucket add-branch --workspace-slug acme-corp --repo-slug frontend-app --new-branch-name feature/new-feature --source-branch-or-commit main
# Clone a repository
mcp-atlassian-bitbucket clone --workspace-slug acme-corp --repo-slug backend-api --target-path ./cloned-projectsФормат ответа
Все ответы отформатированы в формате Markdown, включая:
Заголовок : Выполненная операция или просмотренный объект.
Контекст : рабочая область, репозиторий, запрос на извлечение или информация о ветке.
Контент : основные данные, такие как содержимое файла, сведения о PR или результаты поиска.
Метаданные : временные метки, авторы и статистика.
Различия : изменения кода с подсветкой синтаксиса для различий между ветками/коммитами.
Подробности репозитория
# Repository: backend-api
**Workspace:** acme-corp
**Full Name:** acme-corp/backend-api
**Language:** Java
**Created:** 2024-01-15 by John Smith
**Updated:** 2025-05-10 (2 days ago)
## Overview
Spring Boot backend API for the ACME product suite.
## Statistics
- **Default Branch:** main
- **Size:** 24.5 MB
- **Commits:** 358
- **Open PRs:** 4
- **Forks:** 3
## Recent Activity
- PR #42: "Add OAuth2 support" by Jane Doe (Open)
- PR #41: "Fix pagination bug" by Alex Kim (Merged)
- PR #40: "Update dependencies" by John Smith (Merged)
*Repository URL: https://bitbucket.org/acme-corp/backend-api*Обзор запроса на извлечение
# Pull Request #42: Add OAuth2 support
**Repository:** acme-corp/backend-api
**Author:** Jane Doe
**State:** OPEN
**Created:** 2025-05-15 (4 days ago)
**Updated:** 2025-05-18 (yesterday)
## Description
Implements OAuth2 authentication flow with support for:
- Authorization code grant
- Refresh tokens
- Token caching
## Changes
- **Files changed:** 7
- **Additions:** 245 lines
- **Deletions:** 32 lines
## Diff for src/auth/OAuthService.java
@@ -10,6 +10,25 @@ public class OAuthService {
private final TokenRepository tokenRepository;
private final HttpClient httpClient;
+ @Autowired
+ public OAuthService(
+ TokenRepository tokenRepository,
+ HttpClient httpClient) {
+ this.tokenRepository = tokenRepository;
+ this.httpClient = httpClient;
+ }
+
+ public TokenResponse refreshToken(String refreshToken) {
+ // Validate refresh token
+ if (StringUtils.isEmpty(refreshToken)) {
+ throw new InvalidTokenException("Refresh token cannot be empty");
+ }
+
+ // Call OAuth server for new access token
+ return httpClient.post("/oauth/token")
+ .body(Map.of("grant_type", "refresh_token", "refresh_token", refreshToken))
+ .execute()
+ .as(TokenResponse.class);
+ }
## Comments (3)
1. **John Smith** (2 days ago):
> Please add unit tests for the refresh token flow
2. **Jane Doe** (yesterday):
> Added tests in the latest commit
3. **Approval by:** Alex Kim (yesterday)
*Pull Request URL: https://bitbucket.org/acme-corp/backend-api/pull-requests/42*Разработка
# Clone repository
git clone https://github.com/aashari/mcp-server-atlassian-bitbucket.git
cd mcp-server-atlassian-bitbucket
# Install dependencies
npm install
# Run in development mode
npm run dev:server
# Run tests
npm testВнося вклад
Вклады приветствуются! Пожалуйста:
Создайте форк репозитория.
Создайте ветку функций (
git checkout -b feature/xyz).Зафиксируйте изменения (
git commit -m "Add xyz feature").Отправьте изменения в ветку (
git push origin feature/xyz).Откройте запрос на извлечение.
Подробности смотрите на сайте CONTRIBUTING.md .
Лицензия
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Appeared in Searches
- A server for finding information about Bitbucket, the Git repository hosting service
- Guide to connecting to Bitbucket Data Center
- Bitbucket pull request reviewer information
- Bitbucket integration for CursorAI to manage repositories and pull requests
- Bitbucket integration for repository and pull request management
Latest Blog Posts
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/aashari/mcp-server-atlassian-bitbucket'
If you have feedback or need assistance with the MCP directory API, please join our Discord server
