MCP Atlassian
This is a fork of sooperset/mcp-atlassian that adds Bitbucket Data Center support. It is published on PyPI as
olddevs-mcp-atlassian; the command isolddevs-mcp-atlassian(mcp-atlassianalso works). The linked documentation site describes the upstream project; Bitbucket is covered in this README.
Model Context Protocol (MCP) server for Atlassian products: Jira, Confluence and Bitbucket. Jira and Confluence are supported on Cloud and Server/Data Center; Bitbucket is supported on Data Center (self-hosted) only.
https://github.com/user-attachments/assets/35303504-14c6-4ae4-913b-7c25ea511c3e
Quick Start
1. Get Your API Token
Go to https://id.atlassian.com/manage-profile/security/api-tokens and create a token.
For Server/Data Center, use a Personal Access Token instead. See Authentication.
For Bitbucket Data Center, create an HTTP access token in Bitbucket under Profile → Manage account → HTTP access tokens (read permission to browse and review, write permission to comment, create or merge pull requests).
2. Configure Your IDE
Add to your Claude Desktop or Cursor MCP configuration:
{
"mcpServers": {
"mcp-atlassian": {
"command": "uvx",
"args": ["olddevs-mcp-atlassian"],
"env": {
"JIRA_URL": "https://your-company.atlassian.net",
"JIRA_USERNAME": "your.email@company.com",
"JIRA_API_TOKEN": "your_api_token",
"CONFLUENCE_URL": "https://your-company.atlassian.net/wiki",
"CONFLUENCE_USERNAME": "your.email@company.com",
"CONFLUENCE_API_TOKEN": "your_api_token",
"BITBUCKET_URL": "https://bitbucket.your-company.com",
"BITBUCKET_PERSONAL_TOKEN": "your_bitbucket_http_access_token"
}
}
}
}
Server/Data Center users: Use
JIRA_PERSONAL_TOKENinstead ofJIRA_USERNAME+JIRA_API_TOKEN. See Authentication for details.
Bitbucket Data Center is optional: drop the
BITBUCKET_*lines if you don't use it, or keep only them for a Bitbucket-only setup. See Bitbucket Data Center below.
Autohand Code
Use the same uvx server with your Atlassian credentials:
autohand mcp add mcp-atlassian env \
JIRA_URL=https://your-company.atlassian.net \
JIRA_USERNAME=your.email@company.com \
JIRA_API_TOKEN=your_api_token \
CONFLUENCE_URL=https://your-company.atlassian.net/wiki \
CONFLUENCE_USERNAME=your.email@company.com \
CONFLUENCE_API_TOKEN=your_api_token \
BITBUCKET_URL=https://bitbucket.your-company.com \
BITBUCKET_PERSONAL_TOKEN=your_bitbucket_http_access_token \
uvx olddevs-mcp-atlassian
Add --scope project after add to keep the configuration in the current
project. See Autohand Code for current
installation and CLI details.
3. Start Using
Ask your AI assistant to:
- "Find issues assigned to me in PROJ project"
- "Search Confluence for onboarding docs"
- "Create a bug ticket for the login issue"
- "Update the status of PROJ-123 to Done"
- "Review pull request #42 in PLAT/api and leave inline comments"
- "Which pull requests are waiting for my review?"
Bitbucket Data Center
Bitbucket support targets self-hosted Bitbucket Data Center (v8.0+, tested on 10.x). Bitbucket Cloud is not supported.
{
"mcpServers": {
"mcp-atlassian": {
"command": "uvx",
"args": ["olddevs-mcp-atlassian"],
"env": {
"BITBUCKET_URL": "https://bitbucket.your-company.com",
"BITBUCKET_PERSONAL_TOKEN": "your_http_access_token",
"BITBUCKET_PROJECTS_FILTER": "PLAT,OPS"
}
}
}
}
Bitbucket can be configured on its own or next to Jira and Confluence in the same env block.
What the assistant can do:
- Read code: browse projects and repositories, list files, read files at any branch, tag or commit, list branches, tags and commits, and read commit diffs.
- Review pull requests:
- Find them, including your own review inbox.
- Read the description, diff, changed files and full activity.
- Leave general, inline and reply comments, raise and resolve tasks, set your reviewer status.
- Collect pending comments and publish them as one review.
- Manage pull requests: create (default target branch and default reviewers), update, merge, decline and reopen pull requests, and create branches.
Safety and limits:
- Authentication: only an HTTP access token from the environment. No Basic auth, OAuth or per-request headers. Over HTTP transports the token is the operator's, so
ALLOW_GLOBAL_CRED_FALLBACK=trueis required (single-user deployments only). BITBUCKET_PROJECTS_FILTERlimits every Bitbucket tool to the listed project keys: other projects are hidden from listings and refused on direct access.READ_ONLY_MODE=truedisables all Bitbucket write tools.- Code search (
bitbucket_search) uses Bitbucket's unofficial search endpoint. It only covers default branches, and it is not part ofTOOLSETS=default; enable it with, for example,TOOLSETS=default,bitbucket_search. - Deleting pull requests and branches (
bitbucket_destructive) is never enabled implicitly, not even byTOOLSETS=all. Name it explicitly:TOOLSETS=all,bitbucket_destructive.
All variables are listed in .env.example.
Documentation
Full documentation is available at mcp-atlassian.soomiles.com.
Documentation is also available in llms.txt format, which LLMs can consume easily:
llms.txt— documentation sitemapllms-full.txt— complete documentation
| Topic | Description |
|---|---|
| Installation | uvx, Docker, pip, from source |
| Authentication | API tokens, PAT, OAuth 2.0 |
| Configuration | IDE setup, environment variables |
| HTTP Transport | SSE, streamable-http, multi-user |
| Tools Reference | All Jira, Confluence & Bitbucket tools |
| Troubleshooting | Common issues & debugging |
Compatibility
| Product | Deployment | Support |
|---|---|---|
| Confluence | Cloud | Fully supported |
| Confluence | Server/Data Center | Supported (v6.0+) |
| Jira | Cloud | Fully supported |
| Jira | Server/Data Center | Supported (v8.14+) |
| Bitbucket | Data Center | Supported (v8.0+, tested on 10.x) |
| Bitbucket | Cloud | Not supported |
Key Tools
| Jira | Confluence | Bitbucket |
|---|---|---|
jira_search - Search with JQL |
confluence_search - Search with CQL |
bitbucket_get_my_pull_requests - My review inbox |
jira_get_issue - Get issue details |
confluence_get_page - Get page content |
bitbucket_get_pull_request_diff - Pull request diff |
jira_create_issue - Create issues |
confluence_create_page - Create pages |
bitbucket_add_pull_request_comment - Inline comments |
jira_update_issue - Update issues |
confluence_update_page - Update pages |
bitbucket_get_file_content - Read code |
jira_transition_issue - Change status |
confluence_add_comment - Add comments |
bitbucket_create_pull_request - Open pull requests |
128 tools total — See Tools Reference for the complete list.
Security
Never share API tokens. Keep .env files secure. See SECURITY.md.
Contributing
See CONTRIBUTING.md for development setup.
License
MIT - See LICENSE. Not an official Atlassian product.
Metadata
Release files for olddevs-mcp-atlassian 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| olddevs_mcp_atlassian-0.1.0.tar.gz | 1.1 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| olddevs_mcp_atlassian-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 1.6 MB
Release files / olddevs_mcp_atlassian-0.1.0.tar.gz
| Download URL | olddevs_mcp_atlassian-0.1.0.tar.gz |
|---|---|
| Size | 1.1 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
164d79ceb34653003a27b3512935f851b79a83e61b2fe02369ea3933628c9da7
|
|
BLAKE2b-256 checksum How to use checksums |
41d64cb4ab681377eda82008bd8d82de8bee23ce41f49a63f679517a7c1c0bac
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.23 {"installer":{"name":"uv","version":"0.12.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / olddevs_mcp_atlassian-0.1.0-py3-none-any.whl
| Download URL | olddevs_mcp_atlassian-0.1.0-py3-none-any.whl |
|---|---|
| Size | 434.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
e7c4305b7f6fd73be6e78cd219f73f242566826933de05d868cc5ad035c4d64b
|
|
BLAKE2b-256 checksum How to use checksums |
f14b7c62aea0a854160c5763e3e72b2db540c73c30526053254b1a0942fdb4ab
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.23 {"installer":{"name":"uv","version":"0.12.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|