VOOZH about

URL: https://glama.ai/mcp/servers/aashari/mcp-server-atlassian-bitbucket?locale=ru-RU

⇱ Сервер Atlassian Bitbucket MCP by aashari | Glama


Сервер 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 программным способом.

Предпосылки

Настраивать

Шаг 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

Внося вклад

Вклады приветствуются! Пожалуйста:

  1. Создайте форк репозитория.

  2. Создайте ветку функций ( git checkout -b feature/xyz ).

  3. Зафиксируйте изменения ( git commit -m "Add xyz feature" ).

  4. Отправьте изменения в ветку ( git push origin feature/xyz ).

  5. Откройте запрос на извлечение.

Подробности смотрите на сайте CONTRIBUTING.md .

Лицензия

Лицензия ISC

A
license - permissive license
A
quality
D
maintenance

Maintenance

Maintainers
Response time
2wRelease cycle
21Releases (12mo)
Commit activity
Issues opened vs closed

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

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