Bitbucket MCP Server
Allows users to interact with Bitbucket repositories through a standardized interface, supporting code searches, repository management, and more.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Bitbucket MCP Serverlist repositories in my workspace"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Bitbucket MCP Server
This project provides an implementation of the Model Context Protocol (MCP) server in Python. It allows users to interact with Bitbucket repositories through a standardized interface, supporting code searches, repository management, and more.
Features
Implements the MCP server protocol for Bitbucket integration
Searches code in Bitbucket repositories with support for multiple pages of results
Retrieves repository information and commit history
Fetches file contents from repositories
Creates branches and pull requests
Automatically masks sensitive credentials in search results
Returns data in JSON format
Includes syntax rules for searching files in Bitbucket
Related MCP server: Bitbucket MCP Server
Project Structure
bitbucket_mcp/
├── __init__.py # Package init
├── __main__.py # CLI entry point (argparse, logging, mcp.run)
├── server.py # FastMCP instance + plugin-style tool/prompt registration
├── client.py # BitbucketClient class (unified pagination, shared instance)
├── credentials.py # mask_credentials() utility
├── diff_filter.py # Per-file diff splitting/filtering for the PR diff tool
├── config.py # BitbucketConfig dataclass + env-var validation
└── prompts.py # SYNTAX_RULES + TOOL_PROMPTS dictionaryAdding a New Tool
Add a method to
BitbucketClientinclient.py.Add a tool function in
server.pyusing the@bitbucket_tooldecorator — the function signature defines the MCP input schema, and the body delegates to the client via_call().(Optional) Add a prompt by adding an entry to
TOOL_PROMPTSinprompts.py— it's auto-registered, no@mcp.prompt()boilerplate needed.
Adding a New Prompt
Just add an entry to the TOOL_PROMPTS dict in prompts.py. The prompt is automatically registered as {key}_prompt at server startup.
Requirements
Python 3.11+
atlassian-python-apilibrarymcplibrary with CLI supportuvfor project management
Environment Variables
The server requires the following environment variables:
BITBUCKET_WORKSPACE- Your Bitbucket workspace nameBITBUCKET_ACCESS_TOKEN- Bitbucket workspace access tokenBITBUCKET_URL- (Optional) Bitbucket API URL, defaults tohttps://api.bitbucket.org/
Note: Bitbucket app passwords are deprecated. Use a workspace access token (
BITBUCKET_ACCESS_TOKEN) instead ofAPP_USERNAME/APP_PASSWORD.
Configuration Example
"BitbucketMCP": {
"type": "local",
"command": ["uv", "run", "bitbucket-mcp"],
"environment": {
"BITBUCKET_WORKSPACE": "test_workspace",
"BITBUCKET_ACCESS_TOKEN": "access_token"
}
}Alternatively, you can still use the backward-compatible shim:
"BitbucketMCP": {
"type": "local",
"command": ["uv", "run", "server.py"],
"environment": {
"BITBUCKET_WORKSPACE": "test_workspace",
"BITBUCKET_ACCESS_TOKEN": "access_token"
}
}Available Tools
bitbucket_code_search- Search code in repositoriesbitbucket_get_repositories- List and filter repositoriesbitbucket_create_branch- Create a new branchbitbucket_get_commits- Retrieve commit historybitbucket_get_file_content- Get raw file contentbitbucket_create_pr- Create pull requestsbitbucket_get_pull_requests- List pull requests for a repositorybitbucket_get_pull_request- Retrieve a single pull request by IDbitbucket_get_pull_request_diff- Get the diff for a pull request. Lock files are excluded and the output is capped at 50,000 chars by default; usepaths/exclude/max_charsto choose files. Skipped files are listed at the end.bitbucket_get_pull_request_diffstat- List the files changed by a pull request, with status and line countsbitbucket_get_pull_request_comments- Get comments for a pull request
This server cannot be deployed
Maintenance
Related MCP Connectors
Access the GitHub API, enabling file operations, repository management, search functionality, and…
Code intelligence for LLMs. Analyze, search, and retrieve code from any public git repository.
A Model Context Protocol (MCP) application for automated GitHub PR analysis and issue management.…
Search indexed code, trace dependencies, assess change impact, and recall repository memory.
Related MCP Servers
- AlicenseNot gradedqualityBmaintenanceEnables interaction with Bitbucket through the Model Context Protocol, allowing users to manage pull requests, add comments, review code, create tasks, and perform other repository operations using natural language.7MIT
- AlicenseBqualityDmaintenanceEnables LLMs to interact with Bitbucket repositories to manage pull requests, branches, and commits through the Model Context Protocol. It supports repository operations such as searching code, accessing file contents, and comparing branches using natural language.162,907 npmMIT
- AlicenseNot gradedqualityBmaintenanceEnables automated interaction with Bitbucket, including creating and listing pull requests, through the Model Context Protocol.112,918 npmMIT
- AlicenseNot gradedqualityAmaintenanceEnables AI assistants to interact with Bitbucket Cloud and Server APIs, providing access to repositories, pull requests, and related operations through the Model Context Protocol.2,907 npmMIT