Bitbucket Server MCP
Bitbucket Server MCP
MCP-Server (Model Context Protocol) für das Bitbucket Server Pull Request Management. Dieser Server stellt Tools und Ressourcen bereit, um über das MCP-Protokoll mit der Bitbucket Server API zu interagieren.
✨ Neue Funktionen
🔧 Benutzerdefinierte HTTP-Header: Fügen Sie allen Anfragen über die Umgebungsvariable
BITBUCKET_CUSTOM_HEADERSbenutzerdefinierte Header hinzu (nützlich für Zero-Trust-Token oder Proxys)📋 PR-Erkennung: Listen und filtern Sie Pull Requests nach Status, Autor oder Richtung mit
list_pull_requests(behebt #14)🌿 Branch-Management: Listen Sie Branches mit Standard-Branch-Erkennung über
list_branchesauf, löschen Sie zusammengeführte Branches mitdelete_branch📝 Commit-Verlauf: Durchsuchen Sie den Commit-Verlauf mit Branch- und Autor-Filterung über
list_commits✅ PR-Genehmigung: Genehmigen und widerrufen Sie Pull Requests mit
approve_pull_requestundunapprove_pull_request🔍 Erweiterte Suche: Durchsuchen Sie Code und Dateien in Repositories mit Projekt-/Repository-Filterung über das
search-Tool📄 Dateioperationen: Lesen Sie Dateiinhalte und durchsuchen Sie Repository-Verzeichnisse mit
get_file_contentundbrowse_repository💬 Kommentarverwaltung: Extrahieren und filtern Sie PR-Kommentare mit dem
get_comments-Tool🔍 Projekterkennung: Listen Sie alle zugänglichen Bitbucket-Projekte mit
list_projectsauf📁 Repository-Durchsuchung: Erkunden Sie Repositories über Projekte hinweg mit
list_repositories🔧 Flexible Projektunterstützung: Machen Sie das Standardprojekt optional – geben Sie es pro Befehl an oder verwenden Sie
BITBUCKET_DEFAULT_PROJECT📖 Verbesserte Dokumentation: Verbesserte README mit Anwendungsbeispielen und besserer Konfigurationsanleitung
Related MCP server: Bitbucket MCP Server
Anforderungen
Node.js >= 16
Installation
Installation via Smithery
Um Bitbucket Server automatisch für Claude Desktop über Smithery zu installieren:
npx -y @smithery/cli install @garc33/bitbucket-server-mcp-server --client claudeManuelle Installation
npm installBuild
npm run buildFunktionen
Der Server bietet die folgenden Tools für eine umfassende Bitbucket Server-Integration:
list_projects
Bitbucket-Projekte entdecken und erkunden: Listet alle zugänglichen Projekte mit ihren Details auf. Unverzichtbar für die Projekterkennung und das Finden der korrekten Projektschlüssel für andere Vorgänge.
Anwendungsfälle:
Verfügbare Projekte finden, wenn der genaue Projektschlüssel nicht bekannt ist
Projektstruktur und Berechtigungen erkunden
Neue Projekte entdecken, auf die Sie Zugriff haben
Parameter:
limit: Anzahl der zurückzugebenden Projekte (Standard: 25, max: 1000)start: Startindex für die Paginierung (Standard: 0)
list_repositories
Repositories durchsuchen und entdecken: Erkunden Sie Repositories innerhalb bestimmter Projekte oder über alle zugänglichen Projekte hinweg. Gibt umfassende Repository-Informationen zurück, einschließlich Klon-URLs und Metadaten.
Anwendungsfälle:
Repository-Slugs für andere Vorgänge finden
Codebasis-Struktur über Projekte hinweg erkunden
Repositories entdecken, auf die Sie Zugriff haben
Repositories eines bestimmten Projekts durchsuchen
Parameter:
project: Bitbucket-Projektschlüssel (optional, verwendetBITBUCKET_DEFAULT_PROJECT, falls nicht angegeben)limit: Anzahl der zurückzugebenden Repositories (Standard: 25, max: 1000)start: Startindex für die Paginierung (Standard: 0)
create_pull_request
Codeänderungen zur Überprüfung vorschlagen: Erstellt einen neuen Pull Request, um Codeänderungen einzureichen, Überprüfungen anzufordern oder Feature-Branches zusammenzuführen. Handhabt automatisch Branch-Referenzen und Zuweisungen von Reviewern.
Anwendungsfälle:
Feature-Entwicklung zur Überprüfung einreichen
Fehlerbehebungen vorschlagen
Code-Integration aus Feature-Branches anfordern
An Codeänderungen zusammenarbeiten
Parameter:
project: Bitbucket-Projektschlüssel (optional, verwendetBITBUCKET_DEFAULT_PROJECT, falls nicht angegeben)repository(erforderlich): Repository-Slugtitle(erforderlich): Klarer, beschreibender PR-Titeldescription: Detaillierte Beschreibung mit Kontext (unterstützt Markdown)sourceBranch(erforderlich): Quell-Branch mit den ÄnderungentargetBranch(erforderlich): Ziel-Branch für die Zusammenführungreviewers: Array von Reviewer-BenutzernamensourceProject: Projektschlüssel des Quell-Repositorys (für Cross-Repo-PRs aus Forks)sourceRepository: Slug des Quell-Repositorys (für Cross-Repo-PRs aus Forks)includeDefaultReviewers: Automatisch die für den Ziel-Branch konfigurierten Standard-Reviewer abrufen und einbeziehen (Standard: true)
update_pull_request
Einen Pull Request sicher aktualisieren: Ändern Sie den Titel, die Beschreibung oder die Reviewer eines bestehenden Pull Requests, ohne Metadaten zu verlieren. Verwendet ein Read-Modify-Write-Muster, um alle Felder zu bewahren, die nicht explizit geändert wurden.
Anwendungsfälle:
PR-Titel oder -Beschreibung nach der Erstellung korrigieren
Reviewer hinzufügen oder ersetzen, ohne bestehende zu verlieren
PR-Metadaten aktualisieren, ohne den Genehmigungsstatus zu beeinflussen
Parameter:
project: Bitbucket-Projektschlüssel (optional, verwendetBITBUCKET_DEFAULT_PROJECT, falls nicht angegeben)repository(erforderlich): Repository-SlugprId(erforderlich): Zu aktualisierende Pull-Request-IDtitle: Neuer Titel (falls weggelassen, bleibt der aktuelle Titel erhalten)description: Neue Beschreibung (falls weggelassen, bleibt die aktuelle Beschreibung erhalten)reviewers: Neue Reviewer-Liste als Array von Benutzernamen (falls weggelassen, bleiben die aktuellen Reviewer erhalten)
get_pull_request
Umfassende PR-Informationen: Ruft detaillierte Pull-Request-Informationen ab, einschließlich Status, Reviewer, Commits und aller Metadaten. Unverzichtbar, um den PR-Status vor Aktionen zu verstehen.
Anwendungsfälle:
PR-Genehmigungsstatus prüfen
PR-Details und Fortschritt überprüfen
Änderungen vor dem Zusammenführen verstehen
PR-Status überwachen
Parameter:
project: Bitbucket-Projektschlüssel (optional, verwendetBITBUCKET_DEFAULT_PROJECT, falls nicht angegeben)repository(erforderlich): Repository-SlugprId(erforderlich): Pull-Request-ID
merge_pull_request
Genehmigte Änderungen integrieren: Führt einen genehmigten Pull Request in den Ziel-Branch zusammen. Unterstützt verschiedene Zusammenführungsstrategien basierend auf Ihren Workflow-Präferenzen.
Anwendungsfälle:
Code-Review-Prozess abschließen
Genehmigte Features integrieren
Fehlerbehebungen auf Haupt-Branches anwenden
Codeänderungen veröffentlichen
Parameter:
project: Bitbucket-Projektschlüssel (optional, verwendetBITBUCKET_DEFAULT_PROJECT, falls nicht angegeben)repository(erforderlich): Repository-SlugprId(erforderlich): Pull-Request-IDmessage: Benutzerdefinierte Merge-Commit-Nachrichtstrategy: Merge-Strategie:merge-commit(Standard): Erstellt einen Merge-Commit unter Beibehaltung der Historiesquash: Kombiniert alle Commits zu einemfast-forward: Verschiebt den Branch-Zeiger ohne Merge-Commit
decline_pull_request
Ungeeignete Änderungen ablehnen: Lehnt einen Pull Request ab, der nicht zusammengeführt werden sollte, und gibt dem Autor Feedback.
Anwendungsfälle:
Änderungen ablehnen, die Standards nicht erfüllen
PRs schließen, die der Projektrichtung widersprechen
Wesentliche Überarbeitung anfordern
Unerwünschte Code-Integration verhindern
Parameter:
project: Bitbucket-Projektschlüssel (optional, verwendetBITBUCKET_DEFAULT_PROJECT, falls nicht angegeben)repository(erforderlich): Repository-SlugprId(erforderlich): Pull-Request-IDmessage: Grund für die Ablehnung (hilfreich für Feedback an den Autor)
add_comment
Am Code-Review teilnehmen: Fügt Kommentare zu Pull Requests für Review-Feedback, Diskussionen und Zusammenarbeit hinzu. Unterstützt Thread-Konversationen.
Anwendungsfälle:
Feedback zum Code-Review geben
Fragen zu spezifischen Änderungen stellen
Verbesserungen vorschlagen
An technischen Diskussionen teilnehmen
Review-Entscheidungen dokumentieren
Parameter:
project: Bitbucket-Projektschlüssel (optional, verwendetBITBUCKET_DEFAULT_PROJECT, falls nicht angegeben)repository(erforderlich): Repository-SlugprId(erforderlich): Pull-Request-IDtext(erforderlich): Kommentarinhalt (unterstützt Markdown)parentId: Übergeordnete Kommentar-ID für Thread-Antwortenstate: Kommentarstatus:OPEN(Standard, sofort veröffentlicht) oderPENDING(Entwurf, nur für Sie sichtbar, bis das Review veröffentlicht wird)
get_diff
Codeänderungen analysieren: Ruft die Code-Unterschiede ab und zeigt genau, was im Pull Request hinzugefügt, entfernt oder geändert wurde. Unterstützt die Kürzung pro Datei, um große Diffs effektiv zu verwalten.
Anwendungsfälle:
Spezifische Codeänderungen überprüfen
Umfang der Änderungen verstehen
Auswirkungen vor dem Zusammenführen analysieren
Implementierungsdetails untersuchen
Code-Qualitätsbewertung
Große Dateien handhaben, ohne die Ausgabe zu überlasten
Parameter:
project: Bitbucket-Projektschlüssel (optional, verwendetBITBUCKET_DEFAULT_PROJECT, falls nicht angegeben)repository(erforderlich): Repository-SlugprId(erforderlich): Pull-Request-IDcontextLines: Kontextzeilen um Änderungen (Standard: 10)maxLinesPerFile: Maximale Zeilenanzahl pro Datei (optional, verwendetBITBUCKET_DIFF_MAX_LINES_PER_FILEUmgebungsvariable, falls nicht angegeben; auf 0 setzen für kein Limit)
Handhabung großer Dateien:
Wenn eine Datei das maxLinesPerFile-Limit überschreitet, wird Folgendes angezeigt:
Datei-Header und Metadaten (immer beibehalten)
Erste 60% der erlaubten Zeilen vom Anfang
Kürzungsmeldung mit Dateistatistiken
Letzte 40% der erlaubten Zeilen vom Ende
Klare Angabe, wie der vollständige Diff angezeigt werden kann
get_reviews
Review-Fortschritt verfolgen: Ruft die Review-Historie, den Genehmigungsstatus und das Feedback der Reviewer ab, um den Review-Status zu verstehen.
Anwendungsfälle:
Prüfen, ob der PR bereit zum Zusammenführen ist
Sehen, wer die Änderungen überprüft hat
Review-Feedback verstehen
Genehmigungsanforderungen überwachen
Review-Fortschritt verfolgen
get_activities
Pull-Request-Aktivitäten abrufen: Ruft die vollständige Aktivitäts-Timeline für einen Pull Request ab, einschließlich Kommentaren, Reviews, Commits und anderen Ereignissen.
Anwendungsfälle:
Kommentardiskussionen und Feedback lesen
Die vollständige PR-Timeline überprüfen
Commits verfolgen, die zum PR hinzugefügt/entfernt wurden
Genehmigungs- und Review-Historie sehen
Den vollständigen PR-Lebenszyklus verstehen
Parameter:
project: Bitbucket-Projektschlüssel (optional, verwendetBITBUCKET_DEFAULT_PROJECT, falls nicht angegeben)repository(erforderlich): Repository-SlugprId(erforderlich): Pull-Request-ID
get_comments
Nur PR-Kommentare extrahieren: Filtert Pull-Request-Aktivitäten, um nur die Kommentare zurückzugeben, was es einfacher macht, sich auf den Diskussionsinhalt ohne Reviews oder andere Aktivitäten zu konzentrieren.
Anwendungsfälle:
PR-Diskussions-Threads lesen
Feedback und Fragen extrahieren
Auf Kommentarinhalt ohne Rauschen konzentrieren
Konversationsfluss analysieren
Parameter:
project: Bitbucket-Projektschlüssel (optional, verwendetBITBUCKET_DEFAULT_PROJECT, falls nicht angegeben)repository(erforderlich): Repository-SlugprId(erforderlich): Pull-Request-ID
search
Erweiterte Code- und Dateisuche: Durchsuchen Sie Repositories mit der Bitbucket-Such-API mit Unterstützung für Projekt-/Repository-Filterung und Abfrageoptimierung. Durchsucht sowohl Dateiinhalte als auch Dateinamen. Hinweis: Die Suche funktioniert nur auf dem Standard-Branch von Repositories.
Anwendungsfälle:
Spezifische Codemuster über Projekte hinweg finden
Dateien nach Name oder Inhalt lokalisieren
Innerhalb bestimmter Projekte oder Repositories suchen
Nach Dateiendungen filtern
Parameter:
query(erforderlich): Suchabfrage-Stringproject: Bitbucket-Projektschlüssel zur Begrenzung des Suchbereichsrepository: Repository-Slug für Repository-spezifische Suchetype: Abfrageoptimierung - "file" (setzt Abfrage in Anführungszeichen für exakte Dateinamenübereinstimmung) oder "code" (Standard-Suchverhalten)limit: Anzahl der zurückzugebenden Ergebnisse (Standard: 25, max: 100)start: Startindex für die Paginierung (Standard: 0)
Beispiele für Abfragesyntax:
"README.md"- Exakten Dateinamen findenconfig ext:yml- Konfiguration in YAML-Dateien findenfunction project:MYPROJECT- Nach "function" in einem bestimmten Projekt suchenbug fix repo:PROJ/my-repo- In einem bestimmten Repository suchen
get_file_content
Dateiinhalte mit Paginierung lesen: Rufen Sie den Inhalt
Available Tools
28 toolsadd_commentB
Add a comment to a pull request for code review, feedback, questions, or discussion. Use this to provide review feedback, ask questions about specific changes, suggest improvements, or participate in code review discussions. Supports threaded conversations.
Inputs: prId (required), text (required), repository (required), state, +3 more.
add_comment_inlineB
Add an inline comment (to specific lines) to the diff of a pull request for code review, feedback, questions, or discussion. Use this to provide review feedback, ask questions about specific changes, suggest improvements, or participate in code review discussions. Supports threaded conversations.
Inputs: line (required), prId (required), text (required), filePath (required), +6 more.
approve_pull_requestA
Approve a pull request as the current user. Use this to signal that you have reviewed the changes and they are ready to be merged. The approval is recorded with your user identity.
Inputs: prId (required), repository (required), project.
browse_repositoryA
Browse and list files and directories in a Bitbucket repository. Use this to explore repository structure, find files, or navigate directories.
Inputs: repository (required), path, limit, branch, +1 more.
create_pull_requestA
Create a new pull request to propose code changes, request reviews, or merge feature branches. Use this when you want to submit code for review, merge a feature branch, or contribute changes to a repository. Automatically sets up branch references and can assign reviewers.
Inputs: title (required), repository (required), sourceBranch (required), targetBranch (required), +6 more.
decline_pull_requestA
Decline or reject a pull request that should not be merged. Use this when changes are not acceptable, conflicts with project direction, or when the PR needs significant rework. This closes the PR without merging.
Inputs: prId (required), repository (required), message, project.
delete_branchA
Delete a branch from a Bitbucket repository. Cannot delete the default branch. Use this for cleanup after merging pull requests or removing stale feature branches.
Inputs: branch (required), repository (required), project.
delete_commentA
Delete a comment from a pull request. Requires the comment version for optimistic locking.
Inputs: prId (required), version (required), commentId (required), repository (required), +1 more.
edit_commentA
Edit an existing comment on a pull request. Use this to fix typos, update information, or reformat comments. Requires the comment version for optimistic locking.
Inputs: prId (required), text (required), version (required), commentId (required), +3 more.
get_activitiesB
Retrieve all activities for a pull request including comments, reviews, commits, and other timeline events. Use this to get the complete activity history and timeline of the pull request.
Inputs: prId (required), repository (required), limit, start, +2 more.
get_build_statusA
Get build states and CI build URLs (including Jenkins links) for a commit using the authenticated Bitbucket connection. Use the pull request fromRef.latestCommit as commitHash. Returns a paginated list; an empty list means no build statuses are recorded, not a successful build.
Inputs: commitHash (required), limit, start.
get_code_insightsA
Retrieve Code Insights reports (SonarQube, security scans, etc.) and their annotations for a pull request. Use this to check quality gates, code coverage, security findings, and other CI/CD analysis results.
Inputs: prId (required), repository (required), project.
get_commentsA
Retrieve only the comments from a pull request. Use this when you specifically want to read the discussion and feedback comments without other activities like reviews or commits.
Inputs: prId (required), repository (required), limit, start, +2 more.
get_dashboard_pull_requestsA
List pull requests across all repositories for the authenticated user. Use this to see PRs you need to review, PRs you authored, or PRs you are participating in. Returns PRs from all projects and repositories without needing to specify each one.
Inputs: role, limit, order, start, +3 more.
get_diffA
Retrieve the code differences (diff) for a pull request showing what lines were added, removed, or modified. Use this to understand the scope of changes, review specific code modifications, or analyze the impact of proposed changes before merging.
Inputs: prId (required), repository (required), project, contextLines, +1 more.
get_file_contentA
Retrieve the content of a specific file from a Bitbucket repository with pagination support. Use this to read source code, configuration files, documentation, or any text-based files. For large files, use start parameter to paginate through content.
Inputs: filePath (required), repository (required), limit, start, +2 more.
get_pull_requestA
Retrieve comprehensive details about a specific pull request including status, reviewers, commits, and metadata. Use this to check PR status, review progress, understand changes, or gather information before performing actions like merging or commenting.
Inputs: prId (required), repository (required), project.
get_reviewsA
Fetch the review history and approval status of a pull request. Use this to check who has reviewed the PR, see approval status, understand review feedback, or determine if the PR is ready for merging based on review requirements.
Inputs: prId (required), repository (required), limit, start, +2 more.
list_branchesA
List branches in a Bitbucket repository. Shows branch names, latest commits, and identifies the default branch. Use this to explore available branches, find branch names for checkout or PR creation, or verify branch existence before operations.
Inputs: repository (required), limit, start, project, +1 more.
list_commitsA
List commits in a Bitbucket repository, optionally filtered by branch and/or author. Use this to review commit history, find specific changes, track contributions, or understand the evolution of a branch.
Inputs: repository (required), limit, start, author, +2 more.
list_projectsA
Discover and list all Bitbucket projects you have access to. Use this first to explore available projects, find project keys, or when you need to work with a specific project but don't know its exact key. Returns project keys, names, descriptions and visibility settings.
Inputs: limit, start.
list_pull_requestsA
List pull requests in a Bitbucket repository filtered by state, author, or direction. Use this to find open PRs, see your pending reviews, discover PRs awaiting merge, or get an overview of PR activity in a repository.
Inputs: repository (required), limit, start, state, +3 more.
list_repositoriesB
Browse and discover repositories within a specific project or across all accessible projects. Use this to find repository slugs, explore codebases, or understand the repository structure. Returns repository names, slugs, clone URLs, and project associations.
Inputs: limit, start, project.
merge_pull_requestA
Merge an approved pull request into the target branch. Use this when a PR has been reviewed, approved, and is ready to be integrated. Choose the appropriate merge strategy based on your team's workflow and repository history preferences.
Inputs: prId (required), repository (required), message, project, +1 more.
publish_reviewA
Publish all pending (draft) review comments on a pull request at once. Optionally set your review status to APPROVED or NEEDS_WORK, and add an overview comment. This is the batch operation that transitions all PENDING comments to published.
Inputs: prId (required), repository (required), project, commentText, +1 more.
searchA
Search for code or files across repositories. Use this to find specific code patterns, file names, or content within projects and repositories. Searches both file contents and filenames. Supports filtering by project, repository, and query optimization.
Inputs: query (required), type, limit, start, +2 more.
unapprove_pull_requestA
Remove your approval from a pull request. Use this to retract a previous approval if you discover issues after approving or if the PR has changed since your review.
Inputs: prId (required), repository (required), project.
update_pull_requestA
Update an existing pull request title, description, or reviewers. Safely preserves all fields not explicitly changed (uses read-modify-write to avoid losing reviewers or other metadata).
Inputs: prId (required), repository (required), title, project, +2 more.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 28 tools
Most tools target distinct resources and actions, and descriptions clearly separate near-neighbors like add_comment vs add_comment_inline and get_activities vs get_comments/get_reviews. The timeline tools still overlap somewhat since get_activities returns comments and reviews as well, but the distinctions are understandable.
Almost all tools follow snake_case verb_noun naming (create_pull_request, get_diff, delete_branch, etc.). Minor deviations like the bare 'search' and 'browse_repository' versus 'list_repositories' are noticeable but do not undermine readability.
At 28 tools this is heavy for a single MCP server, even one covering Bitbucket. Many operations are genuinely useful, but some could be consolidated or made more narrowly scoped, making the surface feel borderline oversized.
The PR lifecycle, commenting, reviews, repo browsing, search, branches, commits, builds, and Code Insights are well covered. Gaps remain around branch creation and broader repository/project administration, but core agent workflows have no dead ends.
Maintenance
Related MCP Connectors
A MCP server built for developers enabling Git based project management with project and personal…
One MCP server for all your MCP servers: code mode, per-tool permissions, approvals and audit.
A Model Context Protocol (MCP) application for automated GitHub PR analysis and issue management.…
Create, deploy, and operate MCP servers directly from your GitHub repositories.
Related MCP Servers
- AlicenseBqualityCmaintenanceAn MCP server that enables interaction with Bitbucket repositories through the Model Context Protocol, supporting both Bitbucket Cloud and Server with features for PR lifecycle management and code review.208,411 npm30MIT
- AlicenseBqualityDmaintenanceAn MCP server that provides tools for interacting with the Bitbucket API, supporting both Bitbucket Cloud and Bitbucket Server, enabling pull request, branch, file, code review, and search operations.198,411 npmMIT
- AlicenseBqualityBmaintenanceMCP server for Bitbucket Server integration, enabling project, repository, pull request, source code, branch, and code review operations via the Bitbucket Server APIs.2789 npmMIT
- AlicenseNot gradedqualityCmaintenanceEnables interaction with Bitbucket Cloud REST API 2.0, supporting pull requests, pipelines, logs, and repository cloning through MCP tools.59 npmMIT