Skip to main content
Glama
Bitbucket MCP

Bitbucket MCP

by SamtheIII

Bitbucket MCP Server

An MCP server that connects Claude Desktop and Claude Code to Bitbucket Cloud, enabling AI-assisted bug triage, impact analysis from live repository data.

Tools

Tool

Description

search_by_jira_id

Find PRs (by title/branch) and commits (by message) linked to a Jira issue key. Searches one repo or all repos in the workspace.

search_by_pr_title

Search PRs by keyword — returns details, description, comments, and changed files in one response

get_changed_files

List modified files with line add/remove counts for a PR number or commit hash

get_diff

Return the full unified diff for a PR or commit, truncated at a line boundary if over 50,000 characters

get_file_content

Return the full content of a file at a given branch or commit ref

get_commit_history_for_file

Show commit history for a file — frequency, authors, and dates

get_related_prs

Find other PRs that touched the same files as a given PR or commit

list_repos

List all repositories in the configured workspace

Related MCP server: Atlassian Bitbucket MCP Server

Authentication

Bitbucket Cloud uses Basic Auth with a Bitbucket API Token

  1. Go to Bitbucket -> Account Settings -> Security -> API Tokens

  2. Create a Token with Scope

Quick setup (Windows)

Run the setup script — it installs dependencies, builds, prompts for credentials, and registers the server in both Claude Desktop and Claude Code:

powershell -ExecutionPolicy Bypass -File setup.ps1

Credentials are written to .env.local (git-ignored). The MCP config entry stays secret-free.

Manual setup

1. Install and build

npm install
npm run build

2. Create .env.local

BITBUCKET_WORKSPACE=https://bitbucket.org/your-workspace/workspace/overview/
BITBUCKET_EMAIL=you@example.com
BITBUCKET_API_TOKEN=your_app_password_here

3. Register in Claude Desktop

Open %APPDATA%\Claude\claude_desktop_config.json (Windows) or ~/Library/Application Support/Claude/claude_desktop_config.json (Mac) and add:

{
  "mcpServers": {
    "bitbucket": {
      "command": "node",
      "args": ["C:/path/to/bitbucket-mcp-server/dist/index.js"]
    }
  }
}

Restart Claude Desktop to load the tools.

4. Register in Claude Code

claude mcp add bitbucket node "C:/path/to/bitbucket-mcp-server/dist/index.js" --scope user

Environment variables

Variable

Required

Description

BITBUCKET_WORKSPACE

Yes

Full workspace URL or slug (e.g. my-workspace)

BITBUCKET_EMAIL

Yes

Your Atlassian account email

BITBUCKET_API_TOKEN

Yes

Bitbucket App Password (from account → App passwords)

Example prompts

"Show me all PRs and commits related to PROJ-123"
"Search PRs mentioning login timeout in repo my-service"
"What files were changed in PR 42 in repo my-service?"
"Get the diff for commit a1b2c3d4 in repo my-service"
"Show me the content of src/auth.ts on the main branch"
"Who has been changing src/payment/processor.ts and how often?"
"Find other PRs that touched the same files as PR 42"
"List all repos in the workspace"

Available Tools

8 tools
get_changed_filesB

Get the list of files changed in a pull request or commit, with per-file line add/remove counts.

Inputs: ref (required), repoSlug (required).

get_commit_history_for_fileB

Get the commit history for a specific file, showing who changed it and how frequently.

Inputs: filePath (required), repoSlug (required), limit.

get_diffA

Get the full unified diff for a pull request or commit. Diffs larger than 50,000 characters are truncated at a line boundary.

Inputs: ref (required), repoSlug (required).

get_file_contentA

Get the full content of a file at a given branch name or commit hash. If no ref is given, the repository's default branch is used.

Inputs: filePath (required), repoSlug (required), ref.

list_reposB

List all repositories in the configured Bitbucket workspace.

Inputs: limit.

search_by_jira_idA

Search Bitbucket for PRs and commits related to a Jira issue ID. Finds PRs where the ID appears in the title or source branch name, and commits where it appears in the message.

Inputs: jiraId (required), repoSlug.

search_by_pr_titleA

Search pull requests by keyword in the title. Returns PR details, description, comments, and changed files.

Inputs: query (required), repoSlug (required), state, limit.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A3.7/5.0

    Scored across 8 tools

    Disambiguation5/5

    Each tool has a clearly distinct purpose: get_changed_files, get_commit_history_for_file, get_diff, get_file_content, get_related_prs, list_repos, search_by_jira_id, search_by_pr_title. No two tools overlap in functionality.

    Naming Consistency5/5

    All tool names follow a consistent verb_noun pattern in snake_case (e.g., get_changed_files, list_repos, search_by_jira_id). The verbs (get, list, search) and nouns are clear and predictable.

    Tool Count5/5

    With 8 tools, the server is well-scoped for its purpose. It covers essential Bitbucket operations without being too sparse or overwhelming.

    Completeness3/5

    The tool set lacks fundamental PR operations such as listing PRs, getting a single PR by ID, creating or updating PRs, and commenting. It is read-only and focused on code review and searching, but missing basic CRUD for PRs is a notable gap.

    Maintenance

    ActivityInactive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers