MCP Atlassian
Model Context Protocol (MCP) server for Atlassian Cloud products (Confluence and Jira). This integration is designed specifically for Atlassian Cloud instances and does not support Atlassian Server or Data Center deployments.
Feature Demo
Resources
confluence://{space_key}: Access Confluence spaces and pagesconfluence://{space_key}/pages/{title}: Access specific Confluence pagesjira://{project_key}: Access Jira project and its issuesjira://{project_key}/issues/{issue_key}: Access specific Jira issues
Tools
Confluence Tools
-
confluence_search- Search Confluence content using CQL
- Inputs:
query(string): CQL query stringlimit(number, optional): Results limit (1-50, default: 10)
- Returns: Array of search results with page_id, title, space, url, last_modified, type, and excerpt
-
confluence_get_page- Get content of a specific Confluence page
- Inputs:
page_id(string): Confluence page IDinclude_metadata(boolean, optional): Include page metadata (default: true)
- Returns: Page content and optional metadata
-
confluence_get_comments- Get comments for a specific Confluence page
- Input:
page_id(string): Confluence page ID
- Returns: Array of comments with author, creation date, and content
Jira Tools
-
jira_get_issue- Get details of a specific Jira issue
- Inputs:
issue_key(string): Jira issue key (e.g., 'PROJ-123')expand(string, optional): Fields to expand
- Returns: Issue details including content and metadata
-
jira_search- Search Jira issues using JQL
- Inputs:
jql(string): JQL query stringfields(string, optional): Comma-separated fields (default: "*all")limit(number, optional): Results limit (1-50, default: 10)
- Returns: Array of matching issues with metadata
-
jira_get_project_issues- Get all issues for a specific Jira project
- Inputs:
project_key(string): Project keylimit(number, optional): Results limit (1-50, default: 10)
- Returns: Array of project issues with metadata
-
jira_create_issue- Create a new issue in Jira
- Inputs:
project_key(string): The JIRA project key (e.g. 'PROJ')summary(string): Summary/title of the issueissue_type(string): Issue type (e.g. 'Task', 'Bug', 'Story')description(string, optional): Issue descriptionadditional_fields(string, optional): JSON string of additional fields
- Returns: Created issue details with metadata
-
jira_update_issue- Update an existing Jira issue
- Inputs:
issue_key(string): Jira issue keyfields(string): JSON object of fields to updateadditional_fields(string, optional): JSON string of additional fields
- Returns: Updated issue details with metadata
-
jira_delete_issue- Delete an existing Jira issue
- Inputs:
issue_key(string): Jira issue key (e.g. PROJ-123)
- Returns: Success confirmation message
Installation
Using uv (recommended)
When using uv, use uvx to directly run mcp-atlassian.
uvx mcp-atlassian
Using PIP
Alternatively you can install mcp-atlassian via pip:
pip install mcp-atlassian
Configuration
The MCP Atlassian integration supports using either Confluence, Jira, or both services. You only need to provide the environment variables for the service(s) you want to use.
Usage with Claude Desktop
-
Get API tokens from: https://id.atlassian.com/manage-profile/security/api-tokens
-
Add to your
claude_desktop_config.jsonwith only the services you need:
Using uvx
For Confluence only:
{
"mcpServers": {
"mcp-atlassian": {
"command": "uvx",
"args": ["mcp-atlassian"],
"env": {
"CONFLUENCE_URL": "https://your-domain.atlassian.net/wiki",
"CONFLUENCE_USERNAME": "your.email@domain.com",
"CONFLUENCE_API_TOKEN": "your_api_token"
}
}
}
}
For Jira only:
{
"mcpServers": {
"mcp-atlassian": {
"command": "uvx",
"args": ["mcp-atlassian"],
"env": {
"JIRA_URL": "https://your-domain.atlassian.net",
"JIRA_USERNAME": "your.email@domain.com",
"JIRA_API_TOKEN": "your_api_token"
}
}
}
}
For both services:
{
"mcpServers": {
"mcp-atlassian": {
"command": "uvx",
"args": ["mcp-atlassian"],
"env": {
"CONFLUENCE_URL": "https://your-domain.atlassian.net/wiki",
"CONFLUENCE_USERNAME": "your.email@domain.com",
"CONFLUENCE_API_TOKEN": "your_api_token",
"JIRA_URL": "https://your-domain.atlassian.net",
"JIRA_USERNAME": "your.email@domain.com",
"JIRA_API_TOKEN": "your_api_token"
}
}
}
}
Using docker
There are two ways to configure the Docker environment:
- Using environment variables directly in the config:
{
"mcpServers": {
"mcp-atlassian": {
"command": "docker",
"args": ["run", "--rm", "-i", "mcp/atlassian"],
"env": {
"CONFLUENCE_URL": "https://your-domain.atlassian.net/wiki",
"CONFLUENCE_USERNAME": "your.email@domain.com",
"CONFLUENCE_API_TOKEN": "your_api_token",
"JIRA_URL": "https://your-domain.atlassian.net",
"JIRA_USERNAME": "your.email@domain.com",
"JIRA_API_TOKEN": "your_api_token"
}
}
}
}
- Using an environment file (recommended):
{
"mcpServers": {
"mcp-atlassian": {
"command": "docker",
"args": [
"run",
"--rm",
"-i",
"--env-file",
"/path/to/your/.env",
"mcp/atlassian"
]
}
}
}
The .env file should contain:
CONFLUENCE_URL=https://your-domain.atlassian.net/wiki
CONFLUENCE_USERNAME=your.email@domain.com
CONFLUENCE_API_TOKEN=your_api_token
JIRA_URL=https://your-domain.atlassian.net
JIRA_USERNAME=your.email@domain.com
JIRA_API_TOKEN=your_api_token
Cursor IDE Configuration
To integrate the MCP server with Cursor IDE:
-
First, build the Docker image if you haven't already:
docker build -t mcp/atlassian .
-
Configure the server:
- Open Cursor Settings
- Navigate to
Features>MCP Servers - Click
Add new MCP server - Enter this configuration:
name: mcp-atlassian type: command command: docker run --rm -i --env-file /path/to/.env mcp/atlassian
- Replace
/path/to/.envwith your actual .env file path
Debugging
You can use the MCP inspector to debug the server:
npx @modelcontextprotocol/inspector uvx mcp-atlassian
For development installations:
cd path/to/mcp-atlassian
npx @modelcontextprotocol/inspector uv run mcp-atlassian
View logs with:
tail -n 20 -f ~/Library/Logs/Claude/mcp*.log
Development
For local development testing:
- Use the MCP inspector (see Debugging)
- Test with Claude Desktop or Cursor IDE using the configuration above
Build
Docker build:
docker build -t mcp/atlassian .
Security
- Never share API tokens
- Keep .env files secure and private
- See SECURITY.md for best practices
License
Licensed under MIT - see LICENSE file. This is not an official Atlassian product.
Metadata
Release files for mcp-atlassian 0.1.9
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| mcp_atlassian-0.1.9.tar.gz | 71.4 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| mcp_atlassian-0.1.9-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 87.0 kB
Release files / mcp_atlassian-0.1.9.tar.gz
| Download URL | mcp_atlassian-0.1.9.tar.gz |
|---|---|
| Size | 71.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
5e1b657b4624623f0be87a5c59134817d73e4c948974cadda2f59f02602c04c1
|
|
BLAKE2b-256 checksum How to use checksums |
70d4bb25449a593619c79c44b2da23971a17d8b725e1c213265a1e0128335aec
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.5.5
|
Release files / mcp_atlassian-0.1.9-py3-none-any.whl
| Download URL | mcp_atlassian-0.1.9-py3-none-any.whl |
|---|---|
| Size | 15.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
4b39a118ef2af00bd5842552387cd8d44ecd714c9a4d79db00cbc132e202f5ac
|
|
BLAKE2b-256 checksum How to use checksums |
9956e179895e97715b1200f282cd300ab9f1ea8374a80e8e92a8ffa660804f78
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.5.5
|