Atlassian Bitbucket MCP Server

by aashari
2,644
18
  • Apple
  • Linux

Integrations

  • Provides authentication and integration with Atlassian services, specifically focused on Bitbucket functionality using Atlassian API tokens.

  • Allows AI assistants to interact with Bitbucket repositories, including listing repositories, accessing pull requests, viewing commit information, and exploring workspaces.

Atlassian Bitbucket MCP Server

Dieses Projekt stellt einen Model Context Protocol (MCP)-Server bereit, der als Brücke zwischen KI-Assistenten (wie Anthropics Claude, Cursor AI oder anderen MCP-kompatiblen Clients) und Ihrer Atlassian Bitbucket-Instanz fungiert. Er ermöglicht der KI den sicheren Zugriff auf Ihre Repositories, Pull Requests und Arbeitsbereiche und die Interaktion mit ihnen in Echtzeit.


Überblick

Was ist MCP?

Model Context Protocol (MCP) ist ein offener Standard, der es KI-Systemen ermöglicht, sich sicher und kontextbezogen mit externen Tools und Datenquellen zu verbinden.

Dieser Server implementiert MCP speziell für Bitbucket Cloud und verbindet Ihre Bitbucket-Daten mit KI-Assistenten.

Warum diesen Server verwenden?

  • Philosophie des minimalen Inputs, des maximalen Outputs : Einfache Bezeichner wie workspaceSlug und repoSlug genügen. Jedes Tool liefert umfassende Details, ohne dass zusätzliche Flags erforderlich sind.
  • Umfangreiche Code-Visualisierung : Erhalten Sie detaillierte Einblicke in Repositories und Codeänderungen mit Dateistatistiken, Diff-Ansichten und intelligentem Kontext rund um Codeänderungen.
  • Sichere lokale Authentifizierung : Anmeldeinformationen werden niemals auf dem Server gespeichert. Der Server läuft lokal, sodass Ihre Token Ihren Computer nie verlassen und Sie nur die Berechtigungen anfordern können, die Sie benötigen.
  • Intuitive Markdown-Antworten : Alle Antworten verwenden gut strukturiertes Markdown zur besseren Lesbarkeit mit konsistenter Formatierung und Navigationslinks.
  • Vollständige Bitbucket-Integration : Greifen Sie über eine einheitliche Schnittstelle auf Arbeitsbereiche, Repositories, Pull Requests, Kommentare, Codesuche und mehr zu.

Erste Schritte

Voraussetzungen


Schritt 1: Authentifizieren

Wählen Sie eine der folgenden Authentifizierungsmethoden:

Option A: Bitbucket-App-Passwort (empfohlen)

Generieren Sie eines aus Bitbucket App Passwords . Mindestberechtigungen:

  • Arbeitsbereiche: Lesen
  • Repositories: Lesen
  • Pull Requests: Lesen

Option B: Atlassian API Token

Generieren Sie eines aus Atlassian API-Tokens .

Hinweis: Obwohl der Server aufgrund des gemeinsamen Atlassian-Kontosystems möglicherweise mit einem Atlassian-API-Token (über die Standardvariablen ATLASSIAN_* ) funktioniert, werden Bitbucket-App-Passwörter für diese Integration dringend empfohlen und offiziell unterstützt . App-Passwörter ermöglichen detailliertere, Bitbucket-spezifische Berechtigungsbereiche und erhöhen so die Sicherheit im Vergleich zu API-Token mit potenziell breiterem Umfang.


Schritt 2: Anmeldeinformationen konfigurieren

Methode A: MCP-Konfigurationsdatei (empfohlen)

Erstellen oder bearbeiten Sie ~/.mcp/configs.json :

Verwenden des Bitbucket-App-Passworts:

{ "bitbucket": { "environments": { "ATLASSIAN_BITBUCKET_USERNAME": "<your_username>", "ATLASSIAN_BITBUCKET_APP_PASSWORD": "<your_app_password>" } } }

Verwenden des Atlassian API-Tokens:

{ "bitbucket": { "environments": { "ATLASSIAN_SITE_NAME": "bitbucket", "ATLASSIAN_USER_EMAIL": "<your_email>", "ATLASSIAN_API_TOKEN": "<your_api_token>" } } }

