Atlassian Dc Bitbucket MCP server
MCP server for Atlassian Bitbucket Data Center - interact with repositories and code
99 stars1.2k downloads/wk
Reviews
Write oneNobody has reviewed Atlassian Dc Bitbucket yet.
If you have run it, two minutes of your experience saves the next person an afternoon.
Atlassian Dc Bitbucket tools (25, 6 write)
write = sends, deletes, buys or postsRead from the package source without running it. The installed server may list more.
bitbucket_canMergePullRequestCheck whether a pull request can be merged. Read-only: returns canMerge, whether the pull request is conflicted, and any merge-check vetoes (e.g. missing approvals, unresolved tasks, failed builds). Use this before bitbucket_mergePullRequest to see what is blocking a merge.
bitbucket_createBranchwrite actionCreate a branch in a Bitbucket repository, forked from a branch, tag or commit. Use this before bitbucket_createPullRequest when the source branch does not exist yet. The response contains the new branch's 'id' (e.g. 'refs/heads/feature/my-branch'), which is what bitbucket_createPullRequest expects as fromRefId.
bitbucket_createPullRequestwrite actionCreate a new pull request in a Bitbucket repository. Supports fork-based pull requests by passing fromProjectKey/fromRepositorySlug when the source repository differs from the destination (projectKey/repositorySlug). IMPORTANT: Before creating a PR, use bitbucket_getRequiredReviewers to fetch required reviewers for the source and target branches to ensure the PR is not created without mandatory re
bitbucket_getBranchDiffGet the diff between two branches, tags or commits — including branches that have no pull request yet. Returns the same comparison as the Bitbucket 'compare' view: changes reachable from sourceBranch but not from targetBranch, rendered as a unified diff. targetBranch defaults to the repository's default branch. Use this to review work in progress before a PR exists; once a PR exists, prefer bitbuc
bitbucket_getCommitsGet commits for a Bitbucket repository
bitbucket_getDashboardPullRequestsGet pull requests from the Bitbucket dashboard across all repositories. Useful for finding all PRs where you are the author, reviewer, or participant without specifying a project or repository.
bitbucket_getFileContentGet the raw content of a file in a Bitbucket repository, at a branch, tag or commit. Use this to read a source file without cloning the repository. 'at' defaults to the repository's default branch. Pointing 'path' at a directory returns that directory's git tree listing instead of file content.
bitbucket_getInboxPullRequestsGet pull requests from the authenticated user's inbox that need their review. Returns PRs across all repositories where the user is a reviewer.
bitbucket_getPR_CommentsAndActionGet comments for a Bitbucket pull request and other actions, like approvals
bitbucket_getProjectGet a specific Bitbucket project by key
bitbucket_getProjectsGet a list of Bitbucket projects
bitbucket_getPullRequestGet a specific pull request by ID. Returns full details including title, description, reviewers, participants, author, source/target branches, current state, and version (needed for bitbucket_updatePullRequest).
bitbucket_getPullRequestChangesGet the changes for a Bitbucket pull request
bitbucket_getPullRequestDiffGet text diff for a specific file in a Bitbucket pull request. Returns plain text diff format. Note: Before getting diff, use getPullRequestChanges to understand what files were changed in the PR
bitbucket_getPullRequestsGet pull requests for a Bitbucket repository
bitbucket_getRepositoriesGet repositories for a Bitbucket project
bitbucket_getRepositoryGet a specific Bitbucket repository
bitbucket_getRequiredReviewersGet required reviewers for pull request creation. Returns a set of users who are required reviewers for pull requests created from the given source repository and ref to the given target ref in this repository.
bitbucket_getUserGet a Bitbucket user by their slug, or search for users by name/email to discover their slug. Use this to resolve userSlug for bitbucket_submitPullRequestReview when it is not already known from a comment response or PR participant list.
bitbucket_mergePullRequestMerge a pull request. IMPORTANT: you MUST first call bitbucket_getPullRequest to get the current 'version' — it is required for optimistic locking and a stale version is rejected. The merge is refused if the pull request is conflicted or a merge check vetoes it; use bitbucket_canMergePullRequest to inspect blockers first. This operation is not reversible through the API. …
bitbucket_postPullRequestCommentwrite actionPost a comment to a Bitbucket pull request. Use pending: true to create a draft comment that is only visible to you until you call bitbucket_submitPullRequestReview. NOTE: pending only works when filePath is provided (file-level or inline comments). True top-level PR comments (no filePath) are always posted live and cannot be drafted. Use severity: 'BLOCKER' to post the comment as a task — tasks m
bitbucket_searchCodeSearch code across Bitbucket. The query supports search modifiers like 'project:<key>', 'repo:<key>/<slug>', and 'ext:<extension>' to scope or filter results (e.g. 'project:TEST authenticate', 'repo:TEST/demo ext:js TODO'). NOTE: the 'repo:' modifier requires the project key — 'repo:projectkey/repositoryslug', not a bare slug. Returns matching files with hit contexts (snippets).
bitbucket_submitPullRequestReviewwrite actionSubmit a pull request review, publishing all pending (draft) comments and setting the reviewer's verdict. This is equivalent to clicking 'Submit Review' in the Bitbucket UI. Use after posting comments with pending: true. To resolve userSlug: (1) check author.slug in any comment you posted this session, (2) check the reviewers/participants array from bitbucket_getPullRequest, or (3) call bitbucket_
bitbucket_updatePullRequestwrite actionUpdate the title, description, reviewers, destination branch or draft status of an existing pull request. IMPORTANT: You MUST first call bitbucket_getPullRequest to get the current 'version' number — this is required for optimistic locking and the call will fail without it. The reviewers parameter replaces ALL existing reviewers. If you want to preserve existing reviewers, include those from the c
bitbucket_updatePullRequestCommentwrite actionUpdate an existing pull request comment. Use to edit text, change severity, change task state, or resolve/reopen the comment thread. On a BLOCKER (task) comment, state: 'RESOLVED' ticks the task; threadResolved: true toggles the thread-level 'Resolve' button. These are independent and can be set separately. Requires the current 'version' from optimistic locking; fetch it via bitbucket_getPR_Commen
Public scan report
scanner v0.1.9 · 2026-09-20 · same rubric, same numbers if you re-run it
- Code scan935 source files scanned25/25
- –Live reliabilityno gateway calls yet and no remote to proben/a
- –Tool poisoningtools not inspected (local package is not executed); not countedn/a
- Auth qualitystatic API keys via environment variables6/15
- Maintenancelast push 18 days ago15/15
- Maintainer identityregistry namespace matches repository owner; GitHub account older than a year8/10
What the publisher says
From the Atlassian Dc Bitbucket repository's README, as published. We do not edit it. Read it on GitHub
Atlassian Data Center MCP
Note: This is a community-maintained project and is not affiliated with, endorsed by, or supported by Atlassian.
Use at your own discretion.
This project provides a Model Context Protocol (MCP) integration for Atlassian Data Center products, including Jira, Confluence, and Bitbucket.
Quick Setup
Each package ships an interactive setup subcommand that stores your credentials in the most secure place available on your OS. Run it once per product:
npx @atlassian-dc-mcp/jira setup
npx @atlassian-dc-mcp/confluence setup
npx @atlassian-dc-mcp/bitbucket setupThe setup CLI prompts for host, API base path, default page size, and API token. Before saving, it validates obvious input mistakes and performs a timed authenticated request to the selected Atlassian product, so a bad host, base path, or token is caught during setup.
CLI flags and non-interactive mode
Setup accepts flags so you can prefill values or skip prompts entirely (useful for scripted bootstrap, CI, or remote sessions). Run npx @atlassian-dc-mcp/ setup --help for the full list.
In interactive mode, any flag you pass prefills its prompt (so e.g. --host skips the host prompt but still asks for the rest). In --non-interactive mode, setup resolves anything missing from existing configuration (process env, ~/.atlassian-dc-mcp/.env, or macOS Keychain) and exits non-zero if a host (or full-URL --api-base-path) and token cannot be found. An existing token is reused when --token is omitted.
# Scripted, no prompts, write everything from flags
npx @atlassian-dc-mcp/jira setup --non-interactive \
--host jira.example.com \
--token "$JIRA_TOKEN"
# Re-validate the existing token without re-entering it
npx @atlassian-dc-mcp/jira setup --non-interactive --host jira.example.comCredential validation behaves differently between modes: interactive mode offers retry/save-anyway prompts on failure, while --non-interactive exits with code 1 on the first validation failure so it can be used as a CI gate.
Token storage:
- macOS — written to the login Keychain via /usr/bin/security (service atlassian-dc-mcp, account -token).
- Linux — written to ~/.atlassian-dc-mcp/.env with POSIX mode 0600 (read/write for your user only; other local user accounts cannot read it).
- Windows — written to %USERPROFILE%\.atlassian-dc-mcp\.env. Node passes the mode bits but Windows ignores them, so the file inherits the ACL of your user profile directory — typically readable only by your user, SYSTEM, and Administrators.
Non-secret fields (host, API base path, default page size) are always written to the home file — ~/.atlassian-dc-mcp/.env on macOS/Linux, %USERPROFILE%\.atlassian-dc-mcp\.env on Windows. After a successful Keychain write, the token line is cleared from the home file so there is never a second copy in a less-secure place.
Once setup has run, the MCP servers can boot with no environment variables at all:
Shortened. The full README is on GitHub.
Nothing above is checked by us. What we check is on the safety report.
Install directly
Runs npx -y @atlassian-dc-mcp/bitbucket on your machine. Read the scan report first; the gateway never runs local packages.
claude mcp add atlassian-dc-mcp-bitbucket -- npx -y @atlassian-dc-mcp/bitbucket
Atlassian Dc Bitbucket: common questions
- Is Atlassian Dc Bitbucket MCP server safe?
- Mostly: it is graded B (83/100). Read the Atlassian Dc Bitbucket safety report
- How do I install Atlassian Dc Bitbucket?
- It runs on your machine. Copy the Claude Code, Claude Desktop or Cursor config from the install section.
- Does Atlassian Dc Bitbucket need an API key?
- Yes. The registry entry asks for
BITBUCKET_API_TOKEN. - Is Atlassian Dc Bitbucket maintained?
- The last commit was 18 days ago (2026-09-02). The latest release is v0.34.0.