Bitbucket MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| BITBUCKET_TOKEN | No | Your Bitbucket HTTP access token (for Bitbucket Server) | |
| BITBUCKET_BASE_URL | No | The base URL of your Bitbucket Server instance (e.g., https://bitbucket.yourcompany.com) | |
| BITBUCKET_USERNAME | No | Your Bitbucket username (for Bitbucket Cloud) or full email address (for Bitbucket Server, e.g., john.doe@company.com) | |
| BITBUCKET_APP_PASSWORD | No | Your Bitbucket App Password (for Bitbucket Cloud) |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| get_pull_requestA | Get a pull request: metadata, reviewer status, merge info, comments and changed files. Set include_comments/include_file_changes false for a 1-call metadata read; include_tasks lists open/resolved tasks. Response carries |
| list_pull_requestsA | List pull requests in a repository. Omit |
| create_pull_requestD | Create a pull request. |
| update_pull_requestA | Update a pull request. Reviewers/approvals are preserved unless |
| merge_pull_requestC | Merge a pull request. Pass |
| decline_pull_requestC | Decline a pull request, optionally with a comment. Pass |
| add_commentA | Add a PR comment: general, threaded reply (parent_comment_id), inline (file_path + line_number), code suggestion (suggestion), or task (severity BLOCKER, Server only). code_snippet auto-resolves line_number from exact diff text when line_number is unknown. |
| manage_commentA | Edit/delete/resolve/reopen a PR comment or task, or convert between comment and task (to_task/to_comment are Server-only). Pass |
| get_pull_request_diffA | Get a PR diff as raw unified diff text (line numbers derive from @@ headers; +/- prefixes mark ADDED/REMOVED). Scope with file_path (server-side) or include/exclude glob patterns. |
| set_review_statusA | Set YOUR reviewer status on a PR: APPROVED, NEEDS_WORK (request changes), or UNAPPROVED (clear). One call; the three states are mutually exclusive. |
| list_pr_commitsC | List commits in a pull request. |
| list_branch_commitsA | List commits on a branch. since (as a rev) and include_merge_commits filter server-side; author/until/search and date-valued since filter client-side over a bounded page walk (noted when more pages exist). |
| get_commit_detailA | Get a commit diff as raw unified diff text, or detail:"files" for just the changed-file list (no diff bodies). |
| list_branchesC | List branches (most recently modified first on Server). |
| get_branchB | Get a branch with its latest commit and open PRs (include_merged_prs adds merged ones). |
| delete_branchC | Delete a branch. Pass expected_head (commit SHA) to skip the lookup call (Server). |
| list_directory_contentB | List files and directories at a repository path. |
| get_file_contentA | Read a file. Windowed by default (start_line/line_count fetch ONLY that window server-side; ≤5000 lines per call). full_content=true or negative start_line (tail) fetches the whole file — prefer windows. |
| list_projectsC | List accessible projects/workspaces. |
| list_repositoriesC | List repositories in a project (or all accessible on Server). |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 20 tools
Most tools target clearly distinct resources or actions (PRs, comments, branches, commits, files, projects/repos). Minor overlap exists between list_pr_commits and list_branch_commits, and between get_pull_request_diff and get_commit_detail, but descriptions make the boundaries usable.
Predominantly consistent snake_case verb_noun naming across the set. Minor deviations include 'pr' in list_pr_commits versus 'pull_request' elsewhere, and manage_comment is less operation-specific than neighboring names.
20 tools is on the heavy side for a PR-centric Bitbucket server; the rubric treats 16-25 tools as borderline. Most operations are useful, but the set could likely be consolidated without losing important capability.
Core PR lifecycle coverage is strong: list/get/create/update/merge/decline, comments and tasks, review status, diffs, commits, branches, file/directory reads, and project/repository listing. Missing write operations outside PRs (create_branch, create_repository, file write) and some repository-level get/update operations are minor gaps.