MCP Hub
Back to servers

mcp-bitbucket-dc

An MCP server for Bitbucket Data Center that enables AI assistants to search code, browse files, and manage pull requests through a standardized interface. It supports comprehensive repository exploration, including Lucene-style code searching and direct file content access.

Stars
2
Updated
Feb 20, 2026
Validated
Feb 23, 2026

mcp-bitbucket-dc

PyPI Version License: MIT

MCP (Model Context Protocol) server for Bitbucket Data Center. Enables AI assistants to search code, browse files, manage pull requests, and explore repositories through a standardized interface.

Built with FastMCP in Python. Installs via uvx — no Node.js required.

Quick Start

1. Generate a Personal Access Token

  1. Log in to your Bitbucket Data Center instance
  2. Go to Manage Account → HTTP access tokens
  3. Click Create token
  4. Set permissions: Repository Read (and Write if you need PR creation/commenting)
  5. Copy the token

2. Configure Your IDE

Add to your MCP configuration (mcp.json in VS Code, claude_desktop_config.json for Claude Desktop):

{
  "mcpServers": {
    "bitbucket-dc": {
      "command": "uvx",
      "args": ["mcp-bitbucket-dc"],
      "env": {
        "BITBUCKET_HOST": "git.yourcompany.com",
        "BITBUCKET_API_TOKEN": "your-personal-access-token"
      }
    }
  }
}

That's it. The server starts automatically when your IDE connects.

3. Start Using

Ask your AI assistant:

  • "Search for CompanyInfoUpdater in the codebase"
  • "Show me the file structure of the api-service repo in PROJECT"
  • "Get the content of src/main/Application.java from repo backend"
  • "List open pull requests in PROJECT/my-repo"
  • "What branches exist in PROJECT/my-repo?"

Tools Reference

Code Search (NEW)

ToolDescription
bitbucket_code_searchSearch code across all repos with Lucene syntax (ext:java, lang:python, repo:name, project:KEY, AND/OR/NOT)

File Browsing (NEW)

ToolDescription
bitbucket_browseBrowse directory tree (files & folders at a path)
bitbucket_get_file_contentGet raw file content with syntax highlighting
bitbucket_list_filesRecursively list all file paths in a repo
bitbucket_get_branchesList branches (filterable)
bitbucket_get_tagsList tags (filterable)

Projects & Repositories

ToolDescription
bitbucket_get_projectsList projects (filterable by name/permission)
bitbucket_get_projectGet project details
bitbucket_get_repositoriesList repos in a project
bitbucket_get_repositoryGet repo details with clone URLs

Pull Requests

ToolDescription
bitbucket_get_pull_requestsList PRs (filter by state, direction, text)
bitbucket_get_pull_requestGet PR details with reviewers
bitbucket_get_pull_request_commentsGet PR comments and activity
bitbucket_get_pull_request_changesGet files changed in a PR
bitbucket_get_pull_request_diffGet diff for a file in a PR
bitbucket_post_pull_request_commentPost a comment (general or inline)
bitbucket_create_pull_requestCreate a new PR
bitbucket_update_pull_requestUpdate PR title/description/reviewers
bitbucket_get_required_reviewersGet required reviewers for a branch pair

Commits

ToolDescription
bitbucket_get_commitsList commits (filter by path, ref range)

Search Query Syntax

The bitbucket_code_search tool uses Lucene-style queries:

# Simple text search
CompanyInfoUpdater

# Filter by file extension
function ext:java

# Filter by language
config lang:python

# Filter by repository or project
DatabaseHelper repo:backend-api
service project:PLATFORM

# Filter by path
controller path:src/main

# Boolean operators (must be UPPERCASE)
config AND (yaml OR yml)
test NOT unit
UserService AND ext:java AND project:CORE

Configuration

Environment VariableRequiredDescription
BITBUCKET_HOSTYes*Bitbucket DC hostname (e.g. git.company.com)
BITBUCKET_URLYes*Full base URL alternative (e.g. https://git.company.com)
BITBUCKET_API_TOKENYesPersonal Access Token

* Provide either BITBUCKET_HOST or BITBUCKET_URL, not both.

Alternative Transports

# SSE transport (for remote/multi-user setups)
uvx mcp-bitbucket-dc --transport sse --port 8000

# Streamable HTTP
uvx mcp-bitbucket-dc --transport streamable-http --port 8000

Development

# Clone and install
git clone https://github.com/christopherekfeldt/mcp-bitbucket-dc.git
cd mcp-bitbucket-dc
uv sync

# Run locally
export BITBUCKET_HOST=git.yourcompany.com
export BITBUCKET_API_TOKEN=your-token
uv run mcp-bitbucket-dc

# Run tests
uv run pytest

License

MIT — see LICENSE.

Reviews

No reviews yet

Sign in to write a review