Hinweis: Aus Gründen der Abwärtskompatibilität erkennt der Server Konfigurationen auch unter dem vollständigen Paketnamen ( @aashari/mcp-server-atlassian-bitbucket ), dem Paketnamen ohne Gültigkeitsbereich ( mcp-server-atlassian-bitbucket ) oder im atlassian-bitbucket -Format, wenn der empfohlene bitbucket -Schlüssel nicht gefunden wird. Für neue Konfigurationen wird jedoch die Verwendung des kurzen bitbucket -Schlüssels empfohlen.

Methode B: Umgebungsvariablen

Übergeben Sie die Anmeldeinformationen direkt beim Ausführen des Servers:

ATLASSIAN_BITBUCKET_USERNAME="<your_username>" \ ATLASSIAN_BITBUCKET_APP_PASSWORD="<your_app_password>" \ npx -y @aashari/mcp-server-atlassian-bitbucket

Schritt 3: Verbinden Sie Ihren KI-Assistenten

Konfigurieren Sie Ihren MCP-kompatiblen Client, um diesen Server zu starten.

Claude / Cursor-Konfiguration:

{ "mcpServers": { "bitbucket": { "command": "npx", "args": ["-y", "@aashari/mcp-server-atlassian-bitbucket"] } } }

Diese Konfiguration startet den Server automatisch zur Laufzeit.


Werkzeuge

Dieser Abschnitt behandelt die verfügbaren MCP-Tools bei Verwendung dieses Servers mit einem KI-Assistenten. Beachten Sie, dass MCP-Tools snake_case für Toolnamen und camelCase für Parameter verwenden.

bb_ls_workspaces

Listet die verfügbaren Bitbucket-Arbeitsbereiche auf.

{}

oder:

{ "query": "devteam" }

„Zeigen Sie mir alle meine Bitbucket-Arbeitsbereiche.“


bb_get_workspace

Erhalten Sie alle Details zu einem bestimmten Arbeitsbereich.

{ "workspaceSlug": "acme-corp" }

„Erzählen Sie mir mehr über den Arbeitsbereich ‚acme-corp‘.“


bb_ls_repos

Listet Repositories in einem Arbeitsbereich auf. Filtert nach role , projectKey und query (Name/Beschreibung). Unterstützt Sortierung und Paginierung.

{ "workspaceSlug": "acme-corp", "projectKey": "PROJ" }

"Listen Sie Repositories in 'acme-corp' für Projekt PROJ auf."


bb_get_repo

Erhalten Sie Details zu einem bestimmten Repository, einschließlich Eigentümer, Name des Hauptzweigs, Anzahl der Kommentare/Aufgaben und aktuelle PRs.

{ "workspaceSlug": "acme-corp", "repoSlug": "backend-api" }

„Zeigen Sie mir das Repository ‚backend-api‘ in ‚acme-corp‘.“


Durchsuchen Sie Bitbucket-Inhalte. Der Gültigkeitsbereich umfasst scope wie „Repositorys“, „Pullrequests“, „Commits“, „Code“, „Alles“. Der Code-Bereich unterstützt language und extension . Der Bereich „Alles“ enthält einen Header, der angibt, welcher Bereich Ergebnisse zurückgegeben hat.

Code (gefiltert):

{ "workspaceSlug": "acme-corp", "query": "Logger", "scope": "code", "language": "typescript" }

„Suchen Sie in TypeScript-Dateien im Arbeitsbereich ‚acme-corp‘ nach ‚Logger‘.“


bb_ls_prs

Listen Sie Pull Requests in einem Repository auf.

{ "workspaceSlug": "acme-corp", "repoSlug": "frontend-app", "state": "OPEN" }

"Offene PRs in der 'Frontend-App' anzeigen."


bb_get_pr

Erhalten Sie alle Details einer Pull-Anfrage, einschließlich Code-Diffs, Dateiänderungen und Kommentar-/Aufgabenanzahl.

{ "workspaceSlug": "acme-corp", "repoSlug": "frontend-app", "prId": "42" }

„Holen Sie sich PR #42 von ‚Frontend-App‘ mit allen Codeänderungen.“


bb_ls_pr_comments

Listen Sie Kommentare zu einem bestimmten Pull Request auf. Inline-Kommentare enthalten Codeausschnitte.

{ "workspaceSlug": "acme-corp", "repoSlug": "frontend-app", "prId": "42" }

„Zeigen Sie mir alle Kommentare zu PR Nr. 42, einschließlich Codekontext für Inline-Kommentare.“


bb_create_pr_comment

Fügen Sie einem Pull Request einen Kommentar hinzu.

Allgemein:

{ "workspaceSlug": "acme-corp", "repoSlug": "frontend-app", "prId": "42", "content": "Looks good." }

Im Einklang:

{ "workspaceSlug": "acme-corp", "repoSlug": "frontend-app", "prId": "42", "content": "Consider refactoring.", "inline": { "path": "src/utils.js", "line": 42 } }

„Fügen Sie einen Kommentar zu PR Nr. 42 in Zeile 42 hinzu.“


bb_create_pr

Erstellen Sie eine neue Pull-Anfrage.

{ "workspaceSlug": "acme-corp", "repoSlug": "frontend-app", "title": "Add login screen", "sourceBranch": "feature/login" }

„Erstellen Sie einen PR von ‚feature/login‘ zu ‚main‘.“


bb_create_branch

Erstellen Sie einen neuen Zweig aus einem Quellzweig oder Commit.

{ "workspaceSlug": "acme-corp", "repoSlug": "frontend-app", "newBranchName": "feature/new-feature", "sourceBranchOrCommit": "main" }

„Erstellen Sie den Zweig ‚feature/new-feature‘ von ‚main‘ in ‚frontend-app‘.“


bb_clone_repo

Klont ein Bitbucket-Repository, das durch workspaceSlug und repoSlug identifiziert wird. Das Argument targetPath gibt das übergeordnete Verzeichnis an, in das das Repository geklont wird.

WICHTIG: targetPath MUSS ein absoluter Pfad sein (z. B. /Users/me/projects ). Das Repository wird in ein Unterverzeichnis geklont, das nach dem Repository-Slug unter diesem Verzeichnis benannt ist.

{ "workspaceSlug": "acme-corp", "repoSlug": "backend-api", "targetPath": "/Users/me/projects" }

„Klonen Sie das Repository ‚backend-api‘ in ‚/Users/me/projects‘.“


bb_get_commit_history

Rufen Sie den Commit-Verlauf für ein Repository ab.

{ "workspaceSlug": "acme-corp", "repoSlug": "backend-api" }

oder (Filtern nach Zweig und Pfad):

{ "workspaceSlug": "acme-corp", "repoSlug": "backend-api", "revision": "develop", "path": "src/main/java/com/acme/service/UserService.java" }

„Zeigen Sie mir den Commit-Verlauf für das Repository ‚backend-api‘.“ „Holen Sie sich Commits im Entwicklungszweig für UserService.java.“


bb_get_file

Ruft den Inhalt einer Datei aus einem Bitbucket-Repository ab.

Parameter:

  • workspaceSlug (Zeichenfolge, erforderlich): Workspace-Slug, der das Repository enthält.
  • repoSlug (Zeichenfolge, erforderlich): Repository-Slug, der die Datei enthält.
  • filePath (Zeichenfolge, erforderlich): Pfad zur Datei innerhalb des Repository (z. B. „src/app.js“, „README.md“).
  • revision (Zeichenfolge, optional): Name des Branchs, Tag oder Commit-Hash, aus dem die Datei abgerufen werden soll. Falls nicht angegeben, wird der Standard-Branch des Repositorys verwendet.

Beispiel:

{ "workspaceSlug": "acme-corp", "repoSlug": "backend-api", "filePath": "src/main/java/com/acme/service/Application.java", "revision": "main" }

„Holen Sie sich den Inhalt von Application.java aus dem Hauptzweig der Backend-API in Acme-Corp.“ „Zeigen Sie mir die pom.xml aus dem neuesten Commit im Entwicklungszweig im Repository ‚coda-payments/api-gateway‘.“

Erfordert Bitbucket-Anmeldeinformationen.


Befehlszeilenschnittstelle (CLI)

Die CLI verwendet Kebab-Case für Befehle (z. B. ls-workspaces ) und Optionen (z. B. --workspace-slug ).

Schnelle Verwendung mit npx

npx -y @aashari/mcp-server-atlassian-bitbucket ls-workspaces npx -y @aashari/mcp-server-atlassian-bitbucket get-repo \ --workspace-slug acme-corp \ --repo-slug backend-api npx -y @aashari/mcp-server-atlassian-bitbucket ls-prs \ --workspace-slug acme-corp \ --repo-slug frontend-app \ --state OPEN npx -y @aashari/mcp-server-atlassian-bitbucket create-pr-comment \ --workspace-slug acme-corp \ --repo-slug frontend-app \ --pr-id 42 \ --content "Looks good to merge." npx -y @aashari/mcp-server-atlassian-bitbucket get-commit-history \ --workspace-slug acme-corp \ --repo-slug backend-api \ --revision develop npx -y @aashari/mcp-server-atlassian-bitbucket create-branch \ --workspace-slug acme-corp \ --repo-slug frontend-app \ --new-branch-name feature/new-stuff \ --source-branch-or-commit main npx -y @aashari/mcp-server-atlassian-bitbucket clone \ --workspace-slug acme-corp \ --repo-slug backend-api \ --target-path ./cloned-projects npx -y @aashari/mcp-server-atlassian-bitbucket get-file \ --workspace-slug acme-corp \ --repo-slug backend-api \ --file-path "src/main/java/com/acme/service/Application.java" \ --revision main

Global installieren

npm install -g @aashari/mcp-server-atlassian-bitbucket

Führen Sie dann direkt aus:

mcp-atlassian-bitbucket ls-workspaces mcp-atlassian-bitbucket get-repo --workspace-slug acme-corp --repo-slug backend-api

Entdecken Sie weitere CLI-Optionen

Verwenden Sie --help , um Flags und Verwendung für alle verfügbaren Befehle anzuzeigen:

mcp-atlassian-bitbucket --help

Oder erhalten Sie ausführliche Hilfe zu einem bestimmten Befehl:

mcp-atlassian-bitbucket ls-workspaces --help mcp-atlassian-bitbucket get-workspace --help mcp-atlassian-bitbucket ls-repos --help mcp-atlassian-bitbucket get-repo --help mcp-atlassian-bitbucket ls-prs --help mcp-atlassian-bitbucket get-pr --help mcp-atlassian-bitbucket ls-pr-comments --help mcp-atlassian-bitbucket create-pr-comment --help mcp-atlassian-bitbucket create-pr --help mcp-atlassian-bitbucket search --help mcp-atlassian-bitbucket get-commit-history --help mcp-atlassian-bitbucket create-branch --help mcp-atlassian-bitbucket clone --help mcp-atlassian-bitbucket get-file --help

Lizenz

ISC-Lizenz

Related MCP Servers

  • A
    security
    A
    license
    A
    quality
    Enables AI assistants to interact with GitHub through the PyGithub library, providing tools for managing issues, repositories, pull requests, and other GitHub operations with intelligent parameter handling and error management.
    Last updated -
    19
    Python
    MIT License
  • -
    security
    F
    license
    -
    quality
    A Model Context Protocol server that enables AI assistants like Claude to interact with GitHub repositories, issues, and pull requests.
    Last updated -
    129
    Python
  • -
    security
    F
    license
    -
    quality
    A Multi-Claude Program for interacting with GitHub APIs through Claude Desktop, allowing users to search repositories, manage issues, pull requests, repository settings, workflows, and collaborators.
    Last updated -
    1
    Python
    • Linux
    • Apple
  • -
    security
    F
    license
    -
    quality
    A Python implementation of an MCP server that enables secure, local Bitbucket integration for AI applications, providing tools for repository management, branch creation, file operations, issue tracking, and pull request creation.
    Last updated -
    1
    Python

View all related MCP servers

ID: d3mfwp6ce